Wallet auth for developers and AI agents. Send a wallet and conditions, get a signed boolean, across 37 blockchains. No secrets. No identity-first. No static credentials. Access depends on what a wallet holds, right now.
Wallet auth is the primitive: read, evaluate, sign, keep. Condition-based access is the category.
POST /v1/attest takes a wallet address and up to 10 conditions: token balance, NFT ownership, EAS attestations, Farcaster, view calls, ratio rules, account code (plain key, EIP-7702 delegation, or contract) and agent standing (ERC-8004, ERC-7710). It returns a signed pass/fail attestation with id, pass, results (a met boolean per condition, with conditionHash, blockNumber, blockTimestamp), attestedAt and expiresAt. Boolean, not balance. Each result is signed twice, ES256 and a post-quantum ML-DSA-65 signature, and anyone can verify both against the public keys at /.well-known/jwks.json.
Wallet trust profiles (POST /v1/trust) return 155 signed checks across 27 chains in 10 dimensions, up to 176 with optional Solana, XRPL, Bitcoin and Tron wallets. No score, no opinion: signed evidence, organized by dimension.
Chains: 31 EVM chains plus Solana, XRPL, Bitcoin, Tron, Stellar and Sui.
Connect any MCP client to https://api.insumermodel.com/mcp. No install, no key: ten tools on a shared daily allowance, for attestations, wallet trust profiles, merchant and discount checks, and signing keys. Run mcp-server-insumer locally with your own key for all 27 tools.
curl -X POST \
https://api.insumermodel.com/v1/keys/create \
-H "Content-Type: application/json" \
-d '{"email": "you@example.com", "appName": "my-app", "tier": "free"}'Returns an insr_live_... key instantly, shown once, so save it: 10 free verifications plus 100 requests a day.
No key, no account. x402 moves the money. InsumerAPI checks the conditions. Call POST /v1/attest, /v1/trust or /v1/trust/batch without a key, get a 402 with the price, pay in USDC on Base, Polygon, Arbitrum, Arc, or Solana, and retry with the payment. The payer is charged only for a successful answer, and the payer sees the answer only after the payment settled.
Every result verifies against the published public keys, offline with a saved copy of them. insumer-verify checks the ES256 signature, the post-quantum ML-DSA-65 signature, condition hashes, block freshness and expiry. Same specification, same published test vectors, in JavaScript and Python.
npm install insumer-verify
pip install "insumer-verify[pq]"For agents
- mcp-server-insumer: MCP server, 27 tools, on the official MCP Registry as
com.insumermodel/insumer - insumer-agent-skills: six skills in the
SKILL.mdformat for Claude Code, Cursor, Copilot, Codex and other agents - insumer-skill: Claude Code authoring skill
- langchain-insumer: LangChain toolkit, 26 tools (PyPI)
- llama-index-tools-insumer: LlamaIndex tool spec (PyPI)
- eliza-plugin-insumer: ElizaOS plugin, 10 actions (npm)
For builders
- insumer-verify: signature verifier for Node.js and Python (npm, PyPI)
- wdk-protocol-wallet-auth: WDK protocol module for wallet auth (npm)
- mppx-condition-gate: condition-based access for MPP routes (npm)
- insumer-examples: code examples, the multi-attestation spec, on-chain verifier contracts
- acp-ucp-onchain-eligibility-example: ACP and UCP examples for agent commerce
- Developers: API keys, pricing, docs
- OpenAPI spec and llms.txt
- AI agent guide: chains, trust profiles, commerce and signatures
- XRPL live demo: a real RLUSD trust-line attestation in the browser
- insumermodel.com
Skye Meta builds on InsumerAPI.