The first section of the documentation is not a pitch, it is two commands that run a conformance suite locally and print a pass count, and the interop vectors verify against retained fixture bytes with no network call and no callback to the author. The scope is stated as plainly: the vectors cover artifact identity and the verification path, not the whole specification. That is an unusually honest posture for a protocol asking to sit between two parties' money.
A protocol and a reference implementation for the gap between two agents discovering each other and paying each other. Terms are machine-readable rather than free text, agreement is a cryptographic signature rather than a sentence, and the outcome becomes a portable reputation record.
- Structured messages — `negotiate.open`, `negotiate.counter`, `negotiate.accept` — where terms such as price, condition and delivery are typed fields, and a counter can be conditional: one price for pickup, another for shipping
- Signed commitments: both parties sign, so what was agreed is provable rather than remembered
- Session receipts recording the whole negotiation — what was proposed, what changed, what was accepted — signed and auditable
- Reputation attestations generated from a completed session, portable across platforms rather than locked to one marketplace
- Graceful degradation when the other agent does not speak Concordia: you find out that a binding agreement was available rather than silently losing it
- A Python API for the same flow — agents with auto-generated Ed25519 keys, sessions that move from proposed to active to agreed
Python 3.10 or later — note that the Python shipped with macOS Xcode is 3.9 and will not do. Install with pipx or pip using the `server` extra; the `concordia-mcp-server` command needs that extra and tells you so if it is missing. Library-only use can skip it. The registry entry names the PyPI package concordia-protocol, version 0.10.0, over stdio. Registering with Claude Code is a single `claude mcp add` line.
One command — pipx install "concordia-protocol[server]"
