notifly
Agent setup / VS Code + GitHub Copilot

Set up Notifly in VS Code + GitHub Copilot.

The fastest path: copy the sentence and paste it into VS Code + GitHub Copilot — 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 VS Code + GitHub Copilot in with OAuth 2.1.

  • .vscode/mcp.json (this workspace)
json — MCP config
{
  "servers": {
    "notifly": {
      "type": "http",
      "url": "https://api.notifly.io/mcp"
    }
  }
}
02 — Sign in

VS Code handles the OAuth flow and opens the Notifly sign-in in the browser the first time the server starts.

On the consent screen you choose what VS Code + GitHub Copilot may do; it can never exceed your own role.

Checked against VS Code + GitHub Copilot’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.