Skip to main content
Glama
elsba3ei

elsba3ei Webhook MCP Server

by elsba3ei

🤖 elsba3ei Webhook MCP Server

Python FastMCP Docker

Alternativa de alto rendimiento a inspector de webhooks local y público y a Burp Suite Collaborator para probar interacciones SSRF, APIs y fuera de banda (OOB) con soporte de Cloudflare Quick Tunnel, respuestas simuladas dinámicas, captura de solicitudes en vivo y sondeo de callbacks para agentes de codificación de IA.


⚡ Descripción general y capacidades

El servidor elsba3ei-webhook-mcp permite a Claude Desktop, Antigravity y agentes de IA:

  • Crear al instante túneles locales (http://127.0.0.1:4040/capture) y públicos de Cloudflare Quick Tunnels (https://*.trycloudflare.com/capture) sin necesidad de cuenta.

  • Inspeccionar solicitudes HTTP/HTTPS entrantes (método, cabeceras, consulta, IP del cliente, JSON, datos de formulario, texto sin formato o volcado hexadecimal binario).

  • Simular respuestas dinámicamente con códigos de estado personalizados, tipos de contenido, cabeceras y latencia de respuesta simulada.

  • Sondear y bloquear esperando callbacks SSRF / webhook fuera de banda (wait_for_request).

  • Reproducir y forjar solicitudes HTTP personalizadas (replay_request).


Related MCP server: pipepie

🛠️ Referencia de herramientas MCP disponibles

#

Nombre de la herramienta

Parámetros

Descripción

1

get_webhook_urls

_dummy=""

Devuelve todas las URLs de captura locales (localhost), LAN y públicas de Cloudflare disponibles.

2

start_tunnel

port="4040"

Lanza un túnel temporal de Cloudflare Quick Tunnel para exponer el puerto 4040 públicamente.

3

stop_tunnel

_dummy=""

Termina el subproceso del túnel de Cloudflare.

4

get_tunnel_status

_dummy=""

Devuelve la URL del túnel activo, su estado y el tiempo de actividad.

5

list_requests

limit="20", method="", path_filter=""

Resume las solicitudes capturadas con metadatos.

6

get_request_details

request_id="<uuid>"

Obtiene las cabeceras completas, el cuerpo analizado/sin procesar y la IP del cliente de un ID de solicitud.

7

wait_for_request

timeout_seconds="30", path_contains="", method="", body_contains=""

Sondea hasta que una solicitud entrante coincida con la ruta, el método o el cuerpo dentro de un tiempo de espera.

8

configure_mock_response

status_code="200", content_type="application/json", response_body="{...}", delay_ms="0", custom_headers_json="{}"

Configura el estado HTTP dinámico, el tipo de contenido, el cuerpo, el retardo y las cabeceras personalizadas.

9

reset_mock_response

_dummy=""

Restablece el motor de simulación al JSON 200 OK predeterminado.

10

clear_requests

_dummy=""

Elimina el búfer circular en memoria de las solicitudes capturadas.

11

delete_request

request_id="<uuid>"

Elimina un único registro de solicitud por ID.

12

replay_request

target_url, method="GET", headers_json="{}", body="", timeout_seconds="10"

Envía una solicitud HTTP a cualquier URL de destino y captura la respuesta.

13

get_server_status

_dummy=""

Devuelve el estado del servidor, el puerto activo, el tiempo de actividad y los contadores de solicitudes capturadas.


🚀 Configuración de inicio rápido (Windows PowerShell)

  1. Abre PowerShell y navega hasta este directorio:

    cd G:\Playing\elsba3ei-webhook-mcp
  2. Ejecuta el script de configuración automatizado:

    .\setup.ps1
  3. Reinicia Claude Desktop por completo (sal desde la bandeja del sistema y vuelve a abrirlo).

  4. Inicia una nueva conversación en Claude para cargar las nuevas herramientas.


🐳 Instalación de Docker y MCP

Paso 1: Construir la imagen de Docker

docker build -t elsba3ei-webhook:latest .

Paso 2: Añadir al perfil MCP de Docker (Docker Desktop 4.40+)

docker mcp profile server add default --server file:///G:/Playing/elsba3ei-webhook-mcp/elsba3ei-webhook-catalog.yaml

Paso 3: Conectar con Claude Desktop

docker mcp client connect claude-desktop --global --profile default

Paso 4: Verificar el perfil y las herramientas registrados

docker mcp profile server ls
docker mcp tools ls | Select-String "elsba3ei"

⚙️ Configurar Claude Desktop manualmente

Ubicación del archivo de configuración: %APPDATA%\Claude\claude_desktop_config.json

Modo de ejecución directa de Python (recomendado)

{
  "mcpServers": {
    "elsba3ei-webhook": {
      "command": "G:\\Playing\\elsba3ei-webhook-mcp\\.venv\\Scripts\\python.exe",
      "args": ["G:\\Playing\\elsba3ei-webhook-mcp\\elsba3ei_webhook_server.py"]
    }
  }
}

Modo contenedor Docker

{
  "mcpServers": {
    "elsba3ei-webhook": {
      "command": "docker",
      "args": [
        "--context",
        "desktop-linux",
        "run",
        "-i",
        "--rm",
        "-p",
        "4040:4040",
        "elsba3ei-webhook:latest"
      ]
    }
  }
}

🔧 Matriz de resolución de problemas

Síntoma

Causa raíz

Solución

docker mcp catalog import not recognized

Comando eliminado en Docker Desktop 4.40+

Usa docker mcp profile server add default --server file://... en su lugar

docker mcp server enable not recognized

Comando eliminado en Docker Desktop 4.40+

Reemplazado por docker mcp profile server add

docker mcp client connect fails: missing flag

--profile ahora es obligatorio

Usa docker mcp client connect claude-desktop --global --profile default

Las herramientas no aparecen en Claude

El proceso usa un contexto de Docker incorrecto

Añade --context desktop-linux a los argumentos de docker run

"gateway panic" / Las herramientas desaparecen

Docstring de herramienta multilínea

Mantén TODOS los docstrings de @mcp.tool() en exactamente una línea

Conflicto de puerto en 4000/4040

El puerto ya está ocupado

Establece WEBHOOK_PORT=4041 en el entorno

La herramienta muestra "not loaded yet"

Caché de la sesión anterior

Reinicia Claude Desktop e inicia una nueva conversación


👨💻 Autor y desarrollador

Desarrollado con ❤️ por Ahmed E. El-Sbaei


📄 Licencia

Distribuido bajo la Licencia MIT — © 2026 elsba3ei.

Related MCP Connectors

Related MCP Servers