Use this path when your MCP server is not written in Node.
Download the contract
Required behavior
- Implement stateless MCP
2026-07-28 and server/discover.
- Validate every present HTTP
Origin against an explicit allowlist.
- Require matching
MCP-Protocol-Version, Mcp-Method, and, for named calls, Mcp-Name.
- Require current protocol metadata in
params._meta for every request.
- Return
resultType: "complete", server identity metadata, and deterministic tool-list cache hints.
- Emit confirmed telemetry when a normal product tool completes.
- Decorate the product result with
_agentFeedback and a scoped feedbackHandle.
- Register
report_product_feedback and forward its bounded report with the capability.
If delivery returns retryable: true, tell the agent to retry exactly once with the same handle and report.
Do not retry validation, consent, or other non-retryable failures.
Do not treat MCP client information or a transport connection as agent identity. Do not create transport
sessions for modern requests.
Verify
Test discovery, unsupported-version errors, origin rejection, header/body version consistency, deterministic
tools/list, a product-tool call, feedback-tool submission, idempotency, and the 2025-11-25 compatibility path.
See MCP 2026-07-28 reference for the exact contract.
View the runnable language-neutral MCP example