loading…
Search for a command to run...
loading…
Exposes the Hookbase webhook relay API as tools for AI assistants to manage sources, destinations, routes, and events through natural language. It enables monit
Exposes the Hookbase webhook relay API as tools for AI assistants to manage sources, destinations, routes, and events through natural language. It enables monitoring webhook success rates, replaying failed deliveries, and managing localhost tunnels for development.
An MCP (Model Context Protocol) server that exposes the Hookbase webhook relay API as tools for AI assistants like Claude.
Get your API key from the Hookbase dashboard under Settings → API Keys.
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"
}
}
}
}
Restart Claude Desktop to load the MCP server. You can now ask Claude to manage your webhooks!
npm install -g @hookbase/mcp-server
Then use in Claude Desktop config:
{
"mcpServers": {
"hookbase": {
"command": "hookbase-mcp",
"env": {
"HOOKBASE_API_KEY": "whr_live_your_key_here"
}
}
}
}
git clone https://github.com/HookbaseApp/mcp-server.git
cd mcp-server
npm install
npm run build
| Variable | Required | Description |
|---|---|---|
HOOKBASE_API_KEY |
Yes | Your Hookbase API key (starts with whr_) |
HOOKBASE_ORG_ID |
No | Organization ID (only needed if you have multiple orgs) |
HOOKBASE_API_URL |
No | API URL override (default: https://api.hookbase.app) |
HOOKBASE_NO_CACHE |
No | Set to 1 to disable the org-resolution cache |
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.
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)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 connectivityhookbase_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 routehookbase_list_events - Query events with filtershookbase_get_event - Get event with payload & deliverieshookbase_get_event_debug - Get cURL command to replay eventhookbase_list_deliveries - Query deliverieshookbase_get_delivery - Get delivery details with responsehookbase_replay_delivery - Retry a failed deliveryhookbase_bulk_replay - Retry multiple failed deliverieshookbase_list_tunnels - List localhost tunnelshookbase_create_tunnel - Create new tunnelhookbase_get_tunnel_status - Check tunnel connectionhookbase_delete_tunnel - Delete a tunnelhookbase_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 jobhookbase_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)hookbase_get_analytics - Get dashboard metricsThese define the filters, transforms, and schemas you attach to routes via filter_id, transform_id, and schema_id.
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 filterhookbase_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 payloadhookbase_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 schemahookbase_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 channelshookbase_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 channelSend webhooks to your customers' endpoints with built-in retries, signature verification, and circuit breakers.
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)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 stateSubscriptions 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 subscriptionEvent 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 typehookbase_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 statushookbase_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 attemptshookbase_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 keyhookbase_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 logStrip 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 savingOne-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_forEphemeral, 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 requestsIn 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.Once configured, you can ask Claude things like:
Three ways to verify the server end-to-end without wiring it into a client:
HOOKBASE_API_KEY=whr_... npm run inspect
Opens a browser UI where you can list/call tools, read resources, and run prompts against your real org.
HOOKBASE_API_KEY=whr_... npm run smoke
Spawns the built server, runs initialize → tools/list → resources/templates/list → prompts/list, and prints counts. Useful in CI for catching wiring regressions.
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.
Make sure your API key is set in the env section of your Claude Desktop config.
Check that your API key starts with whr_ and is valid in the Hookbase dashboard.
If you belong to multiple organizations, add HOOKBASE_ORG_ID to your env config.
MIT
Выполни в терминале:
claude mcp add hookbase-mcp-server -- npx CSA PROJECT - FZCO © 2026 IFZA Business Park, DDP, Premises Number 31174 - 001
Безопасность
Низкий рискАвтоматическая эвристика по публичным данным — не гарантия безопасности.