SendCheck — Claude Code MCP server: EVM address checks before payment
Checks an EVM address before your agent signs a payment. The free pre-check catches typos and bad casing; paid tiers cover chain data.
claude mcp add --transport http sendcheck https://api.pennyforge.org/mcpWhat SendCheck — EVM address verification (x402) does
Point the server at https://api.pennyforge.org/mcp and it exposes SendCheck's address checks to your agent. The free /validate endpoint answers one question: is this a well-formed EVM address with a correct EIP-55 checksum? That alone stops the costly mistake, since a dropped digit or a flipped character in a settlement address sends USDC somewhere it cannot come back from.
Paid routes cost $0.01 for one chain or $0.05 for all five, settled in USDC on Base through x402. No account, no API key. Version v0.2.0 adds signed service cards: the worker signs its payTo address and per-route max price with a stable ES256 key on every deploy, and a client that pinned that key once can confirm the payTo in a 402 challenge cryptographically. verifyChallenge compares the challenge against the signed block and reports reasons such as challenge_payto_mismatch or price_exceeded.
The client library needs Node 18+ for global fetch and pulls in no dependencies. Installing from the GitHub npm registry wants a valid GitHub token even for public reads, so //npm.pkg.github.com/:_authToken=<your GH token> has to sit in your .npmrc or the install fails. First contact is still trust-on-first-use: the signature gives key continuity to clients that already pinned the key, not proof of authenticity on a first visit.
What it helps with
- catch a mistyped settlement address before signing a payment
- confirm an address matches its EIP-55 checksum
- check that the payTo in a 402 challenge matches the signed service card
- flag a challenge priced above the signed maxPrice
- notice when a service rotates its signing key
Example prompts for the agent
- Verify
0x9504A5939AB5be2B2B1F8beA7D7ebeCcd96c485Dbefore I pay - Compare the payTo in this 402 challenge against the signed service card
- Pin the public key for
https://api.pennyforge.organd tell me if it rotated
How to install SendCheck — EVM address verification (x402)
Platform CLI: remote server
claude mcp add --transport http sendcheck https://api.pennyforge.org/mcpPlatform CLI: remote server
codex mcp add sendcheck-evm-address-verification-x402 --url https://api.pennyforge.org/mcpConfig file
{
"mcpServers": {
"sendcheck-evm-address-verification-x402": {
"url": "https://api.pennyforge.org/mcp"
}
}
}Config file
{
"servers": {
"sendcheck-evm-address-verification-x402": {
"type": "http",
"url": "https://api.pennyforge.org/mcp"
}
}
}Platform CLI: remote server
gemini mcp add -t http sendcheck-evm-address-verification-x402 https://api.pennyforge.org/mcpStep by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more
Questions about SendCheck — EVM address verification (x402)
How do I install SendCheck in Claude Code?
Run claude mcp add --transport http sendcheck https://api.pennyforge.org/mcp. The server is written into your Claude config and shows up in the session.
What does SendCheck do?
It checks an EVM address before a payment goes out: a free pre-check for format and EIP-55 casing, plus paid tiers at $0.01 and $0.05 for chain data. Since v0.2.0 it also matches a signed service card against the address and price in a 402 challenge.
Do I need an API key for the free check?
No. /validate runs without an account or key. The paid endpoints take payment over x402 in USDC on Base.