Skip to main content

MCP tool-call receipt signing — Cedar policy decisions linked to governance receipts

Project description

MCP Receipt Governed

MCP tool-call receipt signing integration for Agent Governance Toolkit.

Every MCP tool invocation optionally produces a signed governance receipt linking the Cedar policy decision to the tool call, providing a cryptographically verifiable audit trail for agent operations.

Quick Start

from mcp_receipt_governed import McpReceiptAdapter

adapter = McpReceiptAdapter(
    cedar_policy="""
        permit(principal, action == Action::"ReadData", resource);
        forbid(principal, action == Action::"DeleteFile", resource);
    """,
    cedar_policy_id="policy:mcp-tools:v1",
    signing_key_hex="a" * 64,  # Replace with real Ed25519 seed
)

# Govern a tool call — produces a signed receipt
receipt = adapter.govern_tool_call(
    agent_did="did:mesh:agent-1",
    tool_name="ReadData",
    tool_args={"path": "/data/report.csv"},
)

print(f"Decision: {receipt.cedar_decision}")
print(f"Receipt ID: {receipt.receipt_id}")
print(f"Signed: {receipt.signature is not None}")

Features

  • Cedar policy binding: Receipt payload includes the Cedar policy ID and allow/deny decision
  • Ed25519 signatures: Non-repudiable receipt signing with HMAC-SHA256 fallback
  • Canonical JSON hashing: JCS-style deterministic serialization for verifiable receipts
  • Receipt store: In-memory audit trail with filtering by agent, tool, or decision
  • Zero required dependencies: Works with stdlib only; Ed25519 signing available via pip install agentmesh-mcp-receipts[crypto]

Installation

# From the repository root
pip install -e agent-governance-python/agentmesh-integrations/mcp-receipt-governed

# With Ed25519 signing support
pip install -e "agent-governance-python/agentmesh-integrations/mcp-receipt-governed[crypto]"

Testing

cd agent-governance-python/agentmesh-integrations/mcp-receipt-governed
pip install -e ".[dev]"
pytest tests/ -v

Architecture

MCP Tool Call
     │
     ▼
┌────────────────────┐
│  McpReceiptAdapter │
│  ┌──────────────┐  │
│  │ Cedar Policy │──┼──▶ allow / deny
│  │  Evaluator   │  │
│  └──────────────┘  │
│  ┌──────────────┐  │
│  │  Receipt     │──┼──▶ GovernanceReceipt
│  │  Generator   │  │    (tool, agent, policy, decision)
│  └──────────────┘  │
│  ┌──────────────┐  │
│  │  Ed25519     │──┼──▶ Signed receipt
│  │  Signer      │  │
│  └──────────────┘  │
│  ┌──────────────┐  │
│  │ ReceiptStore │──┼──▶ Audit trail
│  └──────────────┘  │
└────────────────────┘

License

MIT — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agentmesh_mcp_receipts-3.4.0.tar.gz (11.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

agentmesh_mcp_receipts-3.4.0-py3-none-any.whl (8.1 kB view details)

Uploaded Python 3

File details

Details for the file agentmesh_mcp_receipts-3.4.0.tar.gz.

File metadata

  • Download URL: agentmesh_mcp_receipts-3.4.0.tar.gz
  • Upload date:
  • Size: 11.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: RestSharp/106.13.0.0

File hashes

Hashes for agentmesh_mcp_receipts-3.4.0.tar.gz
Algorithm Hash digest
SHA256 5f34d7911b12c95b2f50a631beeeaf82df053c1129d40ab585b554ee2bcde034
MD5 67ae47e269ffa272593d0df2792261f6
BLAKE2b-256 6cf11afcc52cd74823eebbd609f436320861dba7846298db53efb57c8df84b50

See more details on using hashes here.

File details

Details for the file agentmesh_mcp_receipts-3.4.0-py3-none-any.whl.

File metadata

File hashes

Hashes for agentmesh_mcp_receipts-3.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fada216c54ea7a6b13fdd9a84045462d4aa261d04e64a598bad825730b3cef16
MD5 9ddb32058343dce86691573bfb92596e
BLAKE2b-256 2ec73023d4e0398c49fabe8a20f9b4cddd367381af8ffc92c6a390bb790b8a50

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page