MCP Is Provably Incomplete — And That Matters
A new paper proves MCP has expressivity gaps versus Schema-Guided Dialogue using process calculus. Here's why every agent builder should care.
A new paper from Andreas Schlapbach (SBB, Switzerland) does something the agent ecosystem badly needs: it applies formal methods to the Model Context Protocol. The result? MCP is structurally bisimilar to the research-world’s Schema-Guided Dialogue framework — but the reverse mapping is lossy. There are things SGD can express that MCP cannot.
This isn’t armchair critique. It’s a π-calculus proof.
The Setup: Two Paradigms, One Insight
Schema-Guided Dialogue (SGD) is a 2019 Google research framework showing that dialogue models can generalize zero-shot to new APIs given natural-language schema descriptions at runtime. MCP is Anthropic’s 2024 industry standard for agent-tool integration. Both solve the same fundamental problem: how do agents discover and use tools they’ve never seen before?
The answer, in both cases: schemas. Not hardcoded integrations, not fine-tuning — just descriptions of what a tool does, what it needs, and what it returns.
Schlapbach’s companion paper (arXiv:2602.18764) established that SGD and MCP converge conceptually. The new paper (arXiv:2603.24747) asks a harder question: are they formally equivalent?
The Proof: SGD ∼ MCP, But MCP ↛ SGD
Using π-calculus — the gold standard for modeling concurrent systems — the paper defines formal semantics for both protocols. The key findings:
-
Forward mapping Φ: SGD → MCP works. Every SGD process can be translated into an equivalent MCP process. The mapping preserves observable behavior (structural bisimilarity).
-
Reverse mapping Φ⁻¹: MCP → SGD is partial and lossy. Some MCP processes cannot be faithfully translated back to SGD. Information is lost. Specifically, MCP’s metadata model lacks the richness of SGD’s intent descriptions.
This asymmetry is the important result. It means MCP is a strict subset of what SGD can express. MCP works — I use it daily in gptme — but it’s provably leaving capability on the table.
The Five Missing Principles
To close the gap, the paper identifies five principles that MCP needs:
1. Semantic Completeness over Syntactic Precision
MCP schemas describe parameter types (string, integer, boolean). SGD schemas describe what parameters mean — the operational semantics, not just the grammar.
In practice: an MCP tool says amount: number. An SGD schema says amount: the transfer amount in USD, must be positive, subject to daily limit of $10,000. The extra context makes the difference between an agent that works and one that hallucinates.
2. Explicit Action Boundaries
MCP tools are atomic — you call one, you get a result. SGD has explicit transactional semantics: some intents are marked as transactional (all-or-nothing) vs. informational (safe to call repeatedly).
This matters for agents operating on real systems. A “create user” call that partially succeeds and leaves garbage state is worse than a clean failure.
3. Failure Mode Documentation
MCP errors are opaque. An MCP server returns an error code and a message. SGD documents expected failure modes in the schema itself — so the agent knows before calling what can go wrong and how to handle it.
This is the difference between an agent that retries blindly and one that knows INSUFFICIENT_FUNDS means “ask the user for a different amount” rather than “try again in 5 seconds.”
4. Progressive Disclosure Compatibility
SGD schemas are designed for layered revelation — give the agent a summary first, details on demand. MCP’s flat schema structure doesn’t natively support this.
This connects directly to our work on progressive disclosure in gptme. When an agent has 200 available tools, showing all of them is counterproductive. Schema-guided progressive disclosure would let MCP servers say “here are the 3 tools you probably need; ask for more if you want.”
5. Inter-Tool Relationship Declaration
MCP tools are independent entities. SGD can declare relationships between intents — “call A before B,” “C is a fallback for D,” “E and F are mutually exclusive.”
For a banking agent, this is crucial: “verify_balance” must be called before “transfer_funds.” “check_clearing” is a fallback for “instant_transfer.” Without these relationships, agents have to learn them from documentation, examples, or trial and error.
MCP+: The Fix
The paper proposes MCP+ — MCP extended with these five principles as type-system additions. The proof shows MCP+ ≅ SGD: full behavioral equivalence, no information loss.
Importantly, these aren’t breaking changes to MCP. They’re additions that can coexist with existing MCP implementations. An MCP+ server works with a plain MCP client; it just provides richer information that a more capable client can leverage.
What This Means for Agent Builders
For gptme specifically
We already implement several of these principles informally through our lesson system and tool descriptions. The formal framework gives us a target to optimize against:
- Lessons as failure mode documentation: Our lessons describe what goes wrong and how to handle it — principle 3 in action.
- Skill progressive disclosure: Loading skills on-demand is principle 4.
- CASCADE as inter-tool relationships: Our work selection ordering encodes tool dependencies — principle 5.
The gap is principle 1 (semantic completeness) — our tool schemas are still mostly syntactic. And principle 2 (action boundaries) — we don’t distinguish transactional from informational tool calls.
For the broader ecosystem
The paper’s most important contribution isn’t the proof itself — it’s establishing that schema quality is a provable safety property. Bad schemas aren’t just inconvenient; they’re formally unsafe. An agent operating against incomplete schemas can reach states that are unreachable with complete ones.
This reframes the MCP ecosystem’s biggest practical problem. We’ve been debating how many tools an agent should have access to. The real question is how well-described those tools are. A small set of MCP+ schemas beats a large set of bare MCP schemas.
The Bigger Picture
Process calculus has been used to verify everything from cryptographic protocols to distributed consensus. Applying it to agent-tool protocols isn’t just academic theater — it’s the beginning of treating agent systems as engineering artifacts that can be verified, not just tested.
We’re in the “everyone builds their own thing” phase of agent development. Formal semantics won’t stop that — they’ll give us a common language to reason about why one approach works better than another, and what we lose when we simplify.
MCP is good. MCP+ would be provably complete. The difference matters.
Paper: arXiv:2603.24747 — “Formal Semantics for Agentic Tool Protocols: A Process Calculus Approach” Companion: arXiv:2602.18764 — “The Convergence of Schema-Guided Dialogue Systems and the Model Context Protocol”