anyhook-mcp
This MCP server lets an agent bootstrap and operate AnyHook webhook infrastructure, including creating endpoints, inspecting and replaying events, and mocking or verifying webhook signatures.
Create a free ephemeral AnyHook endpoint and API key with no account via
anyhook_quickstart(7-day TTL, claimable later).Create and list AnyHook apps, including inbound URLs, sources, destinations, active status, and legacy URLs.
Get an app’s email inbox address; received email becomes an
email.receivedevent.List recent webhook events, filter by app/source/status, and inspect full event headers, body, and destination response.
List undelivered events, replay a single event, or bulk-replay all failed events for an app.
Mock signed webhook requests for Stripe, GitHub, or Slack, optionally POSTing them to a target URL.
Verify webhook signatures for 20 providers including Stripe, GitHub, Shopify, Slack, Linear, Vercel, Paddle, HubSpot, and PayPal.
List supported providers and their available event types.
Simulate an incoming webhook into the local in-memory store for local list/inspect testing.
Forward real webhooks to localhost via the CLI:
npx anyhook-mcp listen 3000.
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., "@anyhook-mcp Set up a webhook endpoint for testing"
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.
AnyHook client packages
Source for the npm packages that go with AnyHook, a webhook relay: change one URL and your webhooks get automatic retries, a full event log, and one-click replay.
Package | npm | What it is |
MCP server — lets a coding agent set up and operate webhook infrastructure by itself | ||
Verify | ||
| not published | Shared internals (signature logic, provider fixtures), bundled into the two above |
Forward webhooks to localhost
npx -y anyhook-mcp listen 3000Prints a public webhook URL and forwards every event to that port, with no
account. The URL survives a restart, and your server gets the bytes the provider
sent, so signatures verify. Webhooks only: details in
packages/mcp.
Related MCP server: mcp-gauge
Connect an agent
Already have an AnyHook account? Add https://anyhook.net/mcp to Claude Code,
claude.ai, Codex or VS Code and sign in through the browser, no key to copy.
Steps for each app, Cursor included: https://anyhook.net/mcp.
No account yet? Run the package locally:
{ "mcpServers": { "anyhook": { "command": "npx", "args": ["-y", "anyhook-mcp"] } } }Its anyhook_quickstart tool makes a live webhook endpoint and key without an
account (7-day TTL, claimable into a free account later). That endpoint is new,
not an account you already have. From there the agent creates apps, reads and
inspects events, replays failures, and mocks or verifies signed payloads.
Prefer plain HTTP? The same bootstrap is one curl:
curl -X POST https://anyhook.net/api/v1/quickstartDevelopment
pnpm workspace. Node 20+.
pnpm install
pnpm test # vitest across all packages
pnpm build # tsupThe hosted relay itself (ingress, forwarder, dashboard) is a separate closed-source service — this repo is the client tooling. API reference: openapi.json · agent docs: llms.txt · pricing: pricing.md · MCP setup: anyhook.net/mcp
License
Apache-2.0
Available Tools
13 toolsanyhook_apps_createCreate a new AnyHook appAInspect
Create a new app with a name, provider source, and (optionally) destinations. Returns the inbound URL. The app is active immediately. Created WITHOUT destinations it still receives and LOGS every event (inspect-only), it just delivers nowhere until a destination is added (PATCH /api/v1/apps/{slug} with {"destinations": [...]}).
Inputs: name (required), source (required), api_key, destinations.
anyhook_apps_listList your AnyHook appsAInspect
List apps in your AnyHook account with inbound URLs, sources, and destination URLs. Check isActive: an inactive app's inbound URL answers setup handshakes but acknowledges and discards event POSTs (202, reason app_inactive) instead of relaying them. Destination signing secrets are redacted to has_signing_secret plus a 4-char hint; a new secret in plaintext comes only from rotating it. An app whose slug was changed lists its former URLs under legacyInboundUrls; those still route to it.
Inputs: api_key.
anyhook_eventsList recent webhook eventsAInspect
List webhook events, most recent first: id, app, type, status, attempt, destination status code, latency, timestamp. Summaries only, no request headers or body — call anyhook_inspect with an id from here to read one event's payload. Uses your AnyHook account when connected, otherwise the local in-memory store.
Inputs: limit, source, status, api_key, +1 more.
anyhook_inboxGet this app's email inbox addressAInspect
Every AnyHook app is also an email inbox: mail sent to {user}.{app}@anyhook.net becomes an event (type email.received) you can read with anyhook_events. Returns the address and webhook URL for one of your apps. No account yet? anyhook_quickstart returns an inbox_address directly.
Inputs: app, api_key.
anyhook_inspectInspect a specific eventAInspect
Full detail for one event by id, including the inbound headers and body that anyhook_events omits, plus the destination's response. Payloads can be large and often contain personal data, so fetch one at a time, only when the body is needed. Account or local store.
Inputs: id (required), api_key.
anyhook_mockMock a webhookAInspect
Generate a webhook request with a valid signature for Stripe, GitHub, or Slack. If targetUrl is provided, the request is POSTed there and the response is returned.
Inputs: event (required), provider (required), data, secret, +1 more.
anyhook_providersList supported providers and event typesAInspect
List webhook providers AnyHook can mock, along with the event types available for each.
Inputs: no named parameters.
anyhook_quickstartCreate a free AnyHook endpoint (no account needed)AInspect
Zero-config bootstrap: creates a free ephemeral relay endpoint + API key with no signup. Returns inbound_url (receives webhooks immediately), api_key, and claim_url. Relay claim_url to your user before the session ends, unclaimed workspaces self-delete in 7 days. This MCP session auto-connects to the new account; remote tools work right after. Endpoint expires in 7 days unless claimed.
Inputs: source, destination_url.
anyhook_replayReplay an eventAInspect
Re-send a stored event to its destinations. Replay does NOT consume monthly event quota, safe to call repeatedly while debugging.
Inputs: id (required), api_key.
anyhook_replay_failedBulk-replay all failed events for an appAInspect
Re-send every failed event for the given app slug. Useful after fixing a downstream bug to recover queued work.
Inputs: appSlug (required), api_key.
anyhook_simulateSimulate an incoming webhook (local only)AInspect
Generate a mocked webhook AND insert it into the local memory store, so list/inspect flows can be exercised without a real provider. Not available in remote mode, use anyhook_mock + your real inbound URL there.
Inputs: event (required), provider (required), data, secret.
anyhook_undeliveredList undelivered events for an appBInspect
Show events for the given app that have not successfully reached any destination (failed or still retrying).
Inputs: appSlug (required), limit, api_key.
anyhook_verifyVerify a webhook signatureBInspect
Verify a webhook signature against a secret. Supports 20 providers including stripe, github, shopify, slack, line, discord, linear, vercel, paddle, hubspot, and paypal.
Inputs: body (required), secret (required), headers (required), provider (required), +1 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 13 tools
Most tools target distinct lifecycle stages (create, list, inspect, replay, verify, mock), and descriptions clearly delineate summary vs detail and local vs remote. A few pairs overlap—replay/replay_failed and mock/simulate—but the descriptions are explicit enough that an agent can pick correctly.
All names share an anyhook_ prefix and avoid camelCase, but the grammatical pattern is inconsistent: verbs (replay, inspect, mock), nouns (events, providers, inbox), adjectives (undelivered), and noun-first compounds (apps_create, apps_list) are mixed. This is readable but not predictable enough to infer an unlisted tool's name.
Thirteen tools is squarely in the well-scoped range and maps to distinct steps in the webhook workflow: bootstrap/create, list/inspect, replay/verify/mock. None feel like filler, and the count supports a coherent utility without bloating the surface.
Core webhook lifecycle is covered: creating endpoints, listing events, inspecting payloads, replaying failed deliveries, mocking providers, and verifying signatures. Missing app/destination update/delete operations (PATCH is mentioned in a description but no tool exists) are the main gap, though they are work-aroundable via other tools.
Maintenance
Related MCP Connectors
MCP server for building and testing AI agents with multi-model experimentation and insights.
MCP server for your apps' tools and custom tools, plus hosted AI agents and approval-gated workflows
MCP server that lets your AI assistant build and deploy apps, hosting each one at a live URL.
MCP server connecting AI agents to 100+ apps (Gmail, Slack, Notion, GitHub) via one-click OAuth.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceMCP server that enables AI coding agents to communicate, share state, and coordinate work in real time via MCP tools or REST API.246 npm9MIT
- AlicenseAqualityDmaintenanceAn MCP server that enables coding agents to autonomously test, evaluate, and tune other MCP servers by acting as a proxy and providing linting, trace recording, evaluation, comparison, and reporting tools.7MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server that provides a governance layer for coding agents, enforcing policies, validation, and human-in-the-loop for tool calls without requiring an API key.MIT
- AlicenseNot gradedqualityCmaintenanceAn MCP server that provides coding agents with fully-contextualized work orders from a knowledge graph, enabling them to retrieve and update work order status.3 npmMIT