MCP clients (agent runtimes) need to discover servers, multiplex calls across many of them, and match agent capability needs to server tool offerings. The patterns are starting to standardize but vary across runtimes.

Advertisement

Server discovery

Static config (list servers at startup), DNS-based discovery (SRV records), registry-based (organization registry). Pick by deployment model; static is fine for most teams.

Capability matching

Agent runtime aggregates tool surfaces from all configured servers. Presents to LLM as one flat tool list (or grouped). Dedup tool names; namespace by server prefix.

Advertisement

Failure isolation

One server down: client should still expose other tools. Circuit breaker per server. Failed calls return errors with hints (server X is degraded; retry later or use alternative).

Static config for most. Namespace tools to avoid collisions. Per-server circuit breakers. Failure of one server isn't failure of the agent.