EVM MCP server for Claude, ChatGPT and Cursor
Your model guesses balances from stale training data. Give it a read-only MCP server and it answers from live contract state instead.
cel.bind(d, token.decimals(), {
"name": token.name(),
"symbol": token.symbol(),
"decimals": string(formatUnits(d, 0)),
"totalSupply": string(formatUnits(token.totalSupply(), d))
})Read-only. No wallet, no signing, no RPC setup.
Ask an agent about the chain and it guesses.
It usually shows the first time you check an answer on Etherscan. The model sounded sure, and the number was wrong.
It invents balances
Without live data the model answers from training data that is months old. Balances, supplies and vote counts come back confident and wrong.
Crypto MCP servers are wallet-shaped
Most cover balances, prices and swaps. Ask about one contract's own state, a vault, a governor or a health factor, and there is no tool for it.
Read tools want an ABI or an Etherscan key
The servers that do read contracts ask for the ABI, an explorer API key and an RPC URL per chain before the first answer.
Signing tools sit next to read tools
A server that bundles a wallet and transaction tools is hard to hand to an agent. One bad tool call can be a signed transaction.
A hosted MCP server that can only read.
Add one URL to your client. The agent writes an expression, evmquery runs it against the contract and returns typed values it can quote.
It invents balances
Live values with a block number
Every answer is read at the latest block and carries that block number, so the model can say where a value came from.
usdc.balanceOf(wallet)Crypto MCP servers are wallet-shaped
Any verified contract, any view method
If a verified contract on Ethereum, Base, BNB Smart Chain or Polygon exposes it, the agent can read it: governors, vaults, oracles, lending pools.
pool.getUserAccountData(user)Read tools want an ABI or an Etherscan key
No RPC, ABI or explorer key
describe_schema shows the agent a contract's methods and types, so it writes the expression itself. Proxies are followed automatically.
describe_schema → execute_querySigning tools sit next to read tools
Read-only by design
There are no write, signing or wallet tools to approve. The worst a bad tool call can do is return a wrong read.
What it does not do. It does not send transactions or swaps, it does not resolve ENS names, and a question that spans two chains takes one call per chain.
Add it to Claude Code or Cursor.
The server runs over HTTP at https://api.evmquery.com/mcp. Your API key goes in the x-api-key header.
Claude Code
Run once in your terminal.
claude mcp add --transport http evmquery \ https://api.evmquery.com/mcp \ --header "x-api-key: YOUR_API_KEY"Cursor
Add it to .cursor/mcp.json in your project, or to ~/.cursor/mcp.json for every project.
// .cursor/mcp.json { "mcpServers": { "evmquery": { "url": "https://api.evmquery.com/mcp", "headers": { "x-api-key": "YOUR_API_KEY" } } } }Then ask
Ask in plain language, for example "What is the total supply of USDC on Base?" The agent calls describe_schema to see the contract, then execute_query to read it.
See what your agent will see.
Free tools that run the same reads your agent makes. No signup, no wallet connect.
Frequently asked questions
Anything that speaks the Model Context Protocol over HTTP, including Claude Code, Cursor, VS Code, Codex and Claude. Setup is a single URL, with no plugins or SDKs to install.
ChatGPT's custom connector support lets you add MCP servers to your workspace. Point it at https://api.evmquery.com/mcp and sign in when prompted.
evmquery exposes read tools only. No tool signs, sends a transaction or touches a wallet, so approving it gives the agent no way to move funds. Queries read public chain state.
For clients configured with headers, yes: the key goes in the x-api-key header. It can only run read queries against your plan, and you can rotate it in the dashboard at any time. Keep the config file out of version control. Clients that support browser sign-in can connect without pasting a key.
Queries are metered in units against your plan's rate limit. The free tier needs no credit card and covers trying it out in an agent. The pricing page lists the limits of each plan.
It does not have to guess. describe_schema returns the contract's methods and types before the agent writes anything, and a wrong expression returns an error the agent can read and fix. Since every tool is a read, a mistake costs a retry, not funds.
Anything that maps to reading a verified contract: token balances and allowances, NFT ownership, DAO proposal states and vote counts, Aave health factors, Chainlink price feeds.
Ethereum, Base, BNB Smart Chain and Polygon today. If a contract is verified on one of these, your agent can read it.
No. evmquery reads onchain state by public address. It never sees private keys, never signs transactions and never stores your AI conversations.
Blockscout and Bitquery are indexed data layers: they have already crawled the chain, so their MCP servers are strongest at explorer-style lookups and DEX or wallet analytics. evmquery reads contract logic directly: point it at any verified contract, including ones nobody has indexed, and it resolves the ABI, unwinds proxies and batches the calls into one typed response. Use evmquery when the question is about a specific contract's own state, and an indexer for broad wallet or trade history.
Give your agent live contract data.
Free tier, no credit card. One URL, four EVM chains.
Free tier included · No credit card