Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Descripción del creador (original en inglés)
Charge AI agents per-call without accounts. PoW solve = free tier, Lightning = paid tier.
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
CAPTCHA_URLNecesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"captcha": {
"command": "npx",
"args": [
"-y",
"@powforge/captcha-mcp"
],
"env": {
"CAPTCHA_URL": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add captcha --env CAPTCHA_URL=your-value -- npx -y @powforge/captcha-mcpCompleta los valores vacíos antes de ejecutarlo.
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"captcha": {
"command": "npx",
"args": [
"-y",
"@powforge/captcha-mcp"
],
"env": {
"CAPTCHA_URL": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"captcha": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@powforge/captcha-mcp"
],
"env": {
"CAPTCHA_URL": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
CAPTCHA_URL envEsta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 7 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub zekebuilds-lab, dueña del repo
Todavía no hemos leído este repo en GitHub
Todavía no hemos leído este repo en GitHub
Este se ejecuta en tu computadora; no hay endpoint en internet
Se ejecuta en tu computadora y usa ajustes locales en su lugar
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
El repo de GitHub cambió por última vez –, y la última versión (0.1.1) llegó al registro hace 6 meses.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Node.js en tu computadora.
En la misma categoría: Spec Driven Development, Remote Desktop Commander, NexusWindows
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Windows computer use in the background: desktop apps driven without your mouse or keyboard.
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
Your MCP server returns 429 when agents pound it. captcha-mcp makes them earn their next call instead. Hand the agent a proof-of-work puzzle (free, ~5s of CPU) or a 3-sat Lightning invoice — both are machine-readable backoff signals an autonomous caller can satisfy without an account, email, or API key.
Three tools over stdio or HTTP. Stdlib only. No signup, free fallback, self-hosted, no revenue share.
429 Too Many Requests is the wrong shape for the agent era. Three patterns recur across MCP server reports:
captcha-mcp replaces the 429 with a 402-style challenge. The next call costs the caller something (CPU seconds or 3 sats). That cost is per-caller, machine-readable, and self-throttling — an agent that cannot solve the puzzle cannot flood the endpoint.
npx -y @powforge/captcha-mcp
No install, no config, no API key. The server starts on stdio and waits for an MCP client.
To wire it into Claude Code, Cursor, or any MCP-compatible host, add to your config:
{
"mcpServers": { "powforge-captcha": { "command": "npx", "args": ["-y", "@powforge/captcha-mcp"] } } }
Or run npx @powforge/captcha-mcp --install to print the config block.
Wraps the PowForge pow-captcha service (captcha.powforge.dev) as three MCP tools:
| Tool | Purpose |
|---|---|
challenge | Request a fresh proof-of-work puzzle. Returns {id, salt, difficulty, signature}. |
verify | Submit a solved nonce. Returns a 5-minute HMAC-signed access token. |
status | Server health, lifetime stats, L402 endpoint metadata. |
The free tier costs the agent ~5-10 seconds of CPU time (SHA-256, default 14 leading zero bits). The paid tier costs 3 sats over Lightning via L402 (RFC 7235 + bolt11 invoice in WWW-Authenticate).
| Approach | Per-call cost | Account required | Self-hosted | Agent-friendly |
|---|---|---|---|---|
| API keys | $0 | yes | n/a | no |
| OAuth | $0 | yes | n/a | no |
| Stripe metering | high overhead | yes | n/a | no |
| Managed MCP auth platform | 100–2000 sats | no | no | yes |
| PoW + L402 (this) | seconds or 3 sats | no | yes | yes |
Agents do not have email addresses. They do not click confirmation links. They do not enter credit cards. PoW + Lightning is the only auth primitive that works for fully autonomous callers.
Managed MCP auth platforms work, but they charge 100–2000 sats per call on vendor infrastructure — your revenue flows through their rails. This package runs on your server, your Lightning node, your keys. You keep the sats.
Set CAPTCHA_URL to point at a different captcha backend. Default is http://localhost:3077 so you can run the full stack locally for development. Production deployments point it at https://captcha.powforge.dev.
CAPTCHA_URL=https://captcha.powforge.dev npx @powforge/captcha-mcp
Hosted MCP clients (Smithery, browser-based hosts) need HTTP, not stdio. Pass --http or set HTTP_MODE=1:
HTTP_MODE=1 PORT=3200 npx @powforge/captcha-mcp
npx @powforge/captcha-mcp --http
The server then listens on:
| Endpoint | Method | Purpose |
|---|---|---|
/mcp | POST | Single JSON-RPC request, single JSON-RPC response. Notifications return 202. |
/mcp | GET | SSE stream for server-pushed notifications (kept open with a 25s heartbeat). |
/health | GET | Liveness probe — returns {ok, server, transport}. Not part of MCP. |
Stateless. No session ids. CORS open (Access-Control-Allow-Origin: *) so browser clients work. Stdio mode is unchanged and remains the default — npx @powforge/captcha-mcp with no flag still talks JSON-RPC over stdin/stdout.
Smoke test the HTTP transport:
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"}}}'
Returns {jsonrpc:"2.0", id:1, result:{protocolVersion:"2024-11-05", capabilities:{tools:{}}, serverInfo:{...}}}.
Clone the captcha widget repo or run the public service. The MCP server only needs HTTP access to the captcha endpoints listed under status.
git clone https://github.com/zekebuilds-lab/captcha-mcp
cd captcha-mcp node src/server.js
It prints ready to stderr and waits for JSON-RPC on stdin.
Smoke-test the protocol manually:
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1"}}}' | node src/server.js
You should see a JSON response with serverInfo: { name: "@powforge/captcha-mcp", version: "0.2.5" }.
When an agent submits a token to your service, verify it without trusting the agent:
curl -X POST https://captcha.powforge.dev/api/token/verify \
-H "Content-Type: application/json" \ -d '{"token":" "}'
Returns {valid: true, method, issued_at, expires_at} or {valid: false, reason}.
@powforge/captcha — the browser widget for the same service.@powforge/mcp-l402-gate — Express middleware to gate any MCP server with L402 + Depth-of-Identity scoring.@powforge/mcp-identity — agent reputation oracle. Pair with this gate for first-call abuse protection.The gate-the-MCP-server space is filling up. Here is the honest landscape, ranked by how directly each tool overlaps with what captcha-mcp does.
| Tool | Payment rail | Auth model | Self-host | Free PoW tier | No account to pay |
|---|---|---|---|---|---|
| PayGated | Stripe credits | API key + OAuth 2.1 + PKCE + M2M | yes (MIT) | no | no (Stripe customer record per caller) |
| APort | none disclosed | W3C verifiable creds, pre-tool hook | design-partner | no | n/a (audits, does not charge) |
| AgentSign | none disclosed | Ed25519 signed passport + trust gate | unknown | no | n/a |
| x402-mcp | USDC on-chain | wallet signature | yes | no | no (needs funded wallet) |
| Managed MCP auth (Auth0 for AI, MintMCP) | SaaS | OAuth 2.0 / SAML / SSO | no | no | no |
| captcha-mcp (this) | Lightning (L402) | PoW gate + L402 skip + free-tier | yes | yes | yes |
PayGated is the closest collision. Same "monetize MCP tools per call" pitch, same self-host + open-source posture, but it settles on Stripe. That means you need a Stripe account in good standing (KYC, a bank, a supported country) to collect, and every caller needs a Stripe customer record before it can pay you a cent. captcha-mcp's differentiator is the no-account path: a non-US agent author pays 3 sats per call in about 200ms with no KYC, or solves a free PoW puzzle if it will not pay at all.
APort and AgentSign sit at a different layer. They record who used a tool under what authority; they do not price the call. They compose with a gate like this one rather than replace it.
None of them price the act of interacting. Every other row assumes the caller is already an authorized identity and meters or audits after that. The PoW tier here is the only mechanism in the table that puts a cost on the interaction itself, not on the identity of the actor. That is the position this package defends.
A longer breakdown against x402-mcp, @agentauth/mcp, and Cloudflare ARC/ACT is at powforge.dev/mcp/compare/x402-mcp.
MIT