关于 webhook
为 AI Agent 提供 Webhook 管理与测试工具的 MCP 服务,支持发送请求、校验签名、生成测试载荷、诊断请求及计算重试计划。
主要功能
- 01发送带自定义请求头和正文的 Webhook
- 02验证 Stripe、GitHub 和 Slack 签名
- 03生成指定服务事件的测试载荷
- 04分析请求并检查签名、时间戳和正文
- 05计算带退避和抖动的重试计划
适用场景
- 01向目标 URL 发送 Webhook 并查看请求结果
- 02验证来自 Stripe、GitHub 或 Slack 的签名
- 03生成测试事件载荷以调试接收端
- 04检查请求问题并规划失败后的重试
MCP 相关
作为 MCP 服务,向 MCP 客户端暴露 Webhook 发送、签名验证、载荷生成、请求诊断和重试计划工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
5收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| url | string | 是 | 接收 webhook 的目标 URL |
| body | string | 是 | 请求正文(通常为 JSON 字符串) |
| method | enum | 否 | HTTP 方法(默认值:POST)GET | POST | PUT | PATCH | DELETE |
| headers | object | 否 | 以键值对形式指定的自定义 HTTP 标头 |
| timeout_ms | number | 否 | 请求超时时间,单位为毫秒(默认值:10000) |
| max_retries | number | 否 | 失败时的最大重试次数(默认值:0) |
| content_type | string | 否 | Content-Type 标头(默认值:application/json) |
| base_delay_ms | number | 否 | 重试间隔的基础延迟(毫秒,默认值:1000) |
详细介绍
mcp-webhook-tools
基于 Model Context Protocol 构建的 Webhook 管理和测试工具,供 AI Agent 使用。
工具
webhook_send
向任意 URL 发送 Webhook 负载,并支持自定义标头、正文和内容类型。支持通过指数退避和抖动自动重试。返回详细的尝试记录,包括状态码、耗时和错误。
webhook_validate
使用 HMAC-SHA256 或 HMAC-SHA1 验证 Webhook 签名。内置以下模式:
- Stripe —
t=TIMESTAMP,v1=SIGNATURE格式,并支持时间戳容差 - GitHub —
sha256=SIGNATURE或sha1=SIGNATURE格式 - Slack — 使用
v0=SIGNATURE格式和v0:timestamp:body签名方案
使用时间安全比较来防止时序攻击。
webhook_generate_payload
生成逼真的 Webhook 负载用于测试。支持的事件:
| 服务 | 事件 |
|---|---|
| Stripe | payment_intent.succeeded |
| GitHub | push、pull_request |
| Slack | message |
每个负载都包含随机 ID、当前时间戳和建议的标头。使用 overrides 参数自定义特定字段。
webhook_debug
端到端分析 Webhook 请求:
- 解析并分类标头(content-type、签名、时间戳、投递 ID、自定义标头)
- 验证请求正文(大小、JSON 有效性、编码)
- 自动检测提供方(Stripe、GitHub、Slack)
- 如果提供了密钥,则验证签名
- 检查时间戳是否足够新(默认阈值为 300s)
- 报告发现的所有问题
webhook_retry_schedule
使用指数退避计算重试计划。显示每次尝试的延迟时间、累计耗时和计划的 ISO 时间戳。可配置基础延迟、最大延迟上限、乘数和抖动。
设置
npm install
npm run build
MCP 配置
添加到 MCP 客户端配置中:
{
"mcpServers": {
"webhook-tools": {
"command": "node",
"args": ["path/to/mcp-webhook-tools/dist/index.js"]
}
}
}
许可证
MIT
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。