内容
# @powforge/captcha-mcp
**按需为 AI 代理付费,无需账户。** PoW 解答 = 免费层。闪电支付 = 付费层。
OpenAI 的 Sora API 不允许您按需付费。Anthropic 的计费不适用于您的工具。如果您今天部署了一个 MCP 服务器,并且一个自主代理找到了它,您就需要支付费用。
这是入口。三个工具通过 stdio 或 HTTP。仅限标准库。
## 快速入门
```bash
npx -y @powforge/captcha-mcp
```
就这样。无需安装,无需配置,无需 API 密钥。服务器在 stdio 上启动并等待 MCP 客户端。
要将其连接到 Claude Code、Cursor 或任何兼容 MCP 的主机,请在您的配置中添加:
```json
{
"mcpServers": {
"powforge-captcha": {
"command": "npx",
"args": ["-y", "@powforge/captcha-mcp"]
}
}
}
```
或者运行 `npx @powforge/captcha-mcp --install` 以打印配置块。
## 功能
包装 PowForge pow-captcha 服务([captcha.powforge.dev](https://captcha.powforge.dev))为三个 MCP 工具:
| 工具 | 目的 |
|-------------|-------------------------------------------------------------------------|
| `challenge` | 请求一个新的工作量证明谜题。返回 `{id, salt, difficulty, signature}`。 |
| `verify` | 提交已解决的随机数。返回一个 5 分钟的 HMAC 签名访问令牌。 |
| `status` | 服务器健康状况、生命周期统计数据、L402 端点元数据。 |
免费层为代理提供约 5-10 秒的 CPU 时间(SHA-256,默认 14 个前导零位)。付费层通过 L402(RFC 7235 + bolt11 发票在 `WWW-Authenticate` 中)在闪电网络上花费 3 sats。
## 为什么选择这个而不是 OAuth、API 密钥或 Stripe
| 方法 | 按需成本 | 需要账户 | 自主部署 | 代理友好 |
|---------------------------|--------------------|------------------|-------------|----------------|
| API 密钥 | $0 | 是 | 不适用 | 否 |
| OAuth | $0 | 是 | 不适用 | 否 |
| Stripe 计量 | 高开销 | 是 | 不适用 | 否 |
| 受管 MCP 认证平台 | 100–2000 sats | 否 | 否 | 是 |
| **PoW + L402(此包)** | 秒或 3 sats | **否** | **是** | **是** |
代理没有电子邮件地址。它们不点击确认链接。它们不输入信用卡信息。PoW + 闪电网络是唯一适用于完全自主调用者的身份验证原语。
受管 MCP 认证平台有效,但它们在供应商基础设施上按调用收取 100–2000 sats — 您的收入通过他们的通道流动。此包在您的服务器、您的闪电网络节点、您的密钥上运行。您保留 sats。
## 配置
设置 `CAPTCHA_URL` 以指向不同的验证码后端。默认为 `http://localhost:3077`,以便您可以在本地运行整个堆栈进行开发。生产部署将其指向 `https://captcha.powforge.dev`。
```bash
CAPTCHA_URL=https://captcha.powforge.dev npx @powforge/captcha-mcp
```
## HTTP 流式传输
托管的 MCP 客户端(Smithery、基于浏览器的主机)需要 HTTP,而不是 stdio。传递 `--http` 或设置 `HTTP_MODE=1`:
```bash
HTTP_MODE=1 PORT=3200 npx @powforge/captcha-mcp
# 或
npx @powforge/captcha-mcp --http
```
服务器然后监听:
| 端点 | 方法 | 目的 |
|--------------|--------|--------------------------------------------------------------------------------|
| `/mcp` | POST | 单个 JSON-RPC 请求,单个 JSON-RPC 响应。通知返回 202。 |
| `/mcp` | GET | 服务器推送通知的 SSE 流(每 25 秒保持连接)。 |
| `/health` | GET | 存活探测 — 返回 `{ok, server, transport}`。不属于 MCP。 |
无状态。无会话 ID。CORS 开放(`Access-Control-Allow-Origin: *`),以便浏览器客户端工作。_stdio 模式保持不变,仍然是默认的 — `npx @powforge/captcha-mcp` 在没有标志的情况下仍然通过 stdin/stdout 进行 JSON-RPC 通信。
烟雾测试 HTTP 传输:
```bash
HTTP_MODE=1 PORT=3200 node src/server.js &
curl -X POST http://localhost:3200/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1"}}}'
```
返回 `{jsonrpc:"2.0", id:1, result:{protocolVersion:"2024-11-05", capabilities:{tools:{}}, serverInfo:{...}}}`。
## 本地开发
克隆 [验证码小部件仓库](https://www.npmjs.com/package/@powforge/captcha) 或运行公共服务。MCP 服务器只需要通过 HTTP 访问 `status` 下列出的验证码端点。
```bash
git clone https://github.com/zekebuilds-lab/captcha-mcp
cd captcha-mcp
node src/server.js
```
它将 `ready` 打印到 stderr 并等待 stdin 上的 JSON-RPC。
手动测试协议:
```bash
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1"}}}' | node src/server.js
```
您应该会看到一个包含 `serverInfo: { name: "@powforge/captcha-mcp", version: "0.1.0" }` 的 JSON 响应。
## 从您自己的后端验证令牌
当代理将令牌提交到您的服务时,无需信任代理即可验证它:
```bash
curl -X POST https://captcha.powforge.dev/api/token/verify \
-H "Content-Type: application/json" \
-d '{"token":"<token-from-verify-tool>"}'
```
返回 `{valid: true, method, issued_at, expires_at}` 或 `{valid: false, reason}`。
## 相关包
- [`@powforge/captcha`](https://www.npmjs.com/package/@powforge/captcha) — 适用于同一服务的浏览器小部件。
- [`@powforge/mcp-l402-gate`](https://www.npmjs.com/package/@powforge/mcp-l402-gate) — 使用 L402 + 深度身份评分保护任何 MCP 服务器的 Express 中间件。
- [`@powforge/mcp-identity`](https://www.npmjs.com/package/@powforge/mcp-identity) — 代理声誉预言机。与此网关配对以实现首次调用滥用保护。
## 与其他 MCP 代理身份验证原语的比较
与 `x402-mcp`、`@agentauth/mcp` 和 Cloudflare ARC/ACT 的并排比较已发布在 [powforge.dev/mcp/compare/x402-mcp](https://powforge.dev/mcp/compare/x402-mcp/)。简而言之:`captcha-mcp` 是唯一一个在 MCP 传输上提供免费 PoW 层和闪电网络付费跳过的入口。其他三个按调用收费(USDC)或需要平台颁发的凭证。
## 许可证
MIT