Hookdeck for AI agents
Hookdeck manages, monitors, and secures webhooks and API events, giving teams visibility and control over event delivery. Developers wire it into their own apps and internal tools instead of building the underlying capability from scratch. Connect it once through Arc0, and your agent, or Claude, ChatGPT and Cursor, can use it through one MCP endpoint, limited to what each user approved.
What agents do in Hookdeck.
Check a connection's event count
Count events flowing through a connection to spot an unexpected drop in webhook traffic.
Retry failed events in bulk
Bulk retry a batch of failed webhook events after a downstream outage is resolved.
Disable a source with confirmation
Disable a webhook source only after an engineer confirms the integration is being retired.
105 Hookdeck actions, graded by risk.
Every Hookdeck action is tagged read, write or destructive, so one policy covers the whole app and new actions inherit the right default.
read
51Look things up. Allowed by default.
- hookdeck.get_eventGet Event
- hookdeck.get_eventsGet events
- hookdeck.get_sourceGet Hookdeck Source
- hookdeck.get_requestGet Hookdeck Request
- hookdeck.get_sourcesGet sources
- hookdeck.list_issuesHookdeck: List Issues
- hookdeck.get_attempt2Get Hookdeck Attempt
- hookdeck.get_attemptsGet attempts
- hookdeck.get_bookmarkGet Hookdeck Bookmark
- hookdeck.get_requestsHookdeck: Get Requests
- hookdeck.get_connectionGet Hookdeck Connection
- hookdeck.list_bookmarksList Hookdeck Bookmarks
- hookdeck.get_connectionsHookdeck: Get Connections
- hookdeck.get_destinationGet Hookdeck Destination
- hookdeck.get_integrationGet Hookdeck Integration
- hookdeck.get_issue_countGet Hookdeck Issue Count
write
36Create and change things. Allow, or ask the user first.
- hookdeck.create_sourceCreate Hookdeck Source
- hookdeck.update_sourceUpdate Hookdeck Source
- hookdeck.create_bookmarkCreate Hookdeck Bookmark
- hookdeck.update_bookmarkUpdate Hookdeck Bookmark
- hookdeck.add_custom_domainAdd Custom Domain
- hookdeck.create_connectionCreate Hookdeck Connection
- hookdeck.update_connectionHookdeck Update Connection
- hookdeck.create_destinationCreate Hookdeck Destination
- hookdeck.create_integrationCreate Hookdeck Integration
- hookdeck.update_connection2Update Connection by ID
- hookdeck.update_destinationUpdate Hookdeck Destination
- hookdeck.update_integrationUpdate Hookdeck Integration
- hookdeck.send_source_requestSend Hookdeck Source Request
- hookdeck.create_issue_triggerCreate Hookdeck Issue Trigger
- hookdeck.update_issue_triggerUpdate Hookdeck Issue Trigger
- hookdeck.create_transformationCreate Hookdeck Transformation
destructive
18Delete, cancel or archive. Ask first, or deny outright.
- hookdeck.cancel_eventCancel Hookdeck Event
- hookdeck.delete_sourceDelete Hookdeck Source
- hookdeck.delete_bookmarkDelete Hookdeck Bookmark
- hookdeck.delete_connectionDelete Hookdeck Connection
- hookdeck.delete_destinationDelete Hookdeck Destination
- hookdeck.delete_integrationDelete Hookdeck Integration
- hookdeck.delete_issue_triggerDelete Hookdeck Issue Trigger
- hookdeck.delete_transformationDelete Hookdeck Transformation
- hookdeck.cancel_event_bulk_retryCancel Event Bulk Retry
- hookdeck.cancel_scheduled_retriesCancel Hookdeck Scheduled Retries
- hookdeck.cancel_request_bulk_retryCancel Request Bulk Retry
- hookdeck.disable_sourceDisable Hookdeck Source
- hookdeck.bulk_cancel_eventsBulk Cancel Hookdeck Events
- hookdeck.disable_connectionDisable Hookdeck Connection
- hookdeck.disable_destinationDisable Hookdeck Destination
- hookdeck.disable_issue_triggerDisable Hookdeck Issue Trigger
Hookdeck in three steps.
- 01Your users connect HookdeckThey add their Hookdeck api key on Arc0 Connect, under your brand. It goes straight into the vault.
- 02You set the rulesReads run, writes like “create Hookdeck Source” can wait for the user, and “delete Hookdeck Source” can be denied outright.
- 03Any agent can actYour agent calls Hookdeck through the Arc0 SDK or MCP, and so can Claude, ChatGPT and Cursor. Every call lands on the audit log.
await arc0.policies.set('hookdeck', { read: 'allow', write: 'ask', // create_source destructive: 'deny', // delete_source }) # Claude Code: the same connection, one URL $ claude mcp add --transport http arc0 \ https://mcp.arc0.ai/u/u_8f2
How Hookdeck connects.
Users add their Hookdeck api key on Arc0 Connect. It is encrypted in the vault, never shown to the model, and each user can rotate or revoke it at any time.
The same Hookdeck connection serves your agent over MCP and your own backend over REST and the proxy, so a user connects once. How Arc0 handles credentials →
- AUTH
- API key
- CREDENTIALS
- Per-tenant encrypted vault
- MODEL SEES
- Results only, never credentials
- AUDIT LOG
- Every call, on every plan
Use Hookdeck from any agent.
Hookdeck and Arc0, answered.
Can I use Hookdeck with Claude, ChatGPT or Cursor?
Yes. Connect Hookdeck to Arc0 once, then add your Arc0 MCP URL to Claude, ChatGPT, Cursor, Claude Code or any other remote-MCP client. Each assistant only gets the Hookdeck actions you allow.
How do users connect Hookdeck?
Users add their Hookdeck api key on Arc0 Connect. It is encrypted in the vault, never shown to the model, and each user can rotate or revoke it at any time.
Which Hookdeck actions can my agent take?
105 in total: 51 read, 36 write and 18 destructive, such as “create Hookdeck Source”. Your policies decide which of them each agent may call.
Can I stop my agent from deleting things in Hookdeck?
Yes. Actions like “delete Hookdeck Source” are graded destructive. Set destructive actions to deny, or to ask so the user approves each one, and blocked calls still show up on the audit log.
Can my own backend call Hookdeck too?
Yes. The same Hookdeck connection is available over REST and through the Arc0 proxy, so your product and your agent share one connection per user.
Plug Hookdeck into your agent.
Your users connect Hookdeck once, under your brand. Your agent gets 105 actions behind your policies, with every call on the record.
Free to build · MCP + REST · Audit log on every plan