MCP Server

Webhooks for your
AI assistant.

Trigger events, retry failed deliveries, debug payloads — from a real conversation with Claude Desktop, Cursor, or any MCP-compatible AI client. The same context window where you're writing the code now also debugs the webhook.

quickstart
# 30 seconds, three steps
$ brew install getnahook/tap/nahook
$ nahook login
$ claude mcp add nahook -- nahook mcp serve

# Restart Claude Desktop. Done.

Live in your AI client

Conversational webhook debugging

Real prompt → real Nahook tool call → real response, in the same Claude Desktop window where you're writing the integration.

Claude Desktop conversation: the user asks 'show me the webhooks I have', Claude calls list_endpoints and renders a table of three webhook endpoints with Active or Inactive status badges; the user then asks Claude to disable one of them, Claude calls update_endpoint and confirms isActive is now false; finally the user asks for the deliveries on a different endpoint and Claude calls list_deliveries to show five successful deliveries on first attempt.
Claude Desktop · nahook MCP server · live tool call

Works with every MCP-compatible client

Claude Desktop
Anthropic's official desktop app
Claude Code
Anthropic's terminal-native AI
Cursor
AI-first code editor
Cline
VS Code extension
Zed
Collaborative editor with built-in MCP
Continue
Open-source AI assistant

What you can ask your AI

Real prompts that work today. No special syntax, no tool names to memorize.

Debug a failed delivery

"The webhook to ep_acme_prod failed three times yesterday. Show me the last delivery's payload and explain why the receiver rejected it."

Claude pulls the delivery, inspects the response body, and reads the attempt logs to diagnose the failure.

Retry from the conversation

"Retry every dead-lettered delivery for ep_acme_prod from the last hour."

Claude lists the failures, asks you to confirm the retry, then re-enqueues them — one approval prompt covers the whole batch.

Trigger an event during a refactor

"Trigger order.refunded for order ord_test_4711 so I can watch the fan-out in the dashboard."

Claude calls trigger_event. No curl, no Postman, no SDK installed in the current project.

Audit endpoints before a launch

"List every active endpoint in this workspace and which events each one subscribes to. Highlight any that haven't received a delivery this week."

Claude walks the list, pulls subscriptions and last-delivery metadata, and gives you a launch checklist.

12 tools, scoped to your workspace

Read, mutate, fan out, retry. Every tool calls the same Nahook API with your workspace's permissions.

whoami Workspace, region, token expiry.
list_endpoints Every endpoint in the workspace.
get_endpoint Fetch one endpoint by id.
create_endpoint Create a new endpoint.
update_endpoint Pause, resume, change URL.
list_environments Every environment in the workspace.
list_deliveries Page through deliveries newest-first.
get_delivery Inspect a single delivery + payload.
list_attempts Every attempt against a delivery.
retry_delivery Re-enqueue a failed delivery.
trigger_event Fire an event and fan out to subscribers.
send_to_endpoint Send directly to one endpoint.

Safe by design

Your AI assistant gets exactly the permissions you have — no more, no less.

Per-call approval

Every write tool is tagged with MCP's destructiveHint. Your client surfaces an approval prompt before anything mutates state.

Per-request authorization

Permissions are evaluated every call against your workspace role. Revoke access in the dashboard and the MCP server loses it instantly.

Auth lives in the CLI

The MCP server reads the credentials your nahook login command already wrote. No long-lived secrets in MCP client config files.

Your AI assistant is one command away.

Install once, talk to your webhook infrastructure in plain English.