# Shodai Agreements MCP server

Author, validate, deploy, and operate Shodai on-chain agreements.

## Links
- Registry page: https://www.getdrio.com/mcp/network-shodai-agreements
- Repository: https://github.com/CNSLabs/agreements-api-sdk

## Install
- Endpoint: https://shodai.network/mcp
- Auth: Auth required by registry metadata

## Setup notes
- Remote header: Authorization (required; secret)
- The upstream registry signals required auth or secrets.
- Remote endpoint: https://shodai.network/mcp
- Header: Authorization

## Tools
- list_agreements (List agreements) - Lists agreement summaries visible to the current API key. Supports pagination (cursor + limit), filtering by chain and state, and sorting. Returns summaries only; use get_agreement for the full record. Endpoint: https://shodai.network/mcp
- get_agreement (Get agreement) - Returns a single agreement record, including the full authored agreement JSON and hosted record context (participants, observers, owner, deployment address). Endpoint: https://shodai.network/mcp
- get_agreement_document (Get agreement document) - Returns the rendered hosted prose document for an agreement by documentId, including content type, display name, chain, docUri, and agreement record references. Use documentId from list_agreements/get_agreement or from prepare_deployment_typed_data. Endpoint: https://shodai.network/mcp
- get_agreement_state (Get agreement state) - Returns the current state of an agreement. For deployed agreements, interpret the state against the states defined in the authored agreement lifecycle (execution.states). Use this to poll for transitions after submitting an input. Endpoint: https://shodai.network/mcp
- get_input_history (Get input history) - Returns recorded input submissions for an agreement, with pagination and filtering. Use this to inspect which events have been submitted and whether each is PENDING, MINED, or FAILED. Endpoint: https://shodai.network/mcp
- validate_agreement (Validate agreement structure) - Checks only the authored agreement JSON document and returns participant variable keys, input IDs, state IDs, and warnings. This does not validate deployment values, participant wallet addresses, signer, or permit data — use preflight_deployment for that. Iterate on the agreement JSON until this returns no blocking warnings. Requires the agreements.write scope. Endpoint: https://shodai.network/mcp
- preflight_deployment (Preflight deployment request) - Checks whether authored agreement JSON plus target chain, deployment values, participant wallet mappings, and observer context are ready for deployment. This does not deploy the agreement and does not require a signature. Always run this before signing a deploy permit. Requires the agreements.write scope. Endpoint: https://shodai.network/mcp
- deploy_agreement (Deploy agreement) - Deploys authored agreement JSON using an EIP-712 permit; the API submits the on-chain transaction and returns the deployed agreement record. Provide a pre-signed permit (signer, deadline, signature), or call prepare_deployment_typed_data first to obtain the payload to sign. Always run preflight_deployment before deploying. Requires the agreements.write scope. Endpoint: https://shodai.network/mcp
- submit_input (Submit input with permit) - Submits a signed input to a deployed agreement, advancing its on-chain lifecycle. The input ID and values must match an input defined by the agreement JSON, and the signer must be allowed by that input. Provide a pre-signed permit (signer, deadline, signature), or call prepare_input_typed_data first. Requires the agreements.write scope. Endpoint: https://shodai.network/mcp
- prepare_deployment_typed_data (Prepare deployment permit typed data) - Builds the exact EIP-712 payload that must be signed to authorize deployment of the given agreement JSON. Sign the returned typedData with the deploying wallet (eth_signTypedData_v4 / viem signTypedData), then call deploy_agreement with signer, deadline, and the signature components. No transaction is sent and nothing is stored. Reads the signer nonce from the target chain. Endpoint: https://shodai.network/mcp
- prepare_input_typed_data (Prepare input permit typed data) - Builds the exact EIP-712 payload that must be signed to authorize submitting an input to a deployed agreement. Sign the returned typedData with a wallet allowed by the input definition, then call submit_input with signer, deadline, and the signature components. No transaction is sent and nothing is stored. Reads the agreement record and signer nonce. Endpoint: https://shodai.network/mcp

## Resources
- agreements://examples/simple-agreement.json - Simple example agreement (MOU) The smallest complete, deployable agreement JSON artifact (a two-party memorandum of understanding). Use it to learn the authoritative document shape: metadata, variables with participant subtypes, markdown content, and a linear execution lifecycle. MIME type: application/json
- agreements://examples/complex-agreement.json - Complex example agreement A richer complete agreement JSON example with more states, event types, metadata, and branching behavior. Use it as the reference when authoring non-trivial lifecycles. MIME type: application/json
- agreements://docs/author-agreement-json.md - Author Agreement JSON guide How to make good authoring decisions when turning a real business workflow into agreement JSON: content, variables, participants, states, inputs, and transitions. MIME type: text/markdown
- agreements://docs/index.md - Shodai documentation index (llms.txt) Canonical index of all Agreements API documentation pages with Markdown export URLs. Fetch the linked pages for deployment, signing, and troubleshooting workflows not covered by this server. MIME type: text/markdown

## Prompts
- author_agreement - Author an agreement from a business description End-to-end authoring workflow: learn the agreement JSON shape from the example resources, draft the document, then iterate with validate_agreement and preflight_deployment until it is deployment-ready. Arguments: businessDescription

## Metadata
- Owner: network.shodai
- Version: 0.1.0
- Runtime: Streamable Http
- Transports: HTTP
- License: Not captured
- Language: Not captured
- Stars: Not captured
- Updated: Jun 25, 2026
- Source: https://registry.modelcontextprotocol.io
