Your agent just called three MCP tools to answer a single user question. One took 50ms, one took 2 seconds, one failed and retried.
You saw token usage spike. You have no idea which tool burned the most tokens or whether it was even necessary. One of those tools had permission to access customer data—did the agent call it? You're not sure. If compliance asks later, you've got no audit trail. And next month, when token prices change or a new cheaper model comes out, you're rewriting all your routing logic by hand.
That's the gap most teams hit when they move from demo agents to production MCP systems.
The MCP Governance Problem Is Real
In April 2026, the CIS published an MCP Companion Guide explicitly tying MCP governance to enterprise security controls. The core insight: once agents can call tools through MCP servers, MCP becomes a security boundary. A protocol-level control point.
Before MCP, tool access was implicit and scattered: agents embedded API keys, called functions directly, and left no audit trail. With MCP, access can be explicit and auditable—but only if you have a platform that actually governs it.
Here's what production teams need:
- Tool visibility: Which MCP servers can this agent call? Which tools on which servers?
- Cost attribution: Which tool consumed how many tokens? How much did it cost?
- Permission enforcement: Is this agent actually allowed to call tools/read_customer_data?
- Observability: Tool latency, success rates, retry patterns, per-request tracing.
- Intelligent routing: When you have multiple MCPs that do similar work, which one should the agent use this time?
Most teams build this by hand. Add observability middleware. Hardcode routing rules. String together three different platforms for auth, logging, and cost tracking. It works for a sprint. It doesn't scale.
Intelligent Routing Across Agents Compounds the Cost Problem
Here's what the research shows: Intelligent routing overhead adds under 40ms per request, which represents less than 5% of total LLM response latency, and can achieve approximately 50% cost reduction at roughly 98% quality retention.
But agents make many LLM calls per decision. And when you have multiple MCP tools doing similar work, the routing decision matters at every step.
Example: You have two document retrieval MCPs. One is specialized and fast for simple queries. The other is slower but handles complex document reasoning. Without intelligent routing, agents either:
- Always use the capable one (expensive, slow)
- Always use the cheap one (sometimes fails on complex queries, agent retries, burns more tokens)
- Hard-code a rule ("use cheap for queries < 200 chars") that breaks when your traffic pattern changes
With intelligent routing, the system learns which tool succeeds for which query type, and routes accordingly. LiteLLM routing benchmarks show latency-based routing achieves 38% lower p95 latency than round-robin when backend latencies vary by more than 2x—and agents amplify that variance because they call tools sequentially.
Where This Gets Hard: Bridging the Control-Plane / Data-Plane Gap
Here's the architecture:
- Data-plane: Route LLM calls fast (gateway, minimal overhead, intelligent fallback)
- Control-plane: Manage agent sessions, MCP discovery, governance, cost attribution, multi-runtime orchestration
Most teams have only a data-plane gateway. They're missing the control-plane layer that actually governs agents.
Result: You can optimize latency, but you can't see which agent called which tool with which permissions. You can't rate-limit per-tool. You can't enforce audit trails. You can't rebalance routing logic without redeploying agents.
LiteLLM Agent Platform + LiteLLM Core: The Pattern That Works
LiteLLM-Rust is a minimal Rust AI Gateway built for coding agents with drop-in compatibility with existing LiteLLM config.yaml and database, and is designed to achieve sub-millisecond overhead on Claude Code calls. But LiteLLM-Rust is one half of the equation.
The full pattern requires:
Control plane (LiteLLM Agent Platform):
- Centralized MCP registry: Agents discover MCPs from one place, not scattered config files
- Per-agent MCP permissions: Define which agents can call which tools on which servers
- Session state: Maintain context across multiple MCP calls within a single agent execution
- Cost attribution: Track tokens consumed by each MCP tool, per agent, per user
- Observability: Audit logs, tracing, per-tool success rates and latencies
Data plane (LiteLLM core / LiteLLM-Rust):
- Virtual keys for tool access: Each MCP gets its own credential scope, no credential sprawl
- Intelligent routing: Route to the right model/endpoint based on query characteristics
- Fallback chains: If primary tool fails, retry on secondary tool automatically
- Rate limiting per tool: Budget enforcement for expensive or external MCPs
- Fast forwarding: Minimal latency overhead on the request path
These layers work together. The control plane governs access and visibility. The data plane executes routing decisions at speed. The agent code stays simple: it just calls tools through the gateway and trusts governance happens elsewhere.
Practical Example: Multi-MCP Agent
You're building a customer support agent that retrieves docs, checks inventory, and suggests solutions. You have three retrieval MCPs:
- Internal Wiki MCP (always available, sometimes slow)
- Vendor API MCP (fast for inventory, expensive)
- RAG MCP (good for hybrid search, moderate cost)
Without intelligent routing:
- You hardcode "use Wiki for FAQ, Vendor for stock, RAG for edge cases"
- First month, Wiki is overloaded, timeouts spike
- You rewrite routing logic, redeploy agents
- Compliance asks which tool the agent used to answer a customer question—you have no idea
With LiteLLM Agent Platform + LiteLLM core:
- Config: Agent has permission to call all three MCPs (no API key duplication)
- Routing: LiteLLM learns which tool succeeds for which query type (observability data feeds back into routing)
- Cost tracking: Each MCP tool shows token consumption, cost per call, success rate
- Observability: Full request trace: user question → routing decision → tool call → result → cost
- Audit: Compliance has a complete log of which tool was called, by which agent, for which customer
- Scaling: When a new cheaper retrieval MCP launches, you update the config, enable it for the agent, and routing adjusts automatically
No rewriting agent code. No credential sprawl. No guessing about costs.
Why This Matters for Production
Reddit discussions across r/AI_Agents and adjacent communities show conversations have shifted from treating agents as one monolithic topic to distinct lanes: operators comparing what survives production versus what only looks good in demos, enterprise builders debating governance and observability, and infrastructure people arguing about MCP and skills.
Teams that ship agents at scale don't just optimize for latency or cost. They optimize for operational control: visibility into what agents are doing, confidence in permission enforcement, ability to change routing decisions without redeployment, and auditability.
That's not a framework feature. That's infrastructure.
LiteLLM Agent Platform provides the governance layer. LiteLLM core (or LiteLLM-Rust for high-throughput agent workloads) provides the routing and performance layer. Together, they separate concerns: build agents for functionality, rely on the platform for governance and performance.
Starting Point
If you're evaluating agent platforms today:
- Check whether the platform has built-in MCP permission management (tool-level access control, not just server-level)
- Ask whether you get cost attribution per tool (token usage breakdown by MCP server)
- Verify observability: can you trace a specific agent execution and see which tools were called in what order?
- Look for routing flexibility: can you change routing logic without redeploying agents?
- Confirm audit trails: compliance and security can verify which agent accessed which tool with which permissions
That's infrastructure maturity.
LiteLLM Agent Platform ships all of this out of the box. For teams already using LiteLLM core as a gateway, adding the agent platform gives you governance without rebuilding. For teams starting fresh, it's the control-plane + data-plane pattern in one place.
The details matter when agents hit production. MCP governance and intelligent routing aren't nice-to-haves anymore—they're table stakes.
Paul Twist is an AI infrastructure engineer based in Berlin. He writes about production AI systems, agent platforms, and the operational layer that separates demos from production workloads.
Resources:
- LiteLLM Agent Platform docs
- LiteLLM core (routing, fallbacks, virtual keys)
- CIS MCP Companion Guide – enterprise security controls for MCP
- LiteLLM routing benchmarks – 38% p95 latency improvement with intelligent routing
Top comments (0)