MCP server for evaluating on-chain conditions and returning ECDSA-signed attestations across supported blockchain networks.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β we're steadily working through the catalog.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Inspect callable tools, capabilities, and parameters exposed to AI agents by MCP Server Insumer.
MCP server for InsumerAPI β condition-based access infrastructure. Send a wallet and conditions, get a signed boolean across 38 chains. No balances exposed, no identity required, no trust in the API provider needed.
Enables AI agents (Claude Desktop, Cursor, Windsurf, and any MCP-compatible client) to add condition-based access to any workflow β verify on-chain conditions, discover merchants, generate signed discount codes, and onboard new merchants.
In production: AsterPay β a regulated payments stack β runs live ERC-8183 agentic-commerce trust scoring on InsumerAPI. 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 38 chains, trust profiles, commerce protocols, and signature verification.
Add to your claude_desktop_config.json:
Add to your MCP settings:
Three paths, all give you a working insr_live_... key in seconds with 100 reads/day and 10 verification credits. One free key per email.
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:
Option C β Browser: Enter your email on insumermodel.com β the key appears inline.
Set it as INSUMER_API_KEY in your config.
Already have a key? Manage usage, top up, or upgrade at insumermodel.com/developers/account/.
Instead of a key, set INSUMER_PAYMENT_KEY to a throwaway Base wallet funded with a few dollars of USDC. Metered calls (insumer_attest, insumer_wallet_trust, insumer_batch_wallet_trust) are then paid inline via x402 β the server requests a price, signs an EIP-3009 USDC authorization on Base, and retries. No signup, no credits, no dashboard.
INSUMER_API_KEY and INSUMER_PAYMENT_KEY are set, the key (credits) is used.When your agent calls insumer_attest, you get an ECDSA-signed attestation:
The sig is an ECDSA P-256 signature (base64, P1363 r||s, 88 characters). The kid identifies the key and selects the signed bytes: insumer-attest-v2 signs "insumer.attestation.v2\n" + canonical_json({v: 2, id, pass, results, attestedAt}) (keys sorted at every level); insumer-attest-v1 signs the bare JSON.stringify of {id, pass, results, attestedAt} in insertion order. Since 2026-09-01 every attest and trust response also carries a post-quantum companion, pqSig and pqKid (ML-DSA-65 over the post-quantum domain tag plus the same classical preimage the kid selects), added beside sig and kid without changing them. 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.
Add format: "jwt" to the insumer_attest tool parameters to receive the attestation as a standard JWT bearer token:
The response includes an additional jwt field containing an ES256-signed JWT, and beside it a pqJwt sibling (a compact JWS with alg ML-DSA-65 carrying the same claims, signed under insumer-attest-pq1). The jwt token is verifiable by any standard JWT library via the JWKS endpoint at GET /v1/jwks β making it compatible with Kong, Nginx, Cloudflare Access, AWS API Gateway, and other middleware that accepts JWT bearer tokens.
Your agent gets the attestation. Your application should verify it. Install insumer-verify:
This reports five independent verdicts: ECDSA signature, condition hash integrity, block freshness, attestation expiry, and the post-quantum companion (insumer-verify 1.8.1+ reports it as verified, refuted, absent, or unverifiable). Zero runtime dependencies, uses Web Crypto API.
| Tool | Description |
|---|---|
insumer_setup | Generate a free API key instantly. Takes an email, returns an insr_live_... key with 10 credits. No credit card required. |
| Tool | Description |
|---|---|
insumer_jwks | Get the JWKS: five entries over two keys. The ECDSA P-256 key under insumer-attest-v1, insumer-attest-v2, and insumer-trust-v2, followed by the ML-DSA-65 post-quantum key under two RFC 9964 AKP entries, insumer-attest-pq1 and insumer-trust-pq1. Match by the kid (or pqKid) on the response, never by position. |
token_balancethresholds are decimal strings. Passthresholdas"100", not100. Keys created from 2026-06-10 sign withkid: insumer-attest-v2, which preserves full precision and rejects a JSON number with a400. Theinsumer_attesttool accepts a number or string and coerces to the canonical string; olderinsumer-attest-v1keys accept either.
Factual signals from GitHub, npm, and our automated checks β not a rating.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/douglasborthwick-crypto-mcp-server-insumer)<a href="https://allmcps.com/mcp/douglasborthwick-crypto-mcp-server-insumer"><img src="https://allmcps.com/api/badge/douglasborthwick-crypto-mcp-server-insumer?style=directory" alt="MCP Server Insumer on AllMCPs" /></a>