notifly
Agent setup / Claude Code

Set up Notifly in Claude Code.

The fastest path: copy the sentence and paste it into Claude Code — it runs every step below itself. Or follow the steps by hand.

01 — Add the MCP server

No key goes into the MCP config — the server signs Claude Code in with OAuth 2.1.

bash — add Notifly to Claude Code
claude mcp add --transport http notifly https://api.notifly.io/mcp
02 — Sign in

Claude Code opens the Notifly sign-in and consent screen in the browser when the server first needs it. /mcp is an in-app command you cannot run from a shell: if no sign-in appears, tell the user to type /mcp in Claude Code, pick notifly and choose Authenticate.

On the consent screen you choose what Claude Code may do; it can never exceed your own role.

Checked against Claude Code’s MCP documentation.

03 — Secret key and SDK

Your code authenticates with the environment’s secret key (https://app.notifly.io → choose the environment (Development or Production) in the sidebar → API Keys → Secret Keys). Keep it in a git-ignored .env as NOTIFLY_SECRET_KEY.

MCP tools

  • trigger_workflow

    Fire a workflow for a subscriber (the one write tool; off until an admin enables it)

  • list_workflows

    Search and page through workflows

  • get_workflow

    Fetch a single workflow's details

  • list_subscribers

    Search and page through subscribers

  • get_subscriber

    Fetch a single subscriber

  • list_topics

    Search and page through topics

  • list_notifications

    Read notification history

Server SDKs

Any other language calls the REST API directly — see the API reference.

04 — Verify

Run it from the project root: the first two lines load NOTIFLY_SECRET_KEY from .env and stop if it is empty, then the request prints HTTP 200 and a body containing totalCount. A 401 with the key loaded means the key is wrong or belongs to a different environment. Inside the agent, calling the list_workflows tool proves the MCP sign-in the same way.

bash — verify
if [ -f .env ]; then set -a; . ./.env; set +a; fi
: "${NOTIFLY_SECRET_KEY:?NOTIFLY_SECRET_KEY is not set: store it in .env first (step 1)}"
curl -sS -w "\nHTTP %{http_code}\n" -H "Authorization: ApiKey $NOTIFLY_SECRET_KEY" "https://api.notifly.io/v2/workflows?limit=1"

The agent reads notifly.io/agent-setup/prompt.md — plain markdown you can read too. Optional next step: to wire a Notifly agent into Slack, Microsoft Teams or another channel, follow notifly.io/agents.md.