Webhook Capture MCP
Captures GitHub webhook requests, allowing inspection, waiting for, and replaying them for debugging.
Captures Make webhook callbacks, allowing inspection, waiting for, and replaying them for debugging.
Captures n8n webhook callbacks, allowing inspection, waiting for, and replaying them for debugging.
Captures Stripe webhook events, allowing inspection, waiting for, and replaying them for debugging.
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., "@Webhook Capture MCP wait for the next webhook and show me what it contains"
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.
webhook-capture-mcp
Let your AI assistant see your webhooks. A self-hosted MCP server that captures incoming webhook/HTTP requests and lets Claude, Cursor, or VS Code inspect, wait for, and replay them β so you can debug "why isn't my webhook working?" by having the AI read the actual payload.
You're wiring up a Stripe event, a GitHub webhook, an n8n/Make callback. Something fires, but you can't see what it sent. Instead of reaching for webhook.site and copy-pasting into chat, point the webhook here and ask your assistant: "what did that request contain?"
What it does
π£ Captures every incoming request (method, path, query, headers, raw + parsed JSON body)
π Inspects any captured request in full detail on demand
β³ Waits for the next request β "I'll wait, trigger your webhook now"
β»οΈ Replays a captured request to any URL (e.g. your local dev server)
π Self-hosted, zero infrastructure β runs on your machine via
npx, stores nothing in the cloud
Related MCP server: hookray-mcp
Install
Add it to your MCP host. It runs via npx β no separate install step.
Claude Desktop / Claude Code (claude_desktop_config.json or .mcp.json):
{
"mcpServers": {
"webhook-capture": {
"command": "npx",
"args": ["-y", "webhook-capture-mcp"],
"env": { "WEBHOOK_CAPTURE_PORT": "4444" }
}
}
}Cursor (~/.cursor/mcp.json) and VS Code (.vscode/mcp.json, Copilot agent mode) use
the same shape. Restart the host, and you'll see the webhook-capture tools.
Use it
Ask your assistant to run
capture_statusβ it prints the local capture URL (http://localhost:4444) and how to expose it.Point a webhook at it.
Local sender (your own app, curl): hit
http://localhost:4444/anythingdirectly.External sender (Stripe, GitHubβ¦): run a tunnel on your machine and use its public URL:
ngrok http 4444 # or: cloudflared tunnel --url http://localhost:4444Put the printed
https://β¦URL in your provider's webhook settings.
Ask: "wait for the next webhook and tell me what's in it" β the assistant calls
wait_for_request, you trigger the event, and it reads back the full payload.Ask: "replay that to my local server at http://localhost:3000/webhook" β
replay_request.
Tools
Tool | Description |
| Show the capture URL, count, and how to expose it via a tunnel |
| List captured requests (newest first); filter by method / path |
| Full detail of one request by id |
| Block until the next request arrives (or timeout) |
| Re-send a captured request to a target URL, return the response |
| Empty the store |
Configuration
Env var | Default | Description |
|
| Port the capture listener binds to |
|
| Bind address. Loopback by default (tunnels still reach it). Set to |
Notes & limits (v0.1)
In-memory only β keeps the last 100 requests; restarting clears them. (Persistence is planned.)
No auth on the capture endpoint. It binds to loopback by default. If you expose it via a tunnel, treat the tunnel URL as sensitive and shut it down when done.
Bodies are capped at 5 MB.
Run from source
git clone https://github.com/void-pulse/webhook-capture-mcp
cd webhook-capture-mcp
npm install && npm run build
node dist/index.js # speaks MCP over stdioLicense
MIT Β© Curtis Holmes
Available Tools
6 toolscapture_statusA
Show the local webhook capture URL, how many requests have been captured, and how to expose it to the internet.
Inputs: no named parameters.
clear_requestsA
Delete all captured requests from the store.
Inputs: no named parameters.
get_requestA
Get the full detail (method, path, query, headers, body) of one captured request by id.
Inputs: id (required).
list_requestsA
List captured requests (newest first). Optional filters by method, path substring, and count.
Inputs: limit, method, path_includes.
replay_requestA
Re-send a previously captured request (same method, headers, and body) to a target URL, and return the response.
Inputs: id (required), target_url (required).
wait_for_requestA
Block until the NEXT webhook arrives (or timeout). Use this to say 'I'll wait, trigger your webhook now' and then inspect what comes in.
Inputs: timeout_seconds.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelogβ¦
TDQS
Scored across 6 tools
Each tool targets a distinct aspect of webhook capture: status, listing, detail retrieval, waiting for new requests, replaying, and clearing. No two tools have overlapping purposes.
All tool names follow a consistent verb_noun snake_case pattern (capture_status, list_requests, get_request, wait_for_request, replay_request, clear_requests), making the set predictable and easy to navigate.
Six tools is a well-scoped count for a webhook capture server, covering essential operations without unnecessary bloat or gaps.
The set provides a complete lifecycle for captured requests: list, get, wait, replay, and clear. A minor gap is the lack of individual request deletion, but clear_requests covers bulk cleanup and the core workflow is fully supported.
Related MCP Connectors
Webhook, email, WebSocket and tunnel testing for AI agents: capture, wait, verify, replay.
Debug webhooks from your AI agent: inspect and replay captured webhooks on localhost.
Anonymous webhook capture, inspection, waiting, and response configuration for AI agents.
Instant no-signup webhook & HTTP-request inspector for testing webhooks and agent tool-callbacks.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables generating webhook endpoints for testing, inspecting and comparing HTTP request payloads, replaying requests from history, and forwarding requests to localhost.2MIT
- AlicenseAqualityDmaintenanceEnables AI agents to create disposable webhook URLs, capture incoming HTTP requests, inspect headers and bodies, and replay them against local or remote endpoints, streamlining the webhook handler development loop.510 npmMIT
- AlicenseNot gradedqualityCmaintenanceWebhook management and debugging. Validate signatures, log events, replay, and analyze webhook traffic.29 PyPIMIT

RequestBin MCP Serverofficial
AlicenseAqualityDmaintenanceEnables AI coding agents to create webhook bins, inspect and replay HTTP requests, and stand up mock API endpoints directly from the editor.135 npmMIT