{
  "markdown": "# Cryptair MCP Server\n\nCryptographic attestation for AI agents, exposed as native [MCP](https://modelcontextprotocol.io) tools.\n\nLets any MCP-capable agent (Claude Desktop, Cursor, Cline, Windsurf, Zed, …) prove agreements, certify documents, and verify counterparty claims with on-chain receipts on [Hedera Hashgraph](https://hedera.com). Works zero-config out of the box: agents can self-register and start using attestation immediately, with no email verification or human-in-the-loop signup.\n\n## What It Does\n\nCryptair lets two agents (or an agent and a human) prove they agreed on the same digital artifact at a specific moment. Every confirmed agreement is written as a SHA-256 hash to Hedera Hashgraph, producing a permanent, third-party-verifiable receipt.\n\nThis MCP server exposes six tools that map cleanly to how agents think:\n\n| Tool | When to call |\n|------|--------------|\n| `certify_document` | \"I want to prove this file existed at this moment.\" |\n| `verify_document` | \"Has this document been attested before? Is it tampered?\" |\n| `initiate_attestation` | \"I want my counterparty to confirm they have the same document I do.\" |\n| `submit_attestation` | \"I received an attestation link from someone — confirm I have the matching file.\" |\n| `check_attestation` | \"What's the status of this attestation session?\" |\n| `register_agent` | \"Create a Cryptair account for me so I can authenticate.\" |\n\n## Install\n\n```bash\nnpm install -g @cryptair/mcp-server\n```\n\nOr run directly via `npx` (no install needed):\n\n```bash\nnpx -y @cryptair/mcp-server\n```\n\n## Configuration\n\n### Claude Desktop\n\nEdit `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or `%APPDATA%\\Claude\\claude_desktop_config.json` (Windows):\n\n```json\n{\n  \"mcpServers\": {\n    \"cryptair\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@cryptair/mcp-server\"]\n    }\n  }\n}\n```\n\n### Cursor\n\nEdit `~/.cursor/mcp.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"cryptair\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@cryptair/mcp-server\"]\n    }\n  }\n}\n```\n\n### Cline / Windsurf / Zed\n\nAll MCP-capable clients use the same config shape. Point them at `npx -y @cryptair/mcp-server`.\n\n### Optional: Pre-configure Credentials\n\nIf you already have a Cryptair API key, you can supply it via env so the agent skips registration:\n\n```json\n{\n  \"mcpServers\": {\n    \"cryptair\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@cryptair/mcp-server\"],\n      \"env\": {\n        \"CRYPTAIR_API_KEY\": \"ctr_live_...\"\n      }\n    }\n  }\n}\n```\n\nOtherwise, the agent will call `register_agent` the first time it needs authentication, and the API key is silently stored at `~/.cryptair/credentials.json` for future use.\n\n## Example Agent Prompts\n\nAfter installing, try prompts like:\n\n> \"Certify the contents of `~/Documents/proposal-v3.pdf` so we have a timestamped receipt.\"\n\n> \"Send `~/Documents/contract.pdf` to Acme Corp and get them to formally acknowledge receipt — generate the link.\"\n\n> \"Acme sent me this Cryptair link: `https://www.cryptair.io/attest/abc...?token=xyz`. Confirm `~/Downloads/contract.pdf` matches what they sent.\"\n\n> \"What's the status of attestation session `abc-123`?\"\n\nThe agent will pick the right tool and handle credential bootstrapping automatically.\n\n## How Attestation Works\n\n**Single-party (`certify_document`)**\n\n1. The MCP server hashes the file locally with SHA-256.\n2. The hash is sent to Cryptair, which writes it to a Hedera Consensus Service topic.\n3. You get back a Hedera transaction ID, consensus timestamp, and a public certificate URL.\n4. Anyone can verify by re-hashing the file and calling `verify_document` — the file content never has to leave your machine.\n\n**Two-party (`initiate_attestation` + `submit_attestation`)**\n\n1. Agent A initiates with a document hash and counterparty name. Cryptair returns a shareable URL.\n2. Agent A sends the URL to Agent B via any channel (email, Slack, etc.).\n3. Agent B opens the URL and submits the file *they* have. Their MCP server hashes it locally.\n4. Cryptair compares hashes server-side:\n   - **Match** → both parties' agreement is written to Hedera. Permanent record.\n   - **Mismatch** → tamper event is written to Hedera. Both parties are notified.\n\nAgent B does **not** need a Cryptair account to participate. If Agent B supplies an email when submitting, an account is auto-provisioned for them and the API key is silently persisted by their MCP server — so they can initiate their own attestations later without any signup friction.\n\n## Why MCP, Not Skills\n\nThis server is cross-vendor by design. Anthropic Skills are Claude-only; MCP works across Claude Desktop, Cursor, Cline, Windsurf, Zed, and any future MCP-capable client. One install, every agent ecosystem.\n\n## Environment Variables\n\n| Variable | Purpose | Default |\n|---------|---------|---------|\n| `CRYPTAIR_API_KEY` | Pre-configured API key. Skips `register_agent`. | (none) |\n| `CRYPTAIR_EMAIL` | Email used for `submit_attestation` auto-provisioning if omitted from the call. | (none) |\n| `CRYPTAIR_BASE_URL` | API base URL. Override for self-hosted or staging. | `https://www.cryptair.io` |\n\n## Development\n\n```bash\ngit clone https://github.com/Syronius/cryptair-mcp-server\ncd mcp-server\nnpm install\nnpm run build\nnpm start\n```\n\nThe server speaks JSON-RPC over stdio. To test manually, send `tools/list` to confirm all six tools are registered.\n\n## Free Tier & Pricing\n\nThe Cryptair free tier currently lets every account originate a small number of attestations per month. Counterparty completion (`submit_attestation`) is always free. Heavy users can top up with prepaid credits — see [cryptair.io/pricing](https://www.cryptair.io) for details.\n\n## License\n\nMIT\n",
  "bytes": 5690,
  "sha": "e2c7bff5ec22e86e4575e7c898893962d58e82b4b3821804d92e951f8a086eb6",
  "repo_slug": "syronius/cryptair-mcp-server",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_syronius_cryptair_mcp_server_74a841c0/readme"
}