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.

Developer toolsAPI keyMCP + RESThookdeck.com
AUDIT LOG · HOOKDECKPOLICY: acme-support
09:41:07 · claude · u_8f2read
hookdeck.list_issues
Hookdeck: List Issues✓ allowed · 212ms
09:41:08 · claude · u_8f2read
hookdeck.get_event
Get Event✓ allowed · 164ms
09:41:09 · claude · u_8f2write
hookdeck.create_source
Create Hookdeck Source✓ approved · approved by user
09:41:12 · claude · u_8f2destructive
hookdeck.delete_source
Delete Hookdeck Source✕ blocked · policy: deny
EVERY HOOKDECK CALL, ON THE RECORD
01 · USE CASES

What agents do in Hookdeck.

01

Check a connection's event count

Count events flowing through a connection to spot an unexpected drop in webhook traffic.

02

Retry failed events in bulk

Bulk retry a batch of failed webhook events after a downstream outage is resolved.

03

Disable a source with confirmation

Disable a webhook source only after an engineer confirms the integration is being retired.

02 · ACTIONS

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

51

Look things up. Allowed by default.

  • hookdeck.get_event
    Get Event
  • hookdeck.get_events
    Get events
  • hookdeck.get_source
    Get Hookdeck Source
  • hookdeck.get_request
    Get Hookdeck Request
  • hookdeck.get_sources
    Get sources
  • hookdeck.list_issues
    Hookdeck: List Issues
  • hookdeck.get_attempt2
    Get Hookdeck Attempt
  • hookdeck.get_attempts
    Get attempts
  • hookdeck.get_bookmark
    Get Hookdeck Bookmark
  • hookdeck.get_requests
    Hookdeck: Get Requests
  • hookdeck.get_connection
    Get Hookdeck Connection
  • hookdeck.list_bookmarks
    List Hookdeck Bookmarks
  • hookdeck.get_connections
    Hookdeck: Get Connections
  • hookdeck.get_destination
    Get Hookdeck Destination
  • hookdeck.get_integration
    Get Hookdeck Integration
  • hookdeck.get_issue_count
    Get Hookdeck Issue Count
+ 35 MORE

write

36

Create and change things. Allow, or ask the user first.

  • hookdeck.create_source
    Create Hookdeck Source
  • hookdeck.update_source
    Update Hookdeck Source
  • hookdeck.create_bookmark
    Create Hookdeck Bookmark
  • hookdeck.update_bookmark
    Update Hookdeck Bookmark
  • hookdeck.add_custom_domain
    Add Custom Domain
  • hookdeck.create_connection
    Create Hookdeck Connection
  • hookdeck.update_connection
    Hookdeck Update Connection
  • hookdeck.create_destination
    Create Hookdeck Destination
  • hookdeck.create_integration
    Create Hookdeck Integration
  • hookdeck.update_connection2
    Update Connection by ID
  • hookdeck.update_destination
    Update Hookdeck Destination
  • hookdeck.update_integration
    Update Hookdeck Integration
  • hookdeck.send_source_request
    Send Hookdeck Source Request
  • hookdeck.create_issue_trigger
    Create Hookdeck Issue Trigger
  • hookdeck.update_issue_trigger
    Update Hookdeck Issue Trigger
  • hookdeck.create_transformation
    Create Hookdeck Transformation
+ 20 MORE

destructive

18

Delete, cancel or archive. Ask first, or deny outright.

  • hookdeck.cancel_event
    Cancel Hookdeck Event
  • hookdeck.delete_source
    Delete Hookdeck Source
  • hookdeck.delete_bookmark
    Delete Hookdeck Bookmark
  • hookdeck.delete_connection
    Delete Hookdeck Connection
  • hookdeck.delete_destination
    Delete Hookdeck Destination
  • hookdeck.delete_integration
    Delete Hookdeck Integration
  • hookdeck.delete_issue_trigger
    Delete Hookdeck Issue Trigger
  • hookdeck.delete_transformation
    Delete Hookdeck Transformation
  • hookdeck.cancel_event_bulk_retry
    Cancel Event Bulk Retry
  • hookdeck.cancel_scheduled_retries
    Cancel Hookdeck Scheduled Retries
  • hookdeck.cancel_request_bulk_retry
    Cancel Request Bulk Retry
  • hookdeck.disable_source
    Disable Hookdeck Source
  • hookdeck.bulk_cancel_events
    Bulk Cancel Hookdeck Events
  • hookdeck.disable_connection
    Disable Hookdeck Connection
  • hookdeck.disable_destination
    Disable Hookdeck Destination
  • hookdeck.disable_issue_trigger
    Disable Hookdeck Issue Trigger
+ 2 MORE
03 · HOW IT WORKS

Hookdeck in three steps.

  1. 01Your users connect HookdeckThey add their Hookdeck api key on Arc0 Connect, under your brand. It goes straight into the vault.
  2. 02You set the rulesReads run, writes like “create Hookdeck Source” can wait for the user, and “delete Hookdeck Source” can be denied outright.
  3. 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.
POLICY.TS
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
04 · AUTH AND DATA

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
05 · WORKS WITH

Use Hookdeck from any agent.

Claude
ChatGPT
Cursor
Codex
VS Code
OpenAI Agents SDK
Claude Agent SDK
Vercel AI SDK
Mastra
LangGraph
07 · FAQ

Hookdeck and Arc0, answered.

Q01

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.

Q02

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.

Q03

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.

Q04

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.

Q05

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.

Get started

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