What Parley MCP server does
The Parley MCP server gives an MCP host access to a multi-party decision engine for situations where several parties have different interests. It accepts a set of options and each party’s red lines, preferences, and soft scoring rules. A hard constraint is evaluated as code: an option that violates one party’s red line is rejected before preference scores determine the result.
Among options that satisfy every party, the engine uses an egalitarian max-min rule. It aims to improve the least-satisfied participant, then uses total welfare to break ties. If no option meets all hard constraints, the result is an honest deadlock rather than a negotiated exception.
The server returns the decision status, selected option when available, recorded transcript, and transcript SHA-256 hash. The transcript contains masked verdict information rather than the full private preference sheets.
How it works
The standard MCP mode runs locally over stdio. An MCP host sends one request containing all party specifications, options, and decision rules. In this mode, the host receives the complete input, so the server does not provide privacy from that host or between parties.
The Parley MCP server still enforces the consensus rules in code. Each verdict records whether an option is feasible, its score, and a masked reason such as ok or red-line. The coordinator does not need to see which particular constraint caused a rejection. The transcript can be hashed again to detect later edits, and the recorded verdicts can be used to recompute the max-min decision independently of the hash.
For private preference sheets, the project documents a separate HTTP arrangement with one process per owner. That setup allows the coordinator to receive masked verdicts instead of every party’s complete sheet, but it is outside the basic stdio host configuration.
Setup and configuration
Install the distribution named parley-consensus; the unrelated PyPI package named parley is not the required package. The core installation has no runtime dependencies and requires Python 3.10 or newer.
pip install parley-consensus
Register the stdio server with an MCP host using the parley-mcp executable:
{"mcpServers":{"parley":{"command":"parley-mcp"}}}
If that executable is not on the host’s PATH, start the module with the interpreter where the package is installed:
{"mcpServers":{"parley":{"command":"python","args":["-m","parley.mcp"]}}}
An optional crypto extra adds Ed25519-signed verdict support, but the base MCP server uses the standard-library-only core. The server does not store the receipt or hash. Because the receipt is unsigned, a hash and transcript held by the same potentially untrusted party do not independently prove that the transcript was unchanged.
Tools and capabilities
The Parley MCP server provides three tools:
parley_decide accepts options and each party’s red lines and preferences. It returns the status, decision, transcript, and transcript hash.
parley_verify_receipt recomputes a transcript’s SHA-256 hash and recalculates the max-min result from its recorded verdicts.
parley_check_party replays one party’s red-line rules against a proposed decision.
These tools support regulated or multi-party workflows such as compliance decisions, marketplace disputes, peer-to-peer escrow decisions, and delegated committees when participants need deterministic constraint checks and an auditable result.