readfetch
Stdio MCP: free probe; paid web reading (text/map/scrape) via x402 on readfetch.com
ماذا يمكنك أن تفعل مع 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)
التثبيت
أضف هذا إلى إعدادات MCP في عميلك (Claude Desktop: claude_desktop_config.json، وCursor: .cursor/mcp.json، ويستخدم VS Code وغيره الصيغة نفسها «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>"
}
}
}
}
متغيرات البيئة
EVM_PRIVATE_KEYسري 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
التوثيق
مأخوذ من ملف README للمشروع على GitHub ويُحدَّث أسبوعيًا. تفتح الروابط على GitHub.
المحتويات
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).
الأسئلة الشائعة
ما هو readfetch؟
Stdio MCP: free probe; paid web reading (text/map/scrape) via x402 on readfetch.com
كيف أثبّت readfetch؟
يعمل على جهازك. في 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. وفي العملاء الآخرين، الصق إعداد JSON من هذه الصفحة في إعدادات MCP الخاصة بهم.
هل يحتاج readfetch إلى مفتاح API؟
نعم. يتطلب EVM_PRIVATE_KEY، وتضبطها في إعداداته.
هل readfetch مفتوح المصدر؟
نعم. شيفرته متاحة على GitHub بترخيص MIT.
من يصون readfetch؟
ينشره readfetch. يدرجه AI.tn لكنه لا يصونه ولا يوصي به.
من سجل MCP الرسمي. الإدراج ليس توصية: راجع شيفرة الخادم وصلاحياته قبل منحه الوصول إلى بياناتك.