npm @cryptair/mcp-serverstdioMITupdated 4mo ago
Cryptographic attestation for AI agents, exposed as native MCP tools.
¿Qué puedes hacer con cryptair mcp server?
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.pdfso we have a timestamped receipt."
"Send
~/Documents/contract.pdfto 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.pdfmatches 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)
- The MCP server hashes the file locally with SHA-256.
- The hash is sent to Cryptair, which writes it to a Hedera Consensus Service topic.
- You get back a Hedera transaction ID, consensus timestamp, and a public certificate URL.
- 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)
- Agent A initiates with a document hash and counterparty name. Cryptair returns a shareable URL.
- Agent A sends the URL to Agent B via any channel (email, Slack, etc.).
- Agent B opens the URL and submits the file they have. Their MCP server hashes it locally.
- 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
Instalación
Añade cryptair mcp server a tu cliente. Elige el que uses.
claude mcp add mcp-server -- npx -y @cryptair/mcp-servercodex mcp add mcp-server -- npx -y @cryptair/mcp-serveramp mcp add mcp-server -- npx -y @cryptair/mcp-server{
"mcpServers": {
"mcp-server": {
"command": "npx",
"args": [
"-y",
"@cryptair/mcp-server"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"mcp-server": {
"command": "npx",
"args": [
"-y",
"@cryptair/mcp-server"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
code --add-mcp '{"name":"mcp-server","command":"npx","args":["-y","@cryptair/mcp-server"]}'Or add the block manually to `.vscode/mcp.json` under `servers`.
{
"mcpServers": {
"mcp-server": {
"command": "npx",
"args": [
"-y",
"@cryptair/mcp-server"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"mcp-server": {
"command": "npx",
"args": [
"-y",
"@cryptair/mcp-server"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"mcp-server": {
"command": "npx",
"args": [
"-y",
"@cryptair/mcp-server"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"mcp-server": {
"type": "local",
"command": "npx",
"args": [
"-y",
"@cryptair/mcp-server"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"mcp-server": {
"command": {
"path": "npx",
"args": [
"-y",
"@cryptair/mcp-server"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y @cryptair/mcp-serverRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
Puntuación
39 / 100
Incompleta
- Documentación25/25
- Mantenimiento13/25
- Confianza13/20
- Capacidad0/15
- Instalación12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 115 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 12 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Historial de versiones
| Versiones | Publicada |
|---|---|
| 0.1.1Última | 8 may 2026 |