Skip to main content
Glama
Syronius

Cryptair MCP Server

by Syronius

Cryptair MCP Server

Cryptographic attestation for AI agents, exposed as native MCP tools.

Lets 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. 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.

What It Does

Cryptair 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.

This MCP server exposes six tools that map cleanly to how agents think:

Tool

When to call

certify_document

"I want to prove this file existed at this moment."

verify_document

"Has this document been attested before? Is it tampered?"

initiate_attestation

"I want my counterparty to confirm they have the same document I do."

submit_attestation

"I received an attestation link from someone — confirm I have the matching file."

check_attestation

"What's the status of this attestation session?"

register_agent

"Create a Cryptair account for me so I can authenticate."

Install

npm install -g @cryptair/mcp-server

Or run directly via npx (no install needed):

npx -y @cryptair/mcp-server

Configuration

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "cryptair": {
      "command": "npx",
      "args": ["-y", "@cryptair/mcp-server"]
    }
  }
}

Cursor

Edit ~/.cursor/mcp.json:

{
  "mcpServers": {
    "cryptair": {
      "command": "npx",
      "args": ["-y", "@cryptair/mcp-server"]
    }
  }
}

Cline / Windsurf / Zed

All MCP-capable clients use the same config shape. Point them at npx -y @cryptair/mcp-server.

Optional: Pre-configure Credentials

If you already have a Cryptair API key, you can supply it via env so the agent skips registration:

{
  "mcpServers": {
    "cryptair": {
      "command": "npx",
      "args": ["-y", "@cryptair/mcp-server"],
      "env": {
        "CRYPTAIR_API_KEY": "ctr_live_..."
      }
    }
  }
}

Otherwise, 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.

Example Agent Prompts

After installing, try prompts like:

"Certify the contents of ~/Documents/proposal-v3.pdf so we have a timestamped receipt."

"Send ~/Documents/contract.pdf to Acme Corp and get them to formally acknowledge receipt — generate the link."

"Acme sent me this Cryptair link: https://www.cryptair.io/attest/abc...?token=xyz. Confirm ~/Downloads/contract.pdf matches what they sent."

"What's the status of attestation session abc-123?"

The agent will pick the right tool and handle credential bootstrapping automatically.

How Attestation Works

Single-party (certify_document)

  1. The MCP server hashes the file locally with SHA-256.

  2. The hash is sent to Cryptair, which writes it to a Hedera Consensus Service topic.

  3. You get back a Hedera transaction ID, consensus timestamp, and a public certificate URL.

  4. Anyone can verify by re-hashing the file and calling verify_document — the file content never has to leave your machine.

Two-party (initiate_attestation + submit_attestation)

  1. Agent A initiates with a document hash and counterparty name. Cryptair returns a shareable URL.

  2. Agent A sends the URL to Agent B via any channel (email, Slack, etc.).

  3. Agent B opens the URL and submits the file they have. Their MCP server hashes it locally.

  4. Cryptair compares hashes server-side:

    • Match → both parties' agreement is written to Hedera. Permanent record.

    • Mismatch → tamper event is written to Hedera. Both parties are notified.

Agent 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.

Why MCP, Not Skills

This 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.

Environment Variables

Variable

Purpose

Default

CRYPTAIR_API_KEY

Pre-configured API key. Skips register_agent.

(none)

CRYPTAIR_EMAIL

Email used for submit_attestation auto-provisioning if omitted from the call.

(none)

CRYPTAIR_BASE_URL

API base URL. Override for self-hosted or staging.

https://www.cryptair.io

Development

git clone https://github.com/Syronius/cryptair-mcp-server
cd mcp-server
npm install
npm run build
npm start

The server speaks JSON-RPC over stdio. To test manually, send tools/list to confirm all six tools are registered.

Free Tier & Pricing

The 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 for details.

License

MIT

A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Syronius/cryptair-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server