Project draft · v0.2.0 · prerelease
Reliability claims.
Bound to evidence.
MCP-RES defines a portable way to show the exact subject, clean control, deterministic fault, reason-bound negative control, observation coverage, bounded recovery, authenticity boundary, and cleanup behind an MCP reliability claim.
Problem and boundary
A pass needs more than a green label.
MCP-RES makes a narrow result reproducible: what was tested, what failed, what recovered, what stayed bounded, what was omitted, and which bytes were validated. It does not define MCP wire behavior, certify security, guarantee availability, or imply endorsement.
MCP-RES is independent of the official MCP specification and does not imply MCP endorsement or security certification.
Who can implement it?
Any MCP ecosystem participant.
Servers, clients, agent runtimes, gateways/proxies, adapters, transports, and test harnesses can produce the core records. A profile narrows the required operations and negative controls for one subject class.
Initial profiles
- 8 provisional protocol, async, transport, OAuth, and operational profiles
- 4 experimental identity-extension profiles
- Every profile binds schema/vector digests and lifecycle status
A subject is never simply “MCP-RES compliant.” Every result names a profile/version, evidence class, validator, and evidence SHA-256.
Five-minute black-box check
Validate safe bundled evidence.
The kit reads JSON only. It launches no subject and uses no network or credential.
pnpm install --frozen-lockfile
node docs/standards/mcp-res/v0.2.0/conformance-kit/validate.mjs docs/standards/mcp-res/v0.2.0/test-vectors/valid/reason-bound-negative.json
pnpm mcp-res:validate
Independent implementation and reproduction
Schemas, vectors, bundle. Nothing private.
An independent implementation consumes the published JSON Schema 2020-12 files, profile
manifest, vectors, canonicalization rule, and submitted bundle. It does not need
ResiliReplay. Verify SHA256SUMS, run every positive and negative vector,
then validate the claim's evidence digest with a named validator version.
Reference, not dependency
Why ResiliReplay is only first.
ResiliReplay maps completed runs through a boundary exporter. The standard schemas and black-box validator require none of its campaign, trace, agent, or reporter internals. A Python validator uses only public specification inputs. It is a second implementation, but same-project authorship means it is not external independence.
Testing a public package does not make that package an adopter.
Change control and 1.0
Evidence before stability.
Changes are proposed through this repository's issues, Discussion, and pull requests with compatibility, privacy, schemas, vectors, and CI evidence. Stable 1.0 requires a completed public draft period, no unresolved critical standard defect, cross-platform conformance, stable identifiers/canonicalization, migration policy, two independent implementations, and at least one independently published external implementation or adopter claim.
Those independent criteria are not yet met.