Question-led guide · decision
What belongs in an MCP production contract?
Define the user promise, operating owner, dependency boundaries, failure response, and evidence needed before sharing an MCP tool service.
Direct answer
An MCP production contract names the supported user outcome and the owners responsible for delivering it across host, client, server, and backend. Record the admitted tools and callers, data boundaries, failure behavior, service objectives, supported versions, evidence requirements, and suspension authority. Approve a limited rollout only when those commitments have observable acceptance checks; a successful protocol request establishes much less.
Decide what the shared service promises
A tool becomes a production responsibility when someone organizes work around its result. That can happen before a large launch: six support engineers using a shared lookup may already need an outage response and a clear data boundary. Begin with their task, the result they can rely on, and the consequence of a wrong or missing answer.
Write the promise so it can fail visibly. “Provides document search” is too broad. “Returns passages from the caller’s approved product corpus, identifies the source revision, and reports when that corpus is unavailable” gives reviewers something to examine. Search relevance may remain sampled, but corpus membership and source identity can be checked directly.
Responsibility crosses more than the network
The MCP architecture distinguishes host, client, and server roles. Map those roles to the actual teams and deployment components. A client library has no pager; a gateway team may own routing without owning the meaning of a returned passage.
For each boundary, identify who can detect a failure, who can stop exposure, and who can restore service. These may be three different owners. An agreement that says “the platform team owns MCP” leaves the host’s catalog, the server’s data projection, and the backend’s freshness unresolved.
Twenty-four analysts inherit a laptop assumption
Consider a hypothetical procurement assistant initially used by one analyst against public product manuals. It moves to a shared endpoint for twenty-four analysts in three business units. The new service also indexes internal supplier notes, but the original process environment still selects a single unrestricted index.
Every test request returns a useful answer. The missing production obligation is the boundary between business-unit corpora. The owner limits the first rollout to public manuals, assigns the knowledge-service team the corpus policy, and adds a negative test using two synthetic units. Internal notes remain outside the supported promise until that test and its deployment configuration agree.
The limited rollout is a concrete service, not a declaration that the entire assistant is ready. Its success does not justify silently adding sensitive sources later.
Put evidence beside each commitment
Use this boundary worksheet as the release discussion document. Replace the illustrative entries with local facts and attach an inspectable test or operating record to every accepted row.
| Commitment | Illustrative decision | Acceptance evidence |
|---|---|---|
| User promise | Public-manual passages with source revision | Known-document and missing-source trials |
| Eligible callers | One analyst group, public corpus only | Group policy and rejected out-of-scope request |
| Service owner | Knowledge-service rotation | Reachable escalation and handoff record |
| Failure response | Explain unavailable corpus; no alternate private index | Dependency outage rehearsal |
| Capacity boundary | Eight concurrent lookups in the pilot | Saturation test and explicit refusal outcome |
| Supported clients | Two named host builds | Recorded protocol and tool-result checks |
| Suspension | Operator can remove this tool from the pilot | Disabled-tool trial from an existing host |
The table is an operating proposal, not executable enforcement. A checked box without a corresponding deployed control remains an open item.
Keep transport evidence appropriately narrow
Verify the remote endpoint against the selected Streamable HTTP revision. Its validation rules are necessary implementation work, but a passing HTTP request should be attached only to the transport commitment it actually tests.
Keep data-boundary, usefulness, and support evidence separate in the worksheet. This makes missing evidence visible without requiring a large compliance document. It also prevents one successful demo from being reused as proof for every obligation.
Make the first rollout reversible in practice
Choose a cohort whose failures the team can investigate. Record its host builds, active catalog, corpus, limits, and owners before enabling it. Schedule a review of rejected requests, unavailable results, user corrections, and unclassified outcomes.
Rehearse suspension while the dependency is healthy. The host should still start, explain that the tool is unavailable, and retain understandable historical results. A stop button that only works after an administrator changes every user’s local configuration is an unresolved operating dependency.
Reopen the contract when the promise expands
New data classes, callers, write effects, remote providers, or recovery guarantees change the agreement even if the tool name stays constant. Review the changed rows and their evidence rather than treating the original launch decision as permanent permission.
For the measurable service promise, continue with MCP service-level denominators. For executable authority, use the separately owned agent tool-permission design.
Evidence
MCP assigns different responsibilities to hosts, clients, and servers.
The architecture separates host coordination and consent from client communication and server capabilities.
Primary source · standard · checked Sep 8, 2026
Limit: These protocol roles do not identify the actual on-call teams or business owner in a deployment.
Streamable HTTP includes endpoint and request-validation obligations for remote MCP services.
The transport specifies Origin validation and consistency checks between request metadata headers and the body.
Primary source · standard · checked Sep 8, 2026
Limit: Transport conformance does not establish data freshness, workflow usefulness, or operational ownership.
Limitations
This worksheet is an author-designed operating artifact, not an MCP certification or a universal release standard. It must be completed with real owners and deployment evidence; illustrative limits below are not recommended defaults.
FAQ
- Does a read-only MCP server need a production contract?
- Yes when people depend on it. Read-only tools can still return another tenant's data, stale decisions, or unavailable evidence, and they can consume shared capacity. The contract can be brief when consequences are limited.
- Is this a replacement for protocol conformance testing?
- No. Conformance tests examine the protocol boundary. The production contract adds deployment-specific owners, user commitments, and acceptance evidence around that boundary.
Related guides
Continue within MCP in production, or use one of these adjacent diagnostics:
Editorial QA: automated native-English, structure, source-presence, and link checks completed . This record is not an independent expert endorsement. Review boundary.
