Hookbase MCP Server
The Hookbase MCP Server exposes the Hookbase webhook relay API as tools for AI assistants, enabling full management of inbound and outbound webhooks, tunnels, cron jobs, and analytics through a conversational interface.
Inbound Webhook Management
Sources: List, get, create, update, and delete endpoints that receive incoming webhooks
Destinations: List, get, create, update, delete, and test connectivity of endpoints where webhooks are forwarded
Routes: List, get, create, update, and delete rules connecting sources to destinations (with optional filters and transforms)
Events: Query and filter incoming webhook events, view full payloads and delivery attempts, and generate cURL replay commands for debugging
Deliveries: Query delivery attempts, view response details, and replay individual or bulk failed deliveries
Outbound Webhook Management
Applications: List, get, create, update, and delete webhook applications (representing customers/integrations)
Endpoints: List, get, create, update, delete endpoints; rotate signing secrets; reset circuit breakers; configure rate limiting and authentication
Event Types: List, get, create, update, and delete event type definitions (e.g.,
order.created)Subscriptions: List, get, create, update, and delete subscriptions connecting endpoints to event types
Send & Track: Send webhook events, list outbound messages, view delivery attempts, replay failed messages, and get delivery statistics
Local Development
Tunnels: List, create, check status of, and delete localhost tunnels for forwarding webhooks to local servers
Scheduled Jobs
Cron Jobs: List, create, delete, and manually trigger scheduled HTTP request jobs
Analytics
Dashboard Metrics: Retrieve event counts, delivery success rates, and top sources/destinations for time ranges of 1h, 24h, 7d, or 30d
Provides a tool to generate cURL commands for replaying webhook events, aiding in the debugging and manual testing of integrations.
Enables the management of GitHub webhook sources and the creation of routes to forward GitHub events to specific destinations.
Supports the configuration and connectivity testing of Slack notification destinations for relayed webhooks.
Allows for the creation and management of Stripe webhook sources within the Hookbase relay system.
Click on "Install 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., "@Hookbase MCP ServerShow me failed deliveries from the last hour"
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.
Hookbase MCP Server
An MCP (Model Context Protocol) server that exposes the Hookbase webhook relay API as tools for AI assistants like Claude.
Quick Start
1. Get your API key
Get your API key from the Hookbase dashboard under Settings → API Keys.
2. Add to Claude Desktop
Add to your Claude Desktop config file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Linux: ~/.config/claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"hookbase": {
"command": "npx",
"args": ["-y", "@hookbase/mcp-server"],
"env": {
"HOOKBASE_API_KEY": "whr_live_your_key_here"
}
}
}
}3. Restart Claude Desktop
Restart Claude Desktop to load the MCP server. You can now ask Claude to manage your webhooks!
Alternative Installation
Global install
npm install -g @hookbase/mcp-serverThen use in Claude Desktop config:
{
"mcpServers": {
"hookbase": {
"command": "hookbase-mcp",
"env": {
"HOOKBASE_API_KEY": "whr_live_your_key_here"
}
}
}
}From source
git clone https://github.com/HookbaseApp/mcp-server.git
cd mcp-server
npm install
npm run buildConfiguration
Variable | Required | Description |
| Yes | Your Hookbase API key (starts with |
| No | Organization ID (only needed if you have multiple orgs) |
| No | API URL override (default: https://api.hookbase.app) |
| No | Set to |
The organization is automatically detected from your API key. The result is cached at ~/.config/hookbase/mcp.json (or $XDG_CONFIG_HOME/hookbase/mcp.json) so subsequent boots skip the /api/auth/me round-trip. Delete the file to force a refresh.
Available Tools (120)
Inbound Webhooks
Sources
hookbase_list_sources- List all webhook sourceshookbase_get_source- Get source detailshookbase_create_source- Create new sourcehookbase_update_source- Update source confighookbase_delete_source- Delete a source (cascades to routes)
Destinations
hookbase_list_destinations- List all destinationshookbase_get_destination- Get destination detailshookbase_create_destination- Create new destinationhookbase_update_destination- Update destination confighookbase_delete_destination- Delete a destinationhookbase_test_destination- Test destination connectivity
Routes
hookbase_list_routes- List all routeshookbase_get_route- Get route detailshookbase_create_route- Create source→destination routehookbase_update_route- Update route confighookbase_delete_route- Delete a route
Events
hookbase_list_events- Query events with filtershookbase_get_event- Get event with payload & deliverieshookbase_get_event_debug- Get cURL command to replay event
Deliveries
hookbase_list_deliveries- Query deliverieshookbase_get_delivery- Get delivery details with responsehookbase_replay_delivery- Retry a failed deliveryhookbase_bulk_replay- Retry multiple failed deliveries
Tunnels
hookbase_list_tunnels- List localhost tunnelshookbase_create_tunnel- Create new tunnelhookbase_get_tunnel_status- Check tunnel connectionhookbase_delete_tunnel- Delete a tunnel
Cron
hookbase_list_cron_jobs- List scheduled jobshookbase_get_cron_job- Get a single cron jobhookbase_create_cron_job- Create a scheduled jobhookbase_update_cron_job- Update a scheduled jobhookbase_delete_cron_job- Delete a scheduled jobhookbase_trigger_cron- Manually trigger a job
Cron Groups
hookbase_list_cron_groups- List cron groupshookbase_get_cron_group- Get a cron grouphookbase_create_cron_group- Create a cron grouphookbase_update_cron_group- Rename / reorder / collapse a grouphookbase_delete_cron_group- Delete a group (jobs become ungrouped)
Analytics
hookbase_get_analytics- Get dashboard metrics
Routing Primitives
These define the filters, transforms, and schemas you attach to routes via filter_id, transform_id, and schema_id.
Filters
hookbase_list_filters- List filter definitionshookbase_get_filter- Get a filter with conditionshookbase_create_filter- Create a reusable filterhookbase_update_filter- Update name / conditions / logichookbase_delete_filter- Delete a filter
Transforms
hookbase_list_transforms- List transforms (JSONata / XSLT / Liquid / JS)hookbase_get_transform- Get a transform's source codehookbase_create_transform- Create a transform (server-side validated)hookbase_update_transform- Update a transformhookbase_delete_transform- Delete a transformhookbase_test_transform- Run a transform against a sample payload
Schemas
hookbase_list_schemas- List JSON Schema definitionshookbase_get_schema- Get a schemahookbase_create_schema- Create a JSON Schemahookbase_update_schema- Update a schemahookbase_delete_schema- Delete a schemahookbase_validate_against_schema- Validate a payload against a stored schema
Alerts & Notifications
Alert Rules
hookbase_list_alert_rules- List alert ruleshookbase_get_alert_rule- Get an alert rulehookbase_create_alert_rule- Create a rule (silence / failure rate / latency / volume / anomaly / schema drift)hookbase_update_alert_rule- Update a rulehookbase_delete_alert_rule- Delete a rulehookbase_test_alert_rule- Fire a test notification through all attached channels
Notification Channels
hookbase_list_notification_channels- List channels (sensitive fields masked)hookbase_get_notification_channel- Get a channelhookbase_create_notification_channel- Create channel (email / slack / webhook / teams / pagerduty / discord)hookbase_update_notification_channel- Update name / config / active statehookbase_delete_notification_channel- Delete a channel
Outbound Webhooks
Send webhooks to your customers' endpoints with built-in retries, signature verification, and circuit breakers.
Webhook Applications
Applications represent a customer or integration that receives your outbound webhooks.
hookbase_list_applications- List webhook applicationshookbase_get_application- Get application details and statisticshookbase_create_application- Create new applicationhookbase_update_application- Update application config or disablehookbase_delete_application- Delete application (cascades to endpoints)
Webhook Endpoints
Endpoints are the URLs where webhooks are delivered.
hookbase_list_endpoints- List endpoints with filtershookbase_get_endpoint- Get endpoint details with circuit breaker statehookbase_create_endpoint- Create endpoint (returns signing secret)hookbase_update_endpoint- Update endpoint URL or confighookbase_delete_endpoint- Delete endpointhookbase_rotate_endpoint_secret- Rotate signing secret with grace periodhookbase_reset_endpoint_circuit- Reset circuit breaker to closed state
Webhook Subscriptions
Subscriptions connect endpoints to the event types they should receive.
hookbase_list_subscriptions- List subscriptionshookbase_get_subscription- Get subscription detailshookbase_create_subscription- Subscribe endpoint to event typehookbase_update_subscription- Update filter or transformhookbase_delete_subscription- Remove subscription
Event Types
Event types define the kinds of webhooks you can send.
hookbase_list_event_types- List event type definitionshookbase_get_event_type- Get event type with schemahookbase_create_event_type- Create event type (e.g., "order.created")hookbase_update_event_type- Update or deprecate event typehookbase_delete_event_type- Delete event type
Send Events & Track Messages
hookbase_send_event- Send webhook event to subscribed endpointshookbase_list_outbound_messages- List delivery recordshookbase_get_outbound_message- Get message detailshookbase_get_message_attempts- Get delivery attempt historyhookbase_replay_message- Replay failed messagehookbase_get_outbound_stats- Get delivery statistics by status
Webhook Analytics
hookbase_get_webhook_analytics- Status counts, success rate, latency percentiles, top failing endpoints, error types, DLQ reasons, chart serieshookbase_get_webhook_endpoint_analytics- Per-endpoint stats with circuit-breaker state and recent attempts
Org Administration
API Keys
hookbase_list_api_keys- List API keys (key prefix only, never raw)hookbase_create_api_key- Create API key (raw key returned ONCE — store immediately)hookbase_delete_api_key- Revoke an API key
Audit Logs
hookbase_list_audit_logs- Query org audit log entries with filtershookbase_list_audit_log_actions- List distinct action types in audit loghookbase_list_audit_log_users- List distinct users in audit log
Redaction Policies
Strip or mask sensitive fields from payloads before storage and/or delivery.
hookbase_list_redaction_policies- List policies (optionally filter by source)hookbase_get_redaction_policy- Get a policy with its full rulesethookbase_create_redaction_policy- Create a policy (rules: path / field_name / regex_value / header → redact / mask / hash / remove)hookbase_update_redaction_policy- Update a policy (PUT — full state)hookbase_delete_redaction_policy- Delete a policyhookbase_preview_redaction_policy- Preview a ruleset against a sample payload without saving
Scheduled Sends
One-shot HTTP requests scheduled for a future time.
hookbase_list_scheduled_sends- List scheduled sends with status filterhookbase_get_scheduled_send- Get a scheduled sendhookbase_create_scheduled_send- Schedule an HTTP requesthookbase_update_scheduled_send- Update a pending scheduled sendhookbase_cancel_scheduled_send- Cancel a pending or failed sendhookbase_send_scheduled_send_now- Trigger immediately, ignoring scheduled_for
Test Webhook Bins
Ephemeral, anonymous webhook collectors for ad-hoc integration testing (not org-scoped — anyone with the bin ID can read).
hookbase_create_bin- Create a new bin (rate-limited 10/IP/day)hookbase_get_bin- Get bin metadata + 50 most recent eventshookbase_list_bin_events- Paginated event list (summary)hookbase_get_bin_event- Get a single event with full headers and bodyhookbase_update_bin_response- Configure the response the bin returns to incoming requests
Available Resources
In addition to tools, the server exposes read-only resources at stable URIs that AI assistants can fetch directly. Resources support listing, so clients can enumerate the available items per template.
hookbase://sources/{sourceId}/ingest-url— Public ingest URL for an inbound source. POST a webhook body here to push it through the source's routes.hookbase://tunnels/{tunnelId}/ws-url— WebSocket URL for a tunnel client to connect to. Embeds the tunnel auth token — treat as a secret. If the token is no longer available, regenerate it via the tunnel API.hookbase://endpoints/{endpointId}— Outbound webhook endpoint metadata: URL, circuit-breaker state, lifetime delivery counters, and recent activity timestamps.
Example Prompts
Once configured, you can ask Claude things like:
Inbound Webhooks
"List all my webhook sources"
"Show me failed deliveries from the last hour"
"Create a new source for Stripe webhooks"
"What's my webhook success rate for the last 24 hours?"
"Replay all failed deliveries for the payment-service destination"
"Test my Slack notification destination"
"Create a route from my GitHub source to my CI/CD destination"
Outbound Webhooks
"Create a webhook application for Acme Corp"
"Add an endpoint https://acme.com/webhooks to the Acme application"
"Create an event type called order.created for order events"
"Subscribe Acme's endpoint to order.created events"
"Send a test order.created event with this payload: {orderId: '123', total: 99.99}"
"Show me all failed outbound messages"
"Replay the failed message to Acme's endpoint"
"What's the circuit breaker status for Acme's endpoint?"
"Reset the circuit breaker for endpoint X"
"Rotate the signing secret for Acme's endpoint with a 2-hour grace period"
"List all endpoints that have their circuit breaker open"
"Get delivery statistics for outbound webhooks"
Testing the Server
Three ways to verify the server end-to-end without wiring it into a client:
Interactive (MCP Inspector)
HOOKBASE_API_KEY=whr_... npm run inspectOpens a browser UI where you can list/call tools, read resources, and run prompts against your real org.
Stdio smoke test
HOOKBASE_API_KEY=whr_... npm run smokeSpawns the built server, runs initialize → tools/list → resources/templates/list → prompts/list, and prints counts. Useful in CI for catching wiring regressions.
End-to-end vitest
tests/e2e-stdio.test.ts spawns dist/index.js over real stdio with a pre-seeded config cache (no API call required) and verifies the protocol handshake and registry sizes. Runs as part of npm test.
Troubleshooting
"Missing HOOKBASE_API_KEY"
Make sure your API key is set in the env section of your Claude Desktop config.
"Invalid API key"
Check that your API key starts with whr_ and is valid in the Hookbase dashboard.
"Multiple organizations found"
If you belong to multiple organizations, add HOOKBASE_ORG_ID to your env config.
Server not appearing in Claude
Check the config file path is correct for your OS
Ensure the JSON is valid (no trailing commas)
Restart Claude Desktop completely
License
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/HookbaseApp/mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server