MCP Hub
Back to servers

SurfRank MCP Server

Enables AI assistants to access SurfRank's AI visibility analytics platform through 24 tools. It allows agents to run AI-visibility reports, research keywords, track competitors, and manage projects directly from chat interfaces.

glama
Updated
Apr 19, 2026

SurfRank MCP Server

Let your AI agent run AI-visibility reports, research keywords, and track competitors on SurfRank — directly from the chat window.

npm version license node

This package exposes the SurfRank public API as Model Context Protocol (MCP) tools, so any MCP-compatible AI assistant — Claude Desktop, Claude Code, Cursor, Windsurf, ChatGPT MCP connectors, and others — can call SurfRank on your behalf.


What is SurfRank?

SurfRank measures how visible your brand is inside AI answers (ChatGPT, Perplexity, Gemini, Claude, Grok, DeepSeek, Meta AI). It runs your tracked keywords against each engine, scores your mentions against competitors, and surfaces the content opportunities that would move the needle.

What is MCP?

The Model Context Protocol is an open standard from Anthropic that lets AI agents discover and call external tools. Install this server once, and your agent gets 24 new abilities — no plugin APIs, no OAuth dance, no glue code.


What you can ask your agent once this is connected

💬 "Create a SurfRank project for surfrank.ai in the SaaS industry, then track these 10 keywords…"

💬 "What did my latest AI visibility report show? Which engines are missing my brand?"

💬 "Run a quick test for competitor.com and compare it to my score."

💬 "List my top 5 content opportunities and draft articles for the highest-impact ones."

The agent picks the right tool, calls the SurfRank API with your key, and replies in natural language. Credits come out of your SurfRank account at the same rate as direct API calls.


Requirements

  • Node.js 18 or newer (required by the MCP SDK).
  • A SurfRank API key on the Pay As You Go plan. Generate one at app.surfrank.ai/api-management.
  • An MCP-compatible client (see the Configuration section).

Install

Run ad-hoc with npx — no install needed:

npx -y @surfrank/mcp-server

Or install globally:

npm install -g @surfrank/mcp-server

Configuration

Pick your client below and paste the snippet into its MCP config file.

Claude Desktop

Edit your Claude Desktop config file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "surfrank": {
      "command": "npx",
      "args": ["-y", "@surfrank/mcp-server"],
      "env": {
        "SURFRANK_API_KEY": "sr_your_key_here"
      }
    }
  }
}

Restart Claude Desktop. You should see surfrank appear in the MCP servers menu.

Cursor

Edit ~/.cursor/mcp.json (or use Settings → MCP → Add server):

{
  "mcpServers": {
    "surfrank": {
      "command": "npx",
      "args": ["-y", "@surfrank/mcp-server"],
      "env": {
        "SURFRANK_API_KEY": "sr_your_key_here"
      }
    }
  }
}

Claude Code

claude mcp add surfrank -- npx -y @surfrank/mcp-server
export SURFRANK_API_KEY=sr_your_key_here

Windsurf

Edit ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "surfrank": {
      "command": "npx",
      "args": ["-y", "@surfrank/mcp-server"],
      "env": { "SURFRANK_API_KEY": "sr_your_key_here" }
    }
  }
}

Available tools

The server exposes every SurfRank public-API endpoint as a tool (24 in total). Your agent discovers them automatically — you don't need to list them in your prompt.

CategoryTools
Projectslist_projects, get_project, create_project, update_project, delete_project
Keywordslist_keywords, add_keyword, add_keywords_bulk, delete_keyword
Reportstrigger_report, list_reports, get_report, get_latest_analyses
Quick Testrun_quick_test, list_quick_tests, get_quick_test, select_quick_test_keywords
Keyword Researchresearch_keyword, list_keyword_research, get_keyword_research
Competitorslist_competitors, add_competitor, delete_competitor
Opportunitieslist_opportunities

Each tool maps 1:1 to a REST endpoint under https://api.surfrank.ai/api/v1/public/*.


Scoped API keys

If you generate a project-scoped API key, the MCP server can only operate on that project. Any tool call that references a different project ID is rejected with a 403 from the SurfRank API, and the error surfaces verbatim in the agent's response.

This is the recommended setup when you're connecting a single workspace or a teammate to a single brand.


Credit usage

Credits are deducted from your SurfRank account per the same pricing as direct API calls:

OperationCost
Quick test1 credit flat
Keyword research0.5 × number of engines
Report trigger0.3 × keywords × engines
Everything else (list / get / update)free

Every tool response includes a credits object so your agent (and you) can track usage in real time.


Environment variables

VariableRequiredDefaultPurpose
SURFRANK_API_KEYYour API key (sr_…)
SURFRANK_API_URLhttps://api.surfrank.ai/api/v1/publicOverride for staging / local development

Debugging

Use the official MCP inspector to poke at the server directly — useful when onboarding a new client or diagnosing a connection issue:

SURFRANK_API_KEY=sr_your_key_here \
  npx @modelcontextprotocol/inspector npx @surfrank/mcp-server

The inspector opens a browser UI where you can list tools and call them manually, exactly as an AI agent would.


Security notes

  • API keys are shown once on creation and stored as SHA-256 hashes on SurfRank's servers. If you lose a key, revoke and regenerate it — it can't be recovered.
  • Credentials stay in your local MCP config file. This package never writes them to disk and never phones home.
  • Each API key is rate-limited to 60 requests per minute. Exceeding it returns HTTP 429.

Links


License

MIT © SurfRank Pte. Ltd. — see LICENSE.

Reviews

No reviews yet

Sign in to write a review