Skip to main content
Glama

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

anyhook-mcp

npm

MCP server — lets a coding agent set up and operate webhook infrastructure by itself

anyhook-verify

npm

Verify AnyHook-Signature headers on your server (HMAC-SHA256, retry-safe)

@anyhook/core

not published

Shared internals (signature logic, provider fixtures), bundled into the two above

Forward webhooks to localhost

npx -y anyhook-mcp listen 3000

Prints 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/quickstart

Development

pnpm workspace. Node 20+.

pnpm install
pnpm test    # vitest across all packages
pnpm build   # tsup

The 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 tools
anyhook_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

    A3.8/5.0

    Scored across 13 tools

    Disambiguation4/5

    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.

    Naming Consistency3/5

    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.

    Tool Count5/5

    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.

    Completeness4/5

    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

    ActivityActive
    ResponsivenessLimited data

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      C
      maintenance
      MCP server that enables AI coding agents to communicate, share state, and coordinate work in real time via MCP tools or REST API.
      246 npm
      9
      MIT
    • A
      license
      A
      quality
      D
      maintenance
      An 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.
      7
      MIT
    • A
      license
      Not graded
      quality
      C
      maintenance
      An 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 npm
      MIT