
Security News
Cloudflare Introduces a Faster TypeScript Compiler Written in Rust
Cloudflare introduces tsrs, a Rust port of TypeScript’s compiler promising faster checks and lower memory use, with the TypeScript team’s help.
@webhooks-cc/mcp
Advanced tools
MCP server for webhooks.cc — AI agent integration for webhook testing
MCP server for webhooks.cc. It gives coding agents direct access to webhook testing workflows: create endpoints, send signed test webhooks, inspect captures, compare attempts, verify signatures, and read recent webhook context through MCP resources.
It works with Claude Code, Cursor, VS Code, Codex, Windsurf, and Claude Desktop.
The server reads WHK_API_KEY from the environment. It also supports:
WHK_BASE_URL for a custom API base URLWHK_WEBHOOK_URL for a custom receiver base URL# Claude Code
claude mcp add -s user --transport stdio webhooks-cc -e WHK_API_KEY=whcc_... -- npx -y @webhooks-cc/mcp
# OpenAI Codex
codex mcp add webhooks-cc -e WHK_API_KEY=whcc_... -- npx -y @webhooks-cc/mcp
# Cursor
npx @webhooks-cc/mcp setup cursor --api-key whcc_...
# VS Code
npx @webhooks-cc/mcp setup vscode --api-key whcc_...
# Windsurf
npx @webhooks-cc/mcp setup windsurf --api-key whcc_...
# Claude Desktop
npx @webhooks-cc/mcp setup claude-desktop --api-key whcc_...
{
"mcpServers": {
"webhooks-cc": {
"command": "npx",
"args": ["-y", "@webhooks-cc/mcp"],
"env": {
"WHK_API_KEY": "whcc_..."
}
}
}
}
Get your API key at webhooks.cc/account.
The server exposes 38 tools, 3 prompts, and 3 resource surfaces with an API key, and 10 sandbox tools without one.
create_endpointlist_endpointsget_endpointupdate_endpointdelete_endpointcreate_endpointsdelete_endpointslist_requestssearch_requestscount_requestsget_requestwait_for_requestwait_for_requestsreplay_requestcompare_requestsextract_from_requestverify_signatureclear_requestsEvery endpoint on an account receives email at {slug}@mailhooks.cc (and {slug}+{tag}@mailhooks.cc). These tools read it, with the one-time code and main link already picked out, unless the endpoint's owner turned that off:
list_emailsget_emailwait_for_emailsend_test_emailThe request tools and resources return emails too (filter with kind), without the raw message or the HTML part and with the text cut at 8,000 characters; get_email returns the HTML.
Forward every captured HTTP request and email to a URL or a Slack or Discord channel, as received, as signed JSON or as a chat message, retried and logged (owner only):
configure_forwarding (URL, on/off, kinds, format, your headers, path, retries, order, sent time field)get_forwarding_secret (returns the whsec_ secret; with rotate: true, replaces it)test_forwardinglist_deliveries (the delivery log with its counts, or every try of one request)redeliver (one request, or every failed delivery of an endpoint)send_webhooksend_topreview_webhooktest_webhook_flowlist_teamslist_team_membersshare_endpointunshare_endpointEndpoints shared with you already appear in list_endpoints (with fromTeam) and work with every request tool except clear_requests, which stays with the owner. Invites are not exposed: accepting one claims a paid seat.
list_provider_templatesget_usage (personal plan plus each subscribed team's pool)describeStarted without WHK_API_KEY, the server registers sandbox tools instead (auth.md):
create_endpoint, list_endpoints, get_endpoint, delete_endpoint, list_requests, get_request, wait_for_request: the same names and arguments as the full tools, in a sandbox of up to 3 endpoints, 25 captured requests each and 100 in all, for 24 hours. The first create_endpoint registers it (a few seconds of proof of work).connect_account: returns a link and a 6-digit code for a human to connect the agent to their account.wait_for_connection: waits for the human, then replaces the sandbox tools with the full tools for that account (notifications/tools/list_changed).about_sandbox: the limits and how to connect, without a network call.The server exposes MCP prompts for common workflows:
debug_webhook_deliverysetup_provider_testingcompare_webhook_attemptsThese prompts do not execute anything on their own. They give the client a structured starting point for multi-step agent work.
The server exposes MCP resources for recent webhook context:
webhooks://endpointswebhooks://endpoint/{slug}/recentwebhooks://request/{id}These are useful when the client supports resource browsing or prompt/resource attachment.
Provider template and signing support includes:
stripegithubshopifytwilioslackpaddlelinearsendgridclerkdiscordvercelgitlabtypeformstandard-webhooksmetalemonsqueezycoinbase-commercerazorpaycalintercomtelegramsquarehubspotmailguncalendlymuxsentrybitbucketdocusignadyenpaypalplaidresendworkosSignature verification also supports:
sendgrid (IP allowlisting) and plaid (JWT/JWK verification requires Plaid API credentials)Use list_provider_templates to inspect templates, default events, signature headers, and signing requirements from the agent.
Typical agent flows:
test_webhook_flow to create, send, capture, verify, replay, and clean up in one tool callThe package also exports createServer(), registerTools(), registerPrompts(), and registerResources() if you want to embed the server yourself.
import { createServer } from "@webhooks-cc/mcp";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
const server = createServer({
apiKey: process.env.WHK_API_KEY!,
baseUrl: process.env.WHK_BASE_URL,
webhookUrl: process.env.WHK_WEBHOOK_URL,
});
await server.connect(new StdioServerTransport());
You: Create an ephemeral endpoint for GitHub webhook testing.
Agent: Created endpoint https://go.webhooks.cc/w/abc123 and marked it ephemeral.
You: Preview the signed request for a push event before sending it.
Agent: Here is the exact method, headers, and JSON body that would be sent.
You: Send it, wait for two requests, and compare them.
Agent: Sent the webhook, captured two requests, and here are the header and body differences.
Full docs: webhooks.cc/docs/mcp
MIT
FAQs
MCP server for webhooks.cc — AI agent integration for webhook testing
We found that @webhooks-cc/mcp demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Security News
Cloudflare introduces tsrs, a Rust port of TypeScript’s compiler promising faster checks and lower memory use, with the TypeScript team’s help.

Security News
The PHP Foundation says Chainguard broke a security embargo ahead of critical RCE patches, as leaks disrupted the coordinated release.

Security News
PHP releases emergency patches for two critical RCE vulnerabilities as agencies urge organizations to take unpatched sites offline.