base-http402-extractor
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@base-http402-extractorExtract clean markdown from https://example.com/article"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Autonomous HTTP 402 Micro-API (Base L2)
Agente de micro-API autónomo monetizado mediante el protocolo HTTP 402 (Payment Required) en la red Base L2, orientado al ecosistema de agentes de IA y desarrolladores (B2A).
🎯 Resumen y Parámetros Operativos
Meta Financiera: Acumular $300.00 USDC netos en la billetera de control.
Modelo Económico: Micropago directo de $0.05 USDC por extracción limpia de contenido web (6,000 llamadas para alcanzar la meta).
Red: Base Mainnet (Chain ID
8453)RPC Primario:
https://mainnet.base.orgContrato USDC Nativo:
0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913(6 decimales)Dirección Pública del Agente:
0x2231b680679FC790B5E676b0d566EF2EE4612414Nivel de Autonomía: 100% desatendido, Cero KYC, Cero custodia humana. Identidad criptográfica
secp256k1generada localmente conviem.
Related MCP server: pontage
🚀 Arquitectura y Capacidades
Middleware HTTP 402 (
src/middleware/payment402.ts):Intercepta solicitudes entrantes y exige la cabecera
X-Payment-Tx-Hash.Si no se provee pago, responde con código 402 y el payload exacto de instrucciones (monto, token, receptor, cadena).
Valida en tiempo real con Viem que la transacción esté confirmada en Base L2, dirigida al agente y por el monto estipulado.
Prevención de Replay Attack (Doble Gasto): Cada hash procesado se registra de forma persistente e inmutable en
data/replay_store.json. Reintentos con el mismo hash devuelven 409 Conflict.
Servicio B2A: Clean Web-to-Markdown LLM Context Extractor (
src/services/extractor.ts):Descarga cualquier URL web, elimina el ruido DOM (scripts, estilos, anuncios, barras de navegación, cookies, modales).
Devuelve Markdown semántico optimizado con estimación de tokens para ventanas de contexto de LLMs.
Dualidad de Consumo:
API REST (Hono):
GET /: Overview, estado y URL pública configurada.GET /openapi.json: Especificación OpenAPI 3.0.3 sincronizada conPUBLIC_URL.GET /api/v1/pricing: Tarifas y datos de recepción.GET /api/v1/stats: Estado de ingresos y llamadas procesadas.POST /api/v1/extract: Extractor protegido por HTTP 402.
Servidor MCP (
src/mcp/server.ts):Integración directa para Cursor, Claude Desktop y orquestadores con las herramientas
get_payment_infoyextract_clean_markdown.
Vigilancia Financiera y Progreso (
src/monitor/balanceMonitor.ts):Monitorea el balance de USDC en Base L2 y actualiza
progress.json.Emite informe de éxito al alcanzar los $300.00 USDC sin interrumpir el servicio.
🤖 Conexión como Servidor MCP (Claude Desktop & Smithery.ai)
⚡ Integración Instantánea con NPX (Recomendado)
Puedes ejecutar el servidor MCP directamente con npx sin necesidad de clonar el repositorio:
Añade este bloque en tu archivo claude_desktop_config.json:
{
"mcpServers": {
"base-http402-extractor": {
"command": "npx",
"args": ["-y", "base-http402-extractor-api"]
}
}
}🔮 Instalación Automática con Smithery.ai
El servidor se encuentra indexado en el registro descentralizado de Smithery.ai:
# Para Claude Desktop:
npx -y @smithery/cli install base-http402-extractor-api --client claude
# Para Cursor:
npx -y @smithery/cli install base-http402-extractor-api --client cursor💻 Conexión Local Manual en Claude Desktop
Si clonas el repositorio localmente, edita tu archivo de configuración claude_desktop_config.json:
Ubicación del archivo de configuración:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json(Ejemplo:C:\Users\<Usuario>\AppData\Roaming\Claude\claude_desktop_config.json)
Fragmento de configuración manual:
{
"mcpServers": {
"http-402-llm-extractor": {
"command": "node",
"args": [
"dist/mcp/server.js"
],
"env": {
"BASE_RPC_URL": "https://mainnet.base.org",
"BASE_CHAIN_ID": "8453",
"USDC_CONTRACT_ADDRESS": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"AGENT_PUBLIC_ADDRESS": "0x2231b680679FC790B5E676b0d566EF2EE4612414",
"SERVICE_PRICE_USDC": "0.05"
}
}
}
}Herramientas MCP Disponibles:
get_payment_info: Retorna el precio ($0.05 USDC), la dirección del receptor (0x2231b680679FC790B5E676b0d566EF2EE4612414) y la red (Base L2).extract_clean_markdown: RecibeurlypaymentTxHash. Verifica on-chain la transferencia y devuelve el contenido Markdown limpio.
☁️ Despliegue Serverless 24/7 en Cloudflare Workers
Para mantener el servicio activo 24/7 sin depender de tu máquina local ni de túneles temporales, el proyecto incluye soporte nativo para Cloudflare Workers con runtime Edge de ultrabaja latencia:
# 1. Instalar Wrangler (si no está global) y autenticar
npx wrangler login
# 2. Desplegar el Worker a Cloudflare Edge
npm run deployEl archivo wrangler.jsonc ya incluye:
Entrypoint serverless:
src/worker.tsCompatibilidad
nodejs_compatVariables de entorno para Base Mainnet y contrato USDC
🛠️ Guía Rápida de Comandos
# Generar o recargar identidad EVM en .env
npm run generate-wallet
# Ejecutar suite de pruebas de determinismo local
npm test
# Ejecutar simulador de cliente (flujo completo HTTP 402)
npm run test:client
# Compilar TypeScript
npm run build
# Iniciar servidor HTTP en vivo (puerto 3000)
npm start
# Servidor MCP (Stdio para Claude Desktop / Cursor)
npm run mcp
# Consultar progreso y balance en Base L2 (auditoría puntual)
npm run monitor -- --once
# Iniciar monitor de balance continuo (cada 15 minutos en segundo plano)
npm run monitor
# Publicar fichas y registros de herramientas B2A
npm run register
# Desplegar en Cloudflare Workers 24/7
npm run deploy📡 Ejemplo de Consumo vía cURL
1. Consulta inicial (Devuelve 402 Payment Required):
curl -i -X POST https://toward-asking-programs-focal.trycloudflare.com/api/v1/extract \
-H "Content-Type: application/json" \
-d '{"url": "https://en.wikipedia.org/wiki/Artificial_intelligence"}'Respuesta HTTP 402:
{
"error": "Payment Required",
"network": "Base",
"chainId": 8453,
"token": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"recipient": "0x2231b680679FC790B5E676b0d566EF2EE4612414",
"priceUsdc": 0.05,
"decimals": 6,
"amountUnits": "50000",
"instructions": "Send at least 0.05 USDC on Base L2 to 0x2231b680679FC790B5E676b0d566EF2EE4612414 and include transaction hash in 'X-Payment-Tx-Hash' header."
}2. Consulta con Pago Confirmado en Base L2:
curl -i -X POST https://toward-asking-programs-focal.trycloudflare.com/api/v1/extract \
-H "Content-Type: application/json" \
-H "X-Payment-Tx-Hash: 0xTRANSACTION_HASH_CONFIRMED_ON_BASE" \
-d '{"url": "https://en.wikipedia.org/wiki/Artificial_intelligence"}'Responde 200 OK con el Markdown estructurado listo para inyectar en el contexto del LLM.
This server cannot be deployed
Maintenance
Related MCP Connectors
Pay-per-use web extract, token prices, and wallet balances via x402 USDC micropayments.
Production-grade MCP gateway delivering 8 real-time AI tools with instant x402 micropayments settled in USDC on Base Mainnet or SPL-USDC on Solana. Features Basescan contract auditing, wallet analytics, headless browser scraping, and pre-scraped oracle data feeds.
Production-grade MCP gateway delivering 8 real-time AI tools with instant x402 micropayments settled in USDC on Base Mainnet or SPL-USDC on Solana. Features Basescan contract auditing, wallet analytics, headless browser scraping, and pre-scraped oracle data feeds.
Pay-per-request webpage-to-Markdown extraction for AI agents. $0.005 USDC via x402 on Solana.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables extracting clean Markdown from any webpage by paying $0.005 USDC per call via the x402 protocol, with automatic wallet-based payment settlement.6 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables MCP tools to be gated behind per-call USDC micropayments with direct on-chain verification and settlement, removing the need for third-party payment facilitators.MIT
- AlicenseNot gradedqualityCmaintenanceEnables web content extraction, reading, crawling, and pricing via MCP tools, with pay-per-fetch in USDC on Base using x402.3 npmMIT
- AlicenseNot gradedqualityCmaintenanceMCP server for converting HTML to Markdown and extracting page data, with pay-per-call using USDC on Base.MIT