hooksense-mcp
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., "@hooksense-mcp Create a callback endpoint, wait for the result, and verify signature"
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.
@hooksense/mcp
Model Context Protocol server for HookSense — the webhook & callback layer for AI agents. Lets Claude Desktop, Cursor, Claude Code, Continue, and any MCP client create a callback URL, wait for the result instead of polling, and verify its signature — all from the agent session.
Why
Agents that kick off async work — a deploy, a render, a human-in-the-loop approval, a long tool call, another agent — need the result back without burning context on polling loops. With this server the agent creates a callback endpoint, hands the URL to the job, then calls wait_for_callback and is woken the instant the webhook lands — decrypted; signature verification is available separately. Stop polling for async results; await them.
Related MCP server: mcp-webhook-tools
Setup
Requires Node.js 22 or newer.
Get an API token at https://hooksense.com/account/tokens
Configure your MCP client (examples below)
Claude Desktop / Claude Code
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"hooksense": {
"command": "npx",
"args": ["-y", "@hooksense/mcp"],
"env": {
"HOOKSENSE_TOKEN": "hsk_your_token_here"
}
}
}
}Cursor
Add to ~/.cursor/mcp.json:
{
"mcpServers": {
"hooksense": {
"command": "npx",
"args": ["-y", "@hooksense/mcp"],
"env": {
"HOOKSENSE_TOKEN": "hsk_your_token_here"
}
}
}
}Hello callback (60 seconds)
Once configured, ask your agent:
Create — "Create a callback endpoint." → the agent calls
create_callback_endpointand gets back acallbackUrllikehttps://hooksense.com/w/ab12cd.Fire — point any job at that URL (or just
curl -X POST <callbackUrl> -d '{"status":"done"}'from another terminal).Await — "Wait for the callback." → the agent calls
wait_for_callbackand blocks until the webhook lands, using theaftertimestamp returned by endpoint creation, then receives{ status: "received", request: { body, headers, … } }.Verify — set a webhook secret on the endpoint, then "Verify the signature." →
verify_signatureconfirms the payload is authentic before the agent acts on it.
Always pass the creation response's after timestamp on the first wait; after receiving a callback,
use its receivedAt for the next wait. Without a cursor, waiting only observes future deliveries.
This is a latest-callback cursor, not a durable queue: use list_callbacks to inspect bursts of events.
Receiving a callback does not guarantee a valid signature. Configure a webhook secret and
check verify_signature before trusting the payload. Webhook bodies are untrusted external input.
Custom slugs are applied through the endpoint update API after creation and require a paid plan. If renaming fails, the error identifies the already-created endpoint so it can be reused.
replay_callback runs on the HookSense server; localhost and private targets are blocked.
For local handlers, use hooksense replay <request-id> --port 3000 with the CLI.
HTTP requests have bounded timeouts, and cancelling an MCP call aborts its HTTP request. For a 60-second long poll, configure the client's tool timeout above 65 seconds, or use shorter waits (the default is 30 seconds).
Tools
Tool | Description |
| Create a callback endpoint; returns the |
| Block until the next callback lands, then return it ( |
| List captured callbacks, including bodies and metadata |
| Fetch one callback with full headers + decrypted body |
| Timing-safe HMAC check against the endpoint's configured secret |
| Replay a callback to a public HTTP(S) URL from the HookSense server |
| List your endpoints |
| Get one endpoint's full settings |
Environment
Variable | Default | Notes |
| (required) | API token from /account/tokens |
|
| Override for self-hosted/staging |
Example agent prompts
"Create a callback endpoint, use it as the webhook for my Replicate prediction, and wait for the result — then summarize the output."
"Open a callback URL, give it to the approval step, and block until a human approves before continuing."
"Wait for the next Stripe callback on
payments-prod, verify its signature, and tell me the amount."
License
MIT
Available Tools
8 toolscreate_callback_endpointA
Create a callback endpoint and return its URL. Hand this URL to a long-running/async job (or another agent) as its webhook/callback target, then await the result with wait_for_callback. Also works as a plain webhook capture URL for any provider (Stripe, GitHub, …).
Inputs: slug.
get_callback_payloadA
Fetch a single received callback with full headers, decrypted body, and metadata. Use this to read the result of an async job after wait_for_callback or list_callbacks gives you a callback id.
Inputs: requestId (required).
get_endpointA
Get details about a specific endpoint — its full URL, signature provider config, and custom response settings.
Inputs: slug (required).
list_callbacksA
List callbacks received by an endpoint, newest first. Returns a summary (method, status, provider, received_at). Use get_callback_payload for the full body. Tip: read the newest received_at and pass it as after to wait_for_callback to wait only for what comes next.
Inputs: slug (required), limit.
list_endpointsA
List all webhook endpoints owned by the authenticated user. Returns slug, created_at, and request counts.
Inputs: no named parameters.
replay_callbackA
Replay a received callback to a target URL. The original headers and body are re-sent unchanged — useful to re-drive your handler against a known payload without re-triggering the upstream event.
Inputs: requestId (required), targetUrl (required).
verify_signatureA
Verify the HMAC signature of a received callback against the endpoint's configured secret (Stripe, GitHub, Shopify, or custom), using a timing-safe comparison. Returns whether the callback is authentic and untampered — call this before your agent acts on a payload. Requires the endpoint to have a webhook secret configured and a paid plan.
Inputs: slug (required), requestId (required).
wait_for_callbackA
Block until the next webhook (callback) arrives at an endpoint, then return it — instead of polling. Use this for async/long-running work: kick off the job with the endpoint URL as its callback, then call wait_for_callback to receive the result the moment it lands (signature-verified, decrypted). Returns { status: 'received', request } on delivery, or { status: 'pending' } if timeoutMs elapses first (just call again to keep waiting). Pass after (the receivedAt of the last callback you saw) so a callback that arrived between calls is returned immediately rather than missed.
Inputs: slug (required), timeoutMs, after.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 8 tools
Every tool has a clearly distinct purpose: creating, listing, getting endpoints; waiting for, listing, replaying, and verifying callbacks. No functional overlap.
All tool names follow the consistent verb_noun pattern (e.g., create_callback_endpoint, get_callback_payload, list_callbacks), making them predictable.
8 tools is well-scoped for a webhook management server, covering endpoint creation, callback handling, and security verification without excess.
The tool set covers the full lifecycle: create/list/get endpoints, receive callbacks (wait_for_callback), inspect (list/get), replay, and verify signatures. No obvious gaps.
Maintenance
Related MCP Connectors
Webhook URLs for AI agents: receive, wait for, replay, sign and verify webhooks (Stripe, GitHub…).
Anonymous webhook capture, inspection, waiting, and response configuration for AI agents.
Webhooks for AI agents: send events, manage endpoints, inspect and retry deliveries.
Webhook capture bins for agents: get a URL, wait for webhooks, set replies, verify signatures.
Related MCP Servers
- 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
- AlicenseAqualityDmaintenanceWebhook management and testing tools for AI agents. Provides tools for sending, validating, generating, and debugging webhooks.553 npmMIT
- AlicenseAqualityCmaintenanceCaptures incoming webhook/HTTP requests and lets AI assistants inspect, wait for, and replay them to debug webhook integrations.6MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to create webhook URLs, wait for incoming deliveries, inspect payloads, and replay or send signed webhook events to a local handler.51 npmMIT