canhook-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., "@canhook-mcpdiagnose why my webhook deliveries are failing"
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.
canhook-mcp
Remote MCP resource server for CanHook — inspect captured webhooks, diagnose relay delivery failures, replay requests, and manage endpoints from Claude (or any MCP agent) over an OAuth 2.1 connection.
Public URL: https://canhook.com/mcp
Transports: stdio + Streamable HTTP
Auth: OAuth 2.1 (PKCE). The CanHook PHP app is the authorization server; this server validates bearer tokens by introspection.
Design decisions are in adr/; the SDK/transport spike is in docs/spike.md. The companion PHP app is jlugo32/canhook.
Setup
npm install
cp .env.example .env # fill in DB (read-only user), INTROSPECTION_SECRET, INTERNAL_API_SECRET
npm run buildRelated MCP server: webhook-ai-mcp
Run
# HTTP (production, reverse-proxied by OLS as https://canhook.com/mcp):
node dist/index.js
# or via PM2:
pm2 start ecosystem.config.cjs
# stdio (local/CLI, single user): set CANHOOK_TOKEN to a valid access token
CANHOOK_TOKEN=<access_token> node dist/index.js --stdioDeploy
The server is a long-running Node process, not static files. Keep it out of the web
docroot and reverse-proxy /mcp to it.
git pull && npm run build && pm2 reload canhook-mcpTools
Scope | Tools |
| list_endpoints, get_endpoint, list_requests, get_request, list_relay_rules, list_deliveries, get_delivery, get_usage, diagnose_endpoint |
| create_endpoint, update_endpoint, create_relay_rule, replay_request, retry_delivery, delete_endpoint |
Write tools and replay route through the CanHook PHP internal API, so the SSRF guard
and plan limits are enforced in one place. diagnose_endpoint returns a structured
diagnosis (success rate, failures grouped by plain-language cause, top failing
destinations, primary diagnosis) an agent can explain to the user.
Verification
verify/run.sh drives 12 checks against a live local stack (PHP + Node) — OAuth
discovery, PKCE flow, introspection, read/write tools, scope enforcement, IDOR,
SSRF-through-MCP, diagnose, refresh rotation, unauthenticated rejection, and the
key tripwire.
npm test # unit tests (vitest)
npm run conformance # MCP conformance suite vs conformance-baseline.yml (Node >= 22)License
MIT — see LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Send and debug webhooks — applications, endpoints, messages, delivery attempts and replays.
Inspect webhook health, investigate delivery failures, configure sources, and replay events.
Send, retry and monitor webhooks: manage endpoints, event types and API keys (OAuth).
Discover MCP servers and A2A agents; verify, message, post, follow, react, and receive webhooks.
Related MCP Servers
- AlicenseAqualityCmaintenanceSelf-hosted webhook relay and tunnel with Noise NK encryption. Inspect requests, replay webhooks, trace AI pipelines, connect/disconnect tunnels — 13 MCP tools. No tokens or passwords needed.138AGPL 3.0
- FlicenseNot gradedqualityBmaintenanceWebhook management and debugging. Validate signatures, log events, replay, and analyze webhook traffic.-
- AlicenseNot gradedqualityAmaintenanceA webhook management and delivery service with MCP tools for endpoints, deliveries, relay, and incoming webhooks, enabling autonomous agents to send, track, and relay webhooks.MIT
- AlicenseNot gradedqualityBmaintenanceProvides an isolated MCP gateway for SynapXnet AIOps, DataOps, and MLOps evidence-to-remediation workflows, with OAuth validation, scoped tool discovery, persistent approvals, and audit tracking.AGPL 3.0