Guide

Hookfire MCP server

Connect an AI assistant to Hookfire, so it can read your notifications and act on them, as you.

Overview

Hookfire runs an MCP server: a web address an AI assistant such as Claude or ChatGPT connects to. It is for organization admins. Once connected, the assistant can list the organizations where you are an admin, their integrations and your notifications, count the events that arrived, mark notifications read, acknowledge alerts, send test events and mute integrations. It signs in as you and does what an admin can do in the app, nothing more.

On Max It works in the organizations on the Max plan where you are an admin.

Server URL

https://hookfire.app/mcp

Connect

Most clients sign in with your Hookfire account: you paste the server URL, a browser opens, you sign in and approve. Menu names in these apps change from time to time, so look for the nearest match if a step does not line up.

Claude (claude.ai and the desktop app)

  1. Open Settings > Connectors > Add custom connector.
  2. Give it a name, such as Hookfire, and paste the server URL.
  3. Click Connect, sign in to Hookfire and approve.
  4. In a conversation, switch it on from the tools menu.

On Team and Enterprise plans, an owner adds the connector first under Admin settings > Connectors, then each member clicks Connect and signs in with their own Hookfire account. Remote servers are added this way, not in claude_desktop_config.json.

ChatGPT

  1. Turn on developer mode in Settings > Apps & Connectors > Advanced settings. It is available on paid plans, and admins of Business and Enterprise workspaces may need to allow it.
  2. Create a connector with the server URL and OAuth authentication.
  3. Sign in to Hookfire and approve.
  4. In a chat, select the connector, or mention it, so ChatGPT uses its tools.

Claude Code

Add the server from your terminal:

claude mcp add --transport http hookfire https://hookfire.app/mcp

Then run /mcp inside Claude Code and choose to authenticate. A browser opens for you to sign in to Hookfire and approve.

Cursor

Add this to ~/.cursor/mcp.json (or .cursor/mcp.json in a project):

{
  "mcpServers": {
    "hookfire": {
      "url": "https://hookfire.app/mcp"
    }
  }
}

Cursor then offers to sign in. If its built-in browser does not load the sign-in page, copy the link into your normal browser.

VS Code

  1. Open the Command Palette and run MCP: Add Server, then choose HTTP.
  2. Paste the server URL.
  3. Approve the sign-in to Hookfire.

Or add it to .vscode/mcp.json:

{
  "servers": {
    "hookfire": {
      "type": "http",
      "url": "https://hookfire.app/mcp"
    }
  }
}

Other clients, and clients without OAuth

A client that cannot sign in can use a personal token instead. Make one in Settings > MCP server. It is shown once, lasts 90 days and only works with the MCP server. The client sends it as a header:

Authorization: Bearer YOUR_TOKEN

For a client configured with JSON, that looks like this:

{
  "mcpServers": {
    "hookfire": {
      "headers": {
        "Authorization": "Bearer YOUR_TOKEN"
      },
      "url": "https://hookfire.app/mcp"
    }
  }
}

What it can do

These are the tools the server offers, read from the server itself. The assistant picks the ones it needs for what you ask.

  • List organizations

    Reads

    list_organizations

    Lists the organizations this account can work in: the ones on Max where it is an admin, with each one's id, name and plan. Call this first: most other tools take an organization id.

  • List integrations

    Reads

    list_integrations

    Lists an organization's integrations: the connected service, whether it is accepting webhooks, whether its notifications are muted, the events it notifies about with each event's urgency and whether it is paused, and the events that could be switched on.

  • List notifications

    Reads

    list_notifications

    Lists notifications in this account's inbox, newest first, one page at a time. Narrow it to one organization or integration, or to unread ones. Each notification is one event that arrived, with its title, text, urgency and whether it has been read or acknowledged.

  • Get a notification

    Reads

    get_notification

    Gets one notification in full: its title, text, link, link buttons, the values Hookfire read from the payload (such as amount and customer email), and why it was not pushed if it was not.

  • Count events

    Reads

    event_counts

    Counts the events an organization received over the last few days, per integration and event type, leaving out tests. Use it to answer questions like how many payments failed this week.

  • Mark notifications read

    Changes

    mark_notifications_read

    Marks notifications in this account's inbox as read: the ones listed in ids, or every unread one in an organization. Reading a critical alert also acknowledges it, which stops its repeats.

  • Acknowledge an alert

    Changes

    acknowledge_notification

    Acknowledges a critical alert in this account's inbox, so it stops repeating to this account. Others it was sent to answer their own.

  • Send a test event

    Changes

    send_test_event

    Sends an integration's sample payload for one of its switched-on events, delivered exactly like a real one, marked as a test. Refused when the sample does not pass the event's own payload rules.

  • Mute or unmute an integration

    Changes

    mute_integration

    Mutes an integration's notifications for some hours, until unmuted, or unmutes it. A muted integration still records every event in the history; it only stops notifying.

Examples

Things you can ask, and the tools that answer them.

  • "How many payments failed this week?"

    Counts the organization's events per integration and event type, up to 90 days back.

    event_counts

  • "What was in the last Shopify order notification?"

    Finds it in your inbox and opens it, with the values Hookfire read and its link, as the app shows it.

    list_notificationsget_notification

  • "Acknowledge the critical Sentry alert."

    Stops it repeating for you. Others it went to answer their own.

    list_notificationsacknowledge_notification

  • "Mute Sentry for two hours."

    Events are still recorded in the history, they just do not notify.

    list_integrationsmute_integration

  • "Send a test charge.failed to the Stripe integration."

    Delivered like a real event, marked as a test. The event has to be switched on.

    list_integrationssend_test_event

  • "Mark everything in my organization as read."

    Marks every unread notification of that organization as read, in your inbox.

    list_organizationsmark_notifications_read

Permissions and privacy

  • Only organization admins can use it. It acts as you, in the organizations on Max where you are an admin, and does there what an admin can do in the app. Organizations where you are a member, and organizations on other plans, are invisible to it.
  • It reads your own inbox, with the same history limits as the app. It shows a notification as the app does, without the raw webhook payload.
  • It sees the values your notifications show, which can hold your customers' details, such as names and email addresses. Connect only assistants you trust with that.
  • It cannot delete anything: no tool removes an integration, an event or a notification.
  • Each account can make up to 120 requests a minute.

Managing access

  • Everything you have connected is listed under Connected in Settings > MCP server. Revoke disconnects it, and it stops working straight away.
  • A sign-in renews itself: the access token lasts an hour and the client refreshes it. If a client goes 30 days without refreshing, sign in again.
  • A personal token lasts 90 days. After that, make a new one and update the client.

Troubleshooting

The server explains each refusal. Here is what the messages mean.

The Hookfire MCP server is for organization admins on the Max plan, and you are not an admin of an organization on it
Only admins of an organization on Max can connect. Ask an admin of your organization for the admin role, or upgrade an organization you own to Max. The approve screen shows the same notice.
The token is invalid or has expired
Connect again from your client (in Claude Code, run /mcp), or make a new personal token. The API tokens the Hookfire mobile app uses do not work here.
Authentication required: sign in, or send a Hookfire MCP token as a bearer token
The client sent no token. Finish signing in, or check that the Authorization header is set.
This app asked to return to an address it did not register.
Start connecting again from the app.
This app is not registered with Hookfire.
Remove the server from the app, then add it and connect again.
No organization with that id is reachable with this token
The organization is not on Max, or you are a member there rather than an admin. Only organizations where you are an admin can be reached.
Too many requests: slow down and try again shortly
More than 120 requests in a minute. Wait a minute and try again.
ChatGPT does not use the tools
Select the connector in the chat, or mention it by name.

Still stuck? Contact support.