Skip to main content
Glama
elsba3ei

elsba3ei Webhook MCP Server

by elsba3ei

🤖 elsba3ei Webhook MCP Server

Python FastMCP Docker

高性能本地与公共 Webhook 检查器,是 Burp Suite Collaborator 的替代方案,用于测试 SSRF、API 和带外(OOB)交互,支持 Cloudflare Quick Tunnel、动态模拟响应、实时请求捕获,以及面向 AI 编码代理的回调轮询。


⚡ 概述与功能

elsba3ei-webhook-mcp 服务器可让 Claude Desktop、Antigravity 和 AI 代理:

  • 无需账户即可立即启动本地(http://127.0.0.1:4040/capture)和公共 Cloudflare Quick Tunnels(https://*.trycloudflare.com/capture)。

  • 检查传入的 HTTP/HTTPS 请求(方法、标头、查询字符串、客户端 IP、JSON、表单数据、原始文本或二进制十六进制转储)。

  • 使用自定义状态码、content-type、标头和模拟响应延迟来动态模拟响应。

  • 轮询并阻塞式等待带外 SSRF / webhook 回调(wait_for_request)。

  • 重放并伪造自定义 HTTP 请求(replay_request)。


Related MCP server: pipepie

🛠️ 可用 MCP 工具参考

#

工具名称

参数

描述

1

get_webhook_urls

_dummy=""

返回所有可用的 localhost、LAN 和公共 Cloudflare 捕获 URL。

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>"

获取指定请求 ID 的完整标头、解析后/原始正文以及客户端 IP。

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=""

将模拟引擎重置回默认的 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"

向任意目标 URL 发送 HTTP 请求并捕获响应。

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 上下文

在 docker run 参数中添加 --context desktop-linux

出现 "gateway panic" / 工具消失

工具 docstring 包含多行

将所有 @mcp.tool() docstring 保持为恰好一行

4000/4040 端口冲突

端口已被占用

在环境中设置 WEBHOOK_PORT=4041

工具显示 "not loaded yet"

上次会话留下的缓存

重启 Claude Desktop 并开始一个新对话


👨💻 作者与开发者

由 Ahmed E. El-Sbaei 满怀 ❤️ 开发


📄 许可证

根据 MIT License 分发 — © 2026 elsba3ei。

Related MCP Connectors

Related MCP Servers