a202-mcp
OfficialThis server implements the A202 Verifiable Agreement Protocol, enabling verifiable agent-led commerce. You can:
Issue mandates (
issue_mandate) – create signed authority documents defining agent permissions, scope, constraints, spending limits, validity, and approval rules.Verify actions (
verify_mandate) – check whether an action is permitted under a mandate, returningallow,deny, orrequire_approvalwith reasons and an action hash.Approve actions (
issue_approval) – record a principal's signed approval for an action that requires it, bound by its action hash.Form agreements (
create_agreement) – create direct agreements between parties with offers, acceptances, signatures, commitments, and transition to committed state.Record obligations (
record_obligation) – manage the obligation lifecycle: issue, assert performance, and respond accept/reject.Verify records (
verify_evidence) – run a seven-step cryptographic verification over transaction records, checking hashes, signatures, version chains, event continuity, and state transitions.Read transaction records (
get_transaction_record) – retrieve the hash-chained event history, state, signing keys, and object identifiers.
A202: the Verifiable Agreement Protocol for Agent-Led Commerce
Status: Informative in full.
A202 is verifiable commerce for agent-to-agent or agent-led transactions: an open specification of commercial authority, negotiation state, and verifiable conformance for transactions between independent organisations, including transactions conducted on their behalf by software agents.
It defines typed objects for delegated commercial authority, a state machine for the transaction and for each bilateral session inside it, rules for what may be disclosed to whom, and an executable conformance suite that turns each of those into a check an implementation either passes or fails.
The full statement of purpose, scope, and non-goals is in CHARTER.md.
Created and developed by A. A. Musse. See MAINTAINERS.md.
Status
Released, pre-1.0.
v0.1.0is the first tagged release of the set: a tag, a digest for every schema file, the conformance manifest, and release notes, published together. See RELEASES.md and CHANGELOG.md. Before 1.0 a MINOR increment may break compatibility, and any break carries migration notes.The name is A202, spoken "A two-oh-two", and in full A202, the Verifiable Agreement Protocol for Agent-Led Commerce. The long form is a descriptor and not an expansion: the letters do not stand for it. The
202is HTTP 202 Accepted, which A202-0017 makes the status an accepted submission returns, because acceptance is the primitive the rest of the specification is built on. TheA202-reason-code prefix, theA202-NNNNproposal identifiers, and thea202-commercial/0.1specification version string all follow from the name.A202™ is a trademark of Plural Worlds. Permitted use of the name is stated in TRADEMARK.md.
Schema
$idvalues resolve underhttps://schemas.a202.org. Fixture hosts use reserved.invalidnames, because test data must never resolve.Licensed under the Apache License, Version 2.0. One licence covers the whole repository: specification text, schemas, fixtures, manifest, runner, and informative documents. The licence carries an express patent grant from each contributor. See LICENSE and CONTRIBUTING.md.
External contributions are accepted on the terms in CONTRIBUTING.md: inbound contributions under the same licence, with a developer certificate of origin sign-off.
Related MCP server: pact-mcp
Layout
Path | Contents |
| Purpose, scope, non-goals, design principles |
| How the project is run, and what the sponsor does and does not control |
| Who maintains this repository |
| Contribution status, and the terms a contribution is accepted under |
| Private coordinated disclosure |
| Adversaries assumed, properties defended, and what is deliberately not defended |
| Expected conduct |
| The A202 name, and what use of it is and is not permitted |
| Versioning, what a release consists of, compatibility policy |
| What changed, and where the release notes required by |
| Review routing, the pull request and issue forms, and the workflow that runs the suite on every change |
| The |
| Canonical commercial model, transaction profile extension model, and the JSON schemas |
| Commercial mandate: delegated authority, constraints, delegation, approval, revocation |
| Counterparty invitation: how an unregistered party enters one named transaction |
| Transaction and session state machines, and auction event semantics |
| Fixtures, manifest, normative runner, and the conformance grade definitions |
Each specification document carries a status header stating which of its sections are normative and which are informative.
Running the conformance suite
The runner validates every fixture named in the manifest against the schemas, then applies the invariants that JSON Schema cannot express. Schema validity is not conformance, which is the reason the runner exists.
It needs jsonschema>=4.18. If that is not on the system interpreter, a virtual environment is enough:
python3 -m venv .venv && .venv/bin/pip install "jsonschema>=4.18"Run it from the repository root:
python3 conformance/run-conformance.py --verboseThe expected result is every fixture passing and none failing, with the totals the manifest carries: the manifest is the single source for the count, and the runner prints it on every run. The runner also asserts that each negative fixture is refused for the reason code the manifest declares for it, wherever the normative layer raises codes at all. Run it before and after any schema change.
Every negative fixture is minimal: removing the single offending element must leave a document that validates cleanly. A negative fixture that fails for an incidental reason tests nothing, so verify that when adding one.
The suite does not depend on anyone remembering to run it. It runs, together with the reference implementation tests and the MCP server tests, on every pull request and on every push to the default branch, under .github/workflows/checks.yml. GOVERNANCE.md section 3.4 requires the suite to pass for any change to schemas, fixtures, the manifest, or the runner, and that workflow is what turns the requirement into a gate.
Where to start reading
CHARTER.md for what this is and what it deliberately is not.
schemas/canonical-commercial-model-v0.1.md for the object model, the envelope, and the invariants schema validation cannot express.
negotiation/pilot-transaction-state-machine-v0.1.md for what moves state and what does not.
conformance/manifest-v0.1.json for the fixtures that decide whether an implementation agrees with either of the above.
Maintenance
Related MCP Connectors
Marketplace MCP server for live venture-capital raises and agent-mediated dealflow.
MCP server for Boson Protocol — on-chain agentic commerce for physical & digital goods.
Workflow diagnostics, capability routing, and x402 settlement for MCP-compatible agents.
Hosted AgentLux MCP server for marketplace, identity, creator, services, and social flows.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceMCP server that gives AI agents the ability to discover, match with, and build relationships with other autonomous agents. Supports agent registration, matchmaking, messaging, shared goals, relationship lifecycle management, and real-time event subscriptions.51MIT
- AlicenseNot gradedqualityAmaintenanceMCP server for Pact, an escrow protocol for agent-to-agent commerce, enabling agents to create pacts, fund escrow, deliver work, and settle with an LLM evaluator as dispute backstop.17MIT
- AlicenseNot gradedqualityCmaintenanceProvides a sovereign, MIT-licensed MCP server for professional-service workflows, running entirely on your infrastructure with Ed25519 cryptographic signing for every action.MIT
- AlicenseNot gradedqualityCmaintenanceA sovereign, MIT-licensed MCP server for professional-service workflow tools that runs on your infrastructure with Ed25519 signing, enabling autonomous agents to discover and invoke tools securely.MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/a202-protocol/a202'
If you have feedback or need assistance with the MCP directory API, please join our Discord server