关于 readfetch
readfetch 是面向无法附加 x402 支付签名的主机的 stdio MCP 代理。它将工具调用转发给 ReadFetch,并处理 402 触发的付款与签名重试;付费调用需使用持有 USDC 的 Base 主网钱包。
主要功能
- 01免费的 URL 探测工具
- 02列出并转发 ReadFetch 工具
- 03自动进行 x402 付款重试
- 04可配置单笔付款上限
- 05免费的集成反馈工具
适用场景
- 01提取网页文本前先探测 URL
- 02通过 ReadFetch 付费工具获取网页
- 03在不支持支付请求头的主机上使用 x402 工具
- 04提交集成问题反馈
MCP 相关
它以 stdio MCP 服务运行,从 https://readfetch.com/mcp 获取工具列表,并将 tools/call 请求发送到对应的 /v1/{endpoint}。遇到 HTTP 402 时,它使用 @x402/fetch 付款并重试。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y @readfetch/mcp-x402-proxyEVM_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本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
readfetch MCP + x402 签名代理
大多数 MCP 宿主(Cursor、Claude Desktop 等)无法在 tools/call 上附加 PAYMENT-SIGNATURE。
这个 stdio MCP 服务会列出 https://readfetch.com/mcp 中的工具,在同一主机上对 /v1/{endpoint} 执行 tools/call(因此 HTTP 402 会触发 @x402/fetch 付款),并自动为重试请求签名。
要求
- Node.js 20+
- 一个 Base 主网钱包,内有少量 USDC,用于付费工具(
readfetch_text、……)。tools/list不会加载你的密钥;首次调用tools/call时才会加载。 - 将私钥设为环境变量 — 切勿提交
Cursor / Claude MCP 配置
{
"mcpServers": {
"readfetch": {
"command": "npx",
"args": ["-y", "@readfetch/[email protected]"],
"env": {
"EVM_PRIVATE_KEY": "0xYOUR_KEY"
}
}
}
}
在检出的代码目录中:
{
"mcpServers": {
"readfetch": {
"command": "node",
"args": ["/absolute/path/to/readfetch/tools/mcp-x402-proxy/index.mjs"],
"env": {
"EVM_PRIVATE_KEY": "0xYOUR_KEY"
}
}
}
}
可选:READFETCH_MCP_URL(默认值为 https://readfetch.com/mcp;仅限 readfetch.com / www.readfetch.com 的 https,或在设置 READFETCH_DEV=1 时使用 localhost / 127.0.0.1 / [::1])。拒绝上游重定向。READFETCH_MAX_PAYMENT_USD(默认值为 1,最大值为 100)用于限制每次 x402 授权的金额。在 readfetch.com 上游,付款必须与 READFETCH_EXPECTED_PAYTO 相符(默认值为目录中的收款方)。READFETCH_DEV=1 仅用于本地 MCP URL,并会在本地启用 Sepolia — 当 READFETCH_MCP_URL 指向生产环境时,切勿设置此变量。
**钱包风险:**模型调用的任何工具(readfetch_crawl、批处理等)都可能从你的密钥对应的钱包中支出 USDC,直至余额耗尽(受单笔付款上限约束)。请使用余额较低的专用钱包。
从检出的代码目录安装:
cd tools/mcp-x402-proxy
npm ci
在 git 检出目录中执行 npm ci 会使用已提交的 package-lock.json。npx @readfetch/mcp-x402-proxy 会安装 package.json 中锁定的精确依赖版本(npm 不会在已发布的 tarball 中包含锁文件)。
本地冒烟测试(检出目录)
npm ci && npm test
npm run smoke # readfetch_probe (free)
SMOKE_TOOL=readfetch_text npm run smoke # paid REST path; needs Base USDC
请在此目录中执行 — 不要在仓库根目录中执行:
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
错误做法:在 ReadFetch/ 中执行 npm publish @readfetch/mcp-x402-proxy(404 — 此处没有可发布的内容)。
如果 npmjs.com 上不存在 @readfetch 组织,请创建该组织,或暂时将 package.json 中的 name 改为你拥有的非作用域名称。
默认工具路径
- 使用
{ "url": "…" }调用readfetch_probe(免费;如果是 HTML 且不是机器人拦截页,可能会包含约 400 个字符的preview) - 使用相同的
url调用readfetch_text - 如果探测结果显示
challenge: true,请使用readfetch_scrape(必要时再使用readfetch_scrape_residential)
反馈(集成问题)
遇到令人困惑的 402、MCP 结果或文档不一致时,请调用 readfetch_feedback(免费 — 无需 EVM_PRIVATE_KEY),并附上:
{ "request_id": "<X-Request-Id from that call>", "category": "integration", "message": "…" }
付费交付争议请使用 POST /v1/claims,而非反馈。详情:readfetch.com/docs#feedback。
不使用此代理
- **REST:**在应用中使用
awal x402 pay https://readfetch.com/v1/text -d '{"url":"…"}'或@x402/fetch - **直接使用 MCP URL:**仅当你的宿主能在发送至
/mcp的 HTTP 请求中设置付款标头时才可用
另请参阅 readfetch 集成和 SKILL.md。
**目录:**官方 MCP Registry io.github.readfetch/mcp-x402-proxy · Glama 列表步骤见 readfetch/readfetch docs/GLAMA.md(运营方)。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。