readfetch
Stdio MCP: free probe; paid web reading (text/map/scrape) via x402 on readfetch.com
Que pouvez-vous faire avec readfetch ?
readfetch_probewith{ "url": "…" }(free; may includepreview~400 chars when HTML, not a bot wall)readfetch_textwith the sameurl- If probe reports
challenge: true, usereadfetch_scrape(thenreadfetch_scrape_residentialif needed)
Installation
Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).
@readfetch/mcp-x402-proxyclaude mcp add readfetch -e 'EVM_PRIVATE_KEY=<your evm_private_key>' -e 'READFETCH_MAX_PAYMENT_USD=<READFETCH_MAX_PAYMENT_USD>' -e 'READFETCH_MCP_URL=<READFETCH_MCP_URL>' -e 'READFETCH_DEV=<READFETCH_DEV>' -- npx -y @readfetch/mcp-x402-proxy@0.1.12
{
"mcpServers": {
"readfetch": {
"command": "npx",
"args": [
"-y",
"@readfetch/mcp-x402-proxy@0.1.12"
],
"env": {
"EVM_PRIVATE_KEY": "<your evm_private_key>",
"READFETCH_MAX_PAYMENT_USD": "<READFETCH_MAX_PAYMENT_USD>",
"READFETCH_MCP_URL": "<READFETCH_MCP_URL>",
"READFETCH_DEV": "<READFETCH_DEV>"
}
}
}
}
Variables d'environnement
EVM_PRIVATE_KEYsecret Base mainnet wallet for paid tools; omit for readfetch_probe and tools/list onlyREADFETCH_MAX_PAYMENT_USDMaximum USD per x402 authorization (default 1, max 100)READFETCH_MCP_URLUpstream MCP URL for tools/list (default https://readfetch.com/mcp)READFETCH_DEVSet to 1 for localhost/Sepolia dev only; never with production READFETCH_MCP_URL
Documentation
Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.
Sommaire
readfetch MCP + x402 signing proxy
Most MCP hosts (Cursor, Claude Desktop, etc.) cannot attach PAYMENT-SIGNATURE on tools/call.
This stdio MCP server lists tools from https://readfetch.com/mcp, executes tools/call against /v1/{endpoint} on the same host (so HTTP 402 triggers @x402/fetch payment), and signs retries automatically.
Requirements
- Node.js 20+
- A wallet on Base mainnet with a little USDC for paid tools (
readfetch_text, …).tools/listdoes not load your key; the firsttools/calldoes. - Private key in env — never commit it
Cursor / Claude MCP config
{
"mcpServers": {
"readfetch": {
"command": "npx",
"args": ["-y", "@readfetch/mcp-x402-proxy@0.1.12"],
"env": {
"EVM_PRIVATE_KEY": "0xYOUR_KEY"
}
}
}
}
From a checkout:
{
"mcpServers": {
"readfetch": {
"command": "node",
"args": ["/absolute/path/to/readfetch/tools/mcp-x402-proxy/index.mjs"],
"env": {
"EVM_PRIVATE_KEY": "0xYOUR_KEY"
}
}
}
}
Optional: READFETCH_MCP_URL (default https://readfetch.com/mcp; https only for readfetch.com / www.readfetch.com, or localhost / 127.0.0.1 / [::1] with READFETCH_DEV=1). Upstream redirects are rejected. READFETCH_MAX_PAYMENT_USD (default 1, max 100) caps each x402 authorization. On readfetch.com upstream, payments must match READFETCH_EXPECTED_PAYTO (default catalog payee). READFETCH_DEV=1 is only for local MCP URLs and enables Sepolia there — never set it when READFETCH_MCP_URL points at production.
Wallet risk: any tool the model invokes (readfetch_crawl, batch, …) can spend USDC from your key until the wallet is empty (subject to the per-payment cap). Use a dedicated low-balance wallet.
Install from a checkout:
cd tools/mcp-x402-proxy
npm ci
npm ci in a git checkout uses the committed package-lock.json. npx @readfetch/mcp-x402-proxy installs exact dependency versions pinned in package.json (npm does not ship the lockfile in the published tarball).
Local smoke (checkout)
npm ci && npm test
npm run smoke # readfetch_probe (free)
SMOKE_TOOL=readfetch_text npm run smoke # paid REST path; needs Base USDC
From this directory — not the repo root:
cd tools/mcp-x402-proxy
npm login # user must own or belong to npm org @readfetch
npm publish --access public # first publish of a scoped package
Wrong: npm publish @readfetch/mcp-x402-proxy from ReadFetch/ (404 — nothing to publish there).
If the @readfetch org does not exist on npmjs.com, create it or temporarily change name in package.json to an unscoped name you control.
Default tool path
readfetch_probewith{ "url": "…" }(free; may includepreview~400 chars when HTML, not a bot wall)readfetch_textwith the sameurl- If probe reports
challenge: true, usereadfetch_scrape(thenreadfetch_scrape_residentialif needed)
Feedback (integration issues)
After a confusing 402, MCP result, or doc mismatch, call readfetch_feedback (free — no EVM_PRIVATE_KEY) with:
{ "request_id": "<X-Request-Id from that call>", "category": "integration", "message": "…" }
Paid delivery disputes use POST /v1/claims, not feedback. Details: readfetch.com/docs#feedback.
Without this proxy
- REST:
awal x402 pay https://readfetch.com/v1/text -d '{"url":"…"}'or@x402/fetchin your app - Direct MCP URL: only works if your host can set payment headers on the HTTP request to
/mcp
See also readfetch integrations and SKILL.md.
Directory: Official MCP Registry io.github.readfetch/mcp-x402-proxy · Glama listing steps in readfetch/readfetch docs/GLAMA.md (operator).
Questions fréquentes
Qu'est-ce que readfetch ?
Stdio MCP: free probe; paid web reading (text/map/scrape) via x402 on readfetch.com
Comment installer readfetch ?
Il s'exécute sur votre machine. Dans Claude Code : claude mcp add readfetch -e 'EVM_PRIVATE_KEY=<your evm_private_key>' -e 'READFETCH_MAX_PAYMENT_USD=<READFETCH_MAX_PAYMENT_USD>' -e 'READFETCH_MCP_URL=<READFETCH_MCP_URL>' -e 'READFETCH_DEV=<READFETCH_DEV>' -- npx -y @readfetch/mcp-x402-proxy@0.1.12. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.
Faut-il une clé API pour readfetch ?
Oui. Il attend EVM_PRIVATE_KEY, à renseigner dans sa configuration.
readfetch est-il open source ?
Oui. Son code est sur GitHub sous licence MIT.
Qui maintient readfetch ?
Il est publié par readfetch. AI.tn le référence sans le maintenir ni le recommander.
Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.