Skip to main content
Glama
elsba3ei

elsba3ei Webhook MCP Server

by elsba3ei

🤖 elsba3ei Webhook MCP Server

Python FastMCP Docker

Высокопроизводительная локальная и публичная альтернатива Webhook Inspector и Burp Suite Collaborator для тестирования SSRF, API и внеполосных (OOB) взаимодействий с поддержкой Cloudflare Quick Tunnel, динамических mock-ответов, захвата запросов в реальном времени и опроса колбэков для ИИ-агентов программирования.


⚡ Обзор и возможности

Сервер elsba3ei-webhook-mcp позволяет Claude Desktop, Antigravity и ИИ-агентам:

  • Мгновенно поднимать локальные (http://127.0.0.1:4040/capture) и публичные Cloudflare Quick Tunnels (https://*.trycloudflare.com/capture) без необходимости аккаунта.

  • Инспектировать входящие HTTP/HTTPS-запросы (метод, заголовки, query-параметры, IP клиента, JSON, данные форм, необработанный текст или шестнадцатеричный дамп бинарных данных).

  • Динамически формировать mock-ответы с произвольными кодами статуса, content-types, заголовками и имитируемой задержкой ответа.

  • Опрашивать и блокировать ожидание внеполосных SSRF/вебхук-колбэков (wait_for_request).

  • Воспроизводить и формировать произвольные HTTP-запросы (replay_request).


Related MCP server: pipepie

🛠️ Справочник доступных MCP-инструментов

#

Tool Name

Parameters

Description

1

get_webhook_urls

_dummy=""

Возвращает все доступные URL захвата: localhost, LAN и публичные Cloudflare.

2

start_tunnel

port="4040"

Запускает временный Cloudflare Quick Tunnel для публичного доступа к порту 4040.

3

stop_tunnel

_dummy=""

Завершает подпроцесс Cloudflare-туннеля.

4

get_tunnel_status

_dummy=""

Возвращает активный URL туннеля, статус и время работы.

5

list_requests

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

Выводит сводку захваченных запросов с метаданными.

6

get_request_details

request_id="<uuid>"

Получает полные заголовки, разобранное/необработанное тело и IP клиента для ID запроса.

7

wait_for_request

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

Опрашивает, пока входящий запрос не совпадёт по пути, методу или телу в пределах таймаута.

8

configure_mock_response

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

Задаёт динамический HTTP-статус, content-type, тело, задержку и пользовательские заголовки.

9

reset_mock_response

_dummy=""

Сбрасывает mock-движок к стандартному ответу 200 OK JSON.

10

clear_requests

_dummy=""

Очищает кольцевой буфер захваченных запросов в памяти.

11

delete_request

request_id="<uuid>"

Удаляет одну запись запроса по ID.

12

replay_request

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

Отправляет HTTP-запрос на любой целевой URL и захватывает ответ.

13

get_server_status

_dummy=""

Возвращает состояние сервера, активный порт, время работы и количество захваченных запросов.


🚀 Быстрый старт (Windows PowerShell)

  1. Откройте PowerShell и перейдите в этот каталог:

    cd G:\Playing\elsba3ei-webhook-mcp
  2. Запустите автоматический скрипт настройки:

    .\setup.ps1
  3. Полностью перезапустите Claude Desktop (выйдите из системного трея, затем откройте заново).

  4. Начните новый разговор в Claude, чтобы загрузить новые инструменты.


🐳 Установка Docker и MCP

Шаг 1: Соберите Docker-образ

docker build -t elsba3ei-webhook:latest .

Шаг 2: Добавьте в профиль Docker MCP (Docker Desktop 4.40+)

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

Шаг 3: Подключитесь к Claude Desktop

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

Шаг 4: Проверьте зарегистрированный профиль и инструменты

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

⚙️ Настройка Claude Desktop вручную

Расположение файла конфигурации: %APPDATA%\Claude\claude_desktop_config.json

Режим прямого запуска Python (рекомендуется)

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

Режим Docker-контейнера

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

🔧 Таблица устранения неполадок

Симптом

Причина

Исправление

docker mcp catalog import not recognized

Команда удалена в Docker Desktop 4.40+

Вместо неё используйте docker mcp profile server add default --server file://...

docker mcp server enable not recognized

Команда удалена в Docker Desktop 4.40+

Заменена на docker mcp profile server add

docker mcp client connect fails: missing flag

--profile теперь обязателен

Используйте docker mcp client connect claude-desktop --global --profile default

Инструменты не появляются в Claude

Процесс использует неправильный Docker-контекст

Добавьте --context desktop-linux к аргументам docker run

«gateway panic» / Инструменты исчезают

Многострочная docstring инструмента

Держите ВСЕ docstring для @mcp.tool() ровно в одну строку

Конфликт портов 4000/4040

Порт уже занят

Задайте WEBHOOK_PORT=4041 в переменных окружения

Инструмент показывает «not loaded yet»

Кэш от предыдущей сессии

Перезапустите Claude Desktop и начните новый разговор


👨💻 Автор и разработчик

Разработано с ❤️ Ahmed E. El-Sbaei


📄 Лицензия

Распространяется под лицензией MIT License — © 2026 elsba3ei.

Related MCP Connectors

Related MCP Servers