← Tutti gli articoli

Orchestrare MCP server multipli con Claude Code

Il problema: token budget vs tool breadth

Un MCP server con 20 tool consuma ~3-5K token nel system prompt solo per le definizioni schema. Con 10 server attivi sei a 30-50K token prima del primo messaggio. ToolSearch deferred loading Anthropic 4.x: i tool sono indicizzati per nome, le schema caricate on-demand via keyword search.

Pattern: load-in-bulk vs load-on-demand

Per categorie omogenee (es. tutti computer-use) conviene ToolSearch({ query: "computer-use", max_results: 30 }) — una sola round-trip. Per tool isolati, select:tool_name diretta.

Performance reale misurata

  • Cold start con 50 MCP: ~2.3s overhead
  • Tool search query: 180-400ms
  • Tool schema load (singolo): 50-90ms
  • Tool execution (best case): 100-300ms

Debug pratico

Quando un MCP server disconnect, i suoi tool diventano "no longer available". Pattern di recupero: alcuni server riconnettono spontaneamente entro 30-90s (Apollo, Atlassian); altri richiedono restart manuale (Prisma-Local in dev mode).

Conclusione operativa

Massimo 10-15 MCP "active" in production. Gli altri devono essere lazy-loaded. Monitorare disconnect patterns nei logs e implementare retry policy. La latenza non è il problema — il selection cost lo è.

← Altri articoli ✉ Discutiamone