Insumer MCP Server

1

Add it to Claude Code

Run this in a terminal.

Run in terminal
claude mcp add -e "INSUMER_API_KEY=${INSUMER_API_KEY}" insumer -- npx -y mcp-server-insumer
Required:INSUMER_API_KEY
README.md

Read-first blockchain verification infrastructure for AI agents

mcp-server-insumer

MCP server for The Insumer Model — read-first blockchain verification infrastructure that returns ECDSA-signed, privacy-preserving booleans across 32 chains without exposing wallet balances or requiring trust in the API provider.

Enables AI agents (Claude Desktop, Cursor, Windsurf, and any MCP-compatible client) to autonomously verify on-chain conditions, discover merchants, generate signed discount codes, and onboard new merchants. Not a loyalty program. Not a reputation network. Not an identity system.

In production: DJD Agent Score (Coinbase x402 ecosystem) uses InsumerAPI for AI agent wallet trust scoring. Case study.

Also available as: LangChain (26 tools, PyPI) | langchain-community (26 tools, PR #549) | ElizaOS (10 actions, npm) | OpenAI GPT (GPT Store) | insumer-verify (client-side verification, npm)

Full AI Agent Verification API guide — covers all 32 chains, trust profiles, commerce protocols, and signature verification.

Quick Start

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "insumer": {
      "command": "npx",
      "args": ["-y", "mcp-server-insumer"],
      "env": {
        "INSUMER_API_KEY": "insr_live_..."
      }
    }
  }
}

Cursor / Windsurf

Add to your MCP settings:

{
  "insumer": {
    "command": "npx",
    "args": ["-y", "mcp-server-insumer"],
    "env": {
      "INSUMER_API_KEY": "insr_live_..."
    }
  }
}

Get an API Key

Option A — Let your agent do it: Start the server without a key. Your AI agent can call the insumer_setup tool with your email to generate a free key instantly. Add it to your config and restart.

Option B — Terminal (no browser needed):

curl -s -X POST https://us-central1-insumer-merchant.cloudfunctions.net/createDeveloperApiKey \
  -H "Content-Type: application/json" \
  -d '{"email": "you@example.com", "appName": "MCP Server", "tier": "free"}' | jq .

Returns an insr_live_... key with 10 credits and 100 calls/day. One free key per email.

Option C — Browser: Go to insumermodel.com/developers and generate a free key instantly.

Set it as INSUMER_API_KEY in your config.

What You Get Back

When your agent calls insumer_attest, you get an ECDSA-signed attestation:

{
  "ok": true,
  "data": {
    "attestation": {
      "id": "ATST-A7C3E1B2D4F56789",
      "pass": true,
      "results": [
        {
          "condition": 0,
          "met": true,
          "label": "USDC >= 1000 on Ethereum",
          "type": "token_balance",
          "chainId": 1,
          "evaluatedCondition": {
            "chainId": 1,
            "contractAddress": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
            "decimals": 6,
            "operator": "gte",
            "threshold": 1000,
            "type": "token_balance"
          },
          "conditionHash": "0x8a3b...",
          "blockNumber": "0x129e3f7",
          "blockTimestamp": "2026-02-28T12:34:56.000Z"
        }
      ],
      "passCount": 1,
      "failCount": 0,
      "attestedAt": "2026-02-28T12:34:57.000Z",
      "expiresAt": "2026-02-28T13:04:57.000Z"
    },
    "sig": "MEUCIQD...(base64 ECDSA signature)...",
    "kid": "insumer-attest-v1"
  },
  "meta": {
    "version": "1.0",
    "timestamp": "2026-02-28T12:34:57.000Z",
    "creditsCharged": 1,
    "creditsRemaining": 99
  }
}

The sig is an ECDSA P-256 signature over {id, pass, results, attestedAt}. The kid identifies which key signed it. The conditionHash is a SHA-256 of the exact condition logic that was evaluated.

No balances. No amounts. Just a cryptographically signed true/false.

For XRPL conditions, results include ledgerIndex, ledgerHash (validated ledger hash), and trustLineState: { frozen: boolean } instead of blockNumber/blockTimestamp. Native XRP conditions include ledgerIndex and ledgerHash but not trustLineState. Frozen trust lines cause met: false.

Wallet Auth (JWT)

Add format: "jwt" to the insumer_attest tool parameters to receive

Tools (2)

insumer_attestVerifies on-chain conditions and returns an ECDSA-signed attestation.
insumer_setupGenerates a free API key for the user.

Environment Variables

INSUMER_API_KEYrequiredAPI key for accessing Insumer verification services

Configuration

claude_desktop_config.json
{"mcpServers": {"insumer": {"command": "npx", "args": ["-y", "mcp-server-insumer"], "env": {"INSUMER_API_KEY": "insr_live_..."}}}}

Try it

Verify if the wallet address 0x... holds at least 1000 USDC on Ethereum.
Check if the connected wallet meets the requirements for the merchant discount program.
Generate a signed attestation confirming my token balance on Solana.
Setup my Insumer account using my email address to get an API key.

Frequently Asked Questions

What are the key features of Insumer?

Returns ECDSA-signed, privacy-preserving boolean attestations. Supports 32 chains including EVM and Solana. Verifies on-chain conditions without exposing wallet balances. Provides cryptographically verifiable proof of on-chain state. Enables AI agents to autonomously verify merchant and user conditions.

What can I use Insumer for?

AI agent wallet trust scoring for decentralized ecosystems. Autonomous verification of on-chain conditions for merchant onboarding. Generating signed discount codes based on verified on-chain holdings. Privacy-preserving compliance checks for AI-driven commerce.

How do I install Insumer?

Install Insumer by running: npx -y mcp-server-insumer

What MCP clients work with Insumer?

Insumer works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep Insumer docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Need the old visual installer? Open Conare IDE.
Open Conare