Skip to content

Run your link building from Claude, Cursor or Codex

Outlink AI's MCP server lets the assistant you already work in check on your campaigns, read the conversations, work through the approval queue and pause or resume a campaign — through the same rules the dashboard enforces, with sending always labelled as sending.

Endpoint https://www.outlinkai.com/api/mcp
What it's for

Your program, in the window you're already working in

Ask in plain language; the assistant picks the tools. A few things people use it for:

“How's outreach going?”

Campaigns running and paused, what's waiting on you, replies, live and lost links, and today's sends against your limits — plus each mailbox's warm-up, reputation and SPF/DKIM/DMARC.

“Walk me through the queue”

Read each held draft, publisher reply or guest-post article in full with its recipient, then approve it, edit it, reject it, or resolve a reply without sending.

“Pause the fintech campaign”

Pause a running campaign or resume a paused one, check which links changed or were lost, and read yesterday's digest.

Connect

Two steps: a key, then one config entry

1. In Outlink AI, an owner or admin opens Settings → Team → MCP server & API keys, names a key and picks Read only or Read & act. Copy it — it's shown once. 2. Add the server to your client below. Keep the key in an environment variable rather than in a file you commit.

Claude Code

Add it from your terminal. Add --scope user to make it available in every project.

export OUTLINK_API_KEY="olk_…"
claude mcp add --transport http outlink https://www.outlinkai.com/api/mcp \
  --header "Authorization: Bearer $OUTLINK_API_KEY"

To share the setup in a repository without the key, put the server in .mcp.json with the header "Authorization": "Bearer ${OUTLINK_API_KEY}" — Claude Code expands it from your environment.

Cursor

In ~/.cursor/mcp.json (every project) or .cursor/mcp.json (one project):

{
  "mcpServers": {
    "outlink": {
      "url": "https://www.outlinkai.com/api/mcp",
      "headers": { "Authorization": "Bearer ${env:OUTLINK_API_KEY}" }
    }
  }
}

Codex

In ~/.codex/config.toml. Codex sends the key from OUTLINK_API_KEY as the bearer token.

[mcp_servers.outlink]
url = "https://www.outlinkai.com/api/mcp"
bearer_token_env_var = "OUTLINK_API_KEY"

Claude Desktop and claude.ai

Add a custom connector with the endpoint URL, choose No sign-in for authentication, and under Request headers add authorization with the value Bearer olk_…. Anthropic lists request headers as a beta that not every account has yet.

Without it, Claude Desktop can connect through the open-source mcp-remote bridge (it needs Node.js) in claude_desktop_config.json:

{
  "mcpServers": {
    "outlink": {
      "command": "npx",
      "args": ["mcp-remote", "https://www.outlinkai.com/api/mcp",
               "--header", "Authorization:${AUTH_HEADER}"],
      "env": { "AUTH_HEADER": "Bearer olk_…" }
    }
  }
}

Any other MCP client

Point it at the endpoint with a bearer header. The server is stateless: no session id, and every request carries the key.

URL        https://www.outlinkai.com/api/mcp
Header     Authorization: Bearer olk_…
Transport  Streamable HTTP (POST, JSON responses)
Tools

16 tools, grouped by what they can do

Every tool reads or acts on the key's own workspace only. Your client sees each tool's read-only and destructive hints and can ask you before running anything that changes or sends.

Read Read only

Change nothing. Any key can call them.

  • get_statusCampaigns running and paused, approvals waiting, threads needing you, links live, and today’s send usage.Any key
  • get_sending_healthEach mailbox’s connection, sends today vs its cap, warm-up, reputation, SPF/DKIM/DMARC and pauses.Any key
  • list_campaignsEvery campaign with its status, quality bar and funnel counts.Any key
  • get_campaignOne campaign’s pipeline funnel, top prospects and discovery pool.Any key
  • list_pending_approvalsOutreach drafts, replies and guest-post content waiting for a human decision.Any key
  • get_approvalThe full text of one waiting item, who it goes to, and exactly what approving it will do.Any key
  • list_threadsOutreach conversations, newest first, with reply classification and a needs-you flag.Any key
  • get_threadEvery message in one thread plus any pending drafted reply.Any key
  • list_placementsEarned links with their live, changed, lost or pending verification state.Any key
  • get_digestThe daily digest: event totals, replies by category, escalations, breakers and link losses.Any key

Change your workspace Changes

Change state inside the workspace without emailing anyone. They need a read & act key whose creator is an owner or admin.

  • pause_campaignStop a running campaign’s discovery and sending. Nothing is deleted.Read & act key · owner or admin
  • reject_approvalDiscard a waiting draft, reply or content item. Nothing is sent.Read & act key · owner or admin
  • resolve_replyEscalate, decline, close the deal as lost, or add the sender to do-not-contact. Nothing is sent.Read & act key · owner or admin
  • undo_sendCancel an approved email inside its 15-second hold and put it back in the queue.Read & act key · owner or admin

Can send email Sends email

Can put an email in front of a real person outside your workspace. Same key requirement, and your client is told to ask you first.

  • resume_campaignRestart a paused campaign — scheduled emails start going out again under your caps.Read & act key · owner or admin
  • approve_and_sendApprove a draft, reply or guest-post delivery. This sends a real email to a real person.Read & act key · owner or admin
Safety model

An assistant gets exactly the reach you give it

Outreach goes to real people from your own mailboxes, so the server is built to make every send deliberate and every change traceable.

  1. One workspace per keyA key reaches the workspace it was created in and nothing else. An id from another workspace reads as “not found”, even if the person who made the key manages both.
  2. It acts as you, with your current roleEvery request re-checks the key creator’s membership. Demoted to member, the key can only read; removed from the workspace, it stops working.
  3. Read only, or read & actYou choose when you create a key. A read-only key can see status, queues and conversations and cannot change anything.
  4. The dashboard’s rules, not new onesApprovals run through the same decision code as the dashboard and the app: the per-reply action allowlist, the content checks on edited text, client sign-off for campaigns that require it, and every mailbox’s daily cap and send window.
  5. Sending is labelled as sendingapprove_and_send and resume_campaign are marked as reaching people outside the workspace, so your client can stop and ask you before running them. The server also tells the assistant to show you the full text and the recipient, and to get your go-ahead for each send.
  6. 15 seconds to change your mindEvery approved send is held for 15 seconds before it can go out. undo_send cancels it in that window and puts the item back in the queue.
  7. Rate limited per keyUp to 120 requests a minute per key, and no more than 30 changes in any 10 minutes, so a looping assistant can only do so much before you notice.
  8. Out of reachNo tool can reach billing, mailbox credentials, account settings or team membership, and a key can’t create or revoke keys. Those stay in the dashboard.
  9. Shown once, stored hashedA key is displayed once, when you create it, and stored only as a hash. Revoke it in Settings → Team and it stops working on the next request. The card shows when each key was last used.
  10. On the recordEvery change made through a key, and every refused attempt, is written to your workspace’s event history with the tool and the key that made it.
MCP questions

Frequently asked

What is an MCP server?
MCP (Model Context Protocol) is an open standard for connecting AI assistants to tools and data. Outlink AI's MCP server lets an assistant such as Claude, Cursor or Codex read your workspace and act on it through the tools listed on this page.
Can the assistant send email without me?
Only with a read & act key, and only through approve_and_send or by resuming a paused campaign. Both are marked as sending, the server instructs assistants to confirm each send with you, and every approved send is held 15 seconds so undo_send can cancel it. A read-only key cannot send at all. Whether your client pauses to ask before a tool runs is a client setting, so keep its approval prompts on for these tools.
Who can create an API key?
A workspace owner or admin, in Settings → Team under “MCP server & API keys”. The key belongs to that workspace and acts as the person who created it.
Does it support OAuth sign-in?
No. The server authenticates with API keys sent as a bearer token. Clients that can only connect through OAuth cannot connect to it.
What happens if my key leaks?
Revoke it in Settings → Team; it stops working on the next request. A leaked read-only key exposes your workspace's outreach data but cannot change or send anything, which is why read only is the default choice.

Connect your assistant in a couple of minutes

Create a read-only key first to look around; switch to a read & act key when you want the assistant to work the queue with you.