captcha-mcp 是一个面向 AI 代理的 MCP(Model Context Protocol)服务器,用于替代传统 429 Too Many Requests 限流机制。当代理频繁调用 MCP 服务器时,captcha-mcp 会返回一个 402 风格的挑战,要求调用者要么完成一个免费的工作量证明(PoW)谜题(约 5-10 秒 CPU 时间,SHA-256,默认 14 个前导零位),要么支付 3 个 satoshi 的闪电网络发票(通过 L402 协议,RFC 7235 + bolt11 发票)。这两种方式都是机器可读的退避信号,自主调用者无需账户、邮箱或 API 密钥即可满足。该服务器仅使用标准库,支持 stdio 和 HTTP 流式传输,免费回退,自托管,无收入分成。
主要能力:
- 将 PowForge 的 pow-captcha 服务(captcha.powforge.dev)包装为三个 MCP 工具:免费 PoW 挑战、付费闪电发票、以及令牌验证。
- 免费层:代理需要花费约 5-10 秒 CPU 时间解决 SHA-256 工作量证明谜题。
- 付费层:代理需支付 3 sats 的闪电网络发票(L402)。
- 无状态 HTTP 模式,支持 CORS 开放,适用于浏览器端 MCP 客户端。
- 令牌验证:后端可独立验证代理提交的令牌,无需信任代理。
使用方式:
- 通过 npx @powforge/captcha-mcp 启动,默认使用 stdio 模式,等待 MCP 客户端连接。
- 或运行 npx @powforge/captcha-mcp --install 打印配置块,可将其添加到 Claude Code、Cursor 等 MCP 兼容主机的配置中。
- 对于需要 HTTP 的托管 MCP 客户端(如 Smithery),使用 --http 参数或设置 HTTP_MODE=1。
- 环境变量 CAPTCHA_URL 可指向不同的 captcha 后端,默认 http://localhost:3077,生产环境建议 https://captcha.powforge.dev。
- 本地开发:克隆 captcha widget 仓库或运行公共服务,MCP 服务器只需要 HTTP 访问权限。
- 手动测试协议:通过 stdin 发送 JSON-RPC 请求,应看到包含 serverInfo 的 JSON 响应。
适用场景:
- MCP 服务器被 AI 代理高频调用导致过载时,用于替代 429 限流,让调用者付出计算或经济成本。
- 需要为无账户、无邮箱、无 API 密钥的自主代理提供按次计费或免费回退机制的场合。
- 希望自托管、保留闪电网络收入、不依赖第三方支付平台的开发者。
限制与注意事项:
- 该工具依赖 PowForge 的 captcha 服务或自托管实例。
- 付费层使用闪电网络,需要 LNbits 等闪电网络基础设施。
- 与 OAuth、API 密钥或 Stripe 不同,本方案面向无身份自主调用者,但可能不适用于需要传统身份认证的场景。
- 官方文档未提供关于价格、平台支持、效果指标的更多细节,部分信息暂未提供。