Docs

Documentation

RankReactor VS Code and GitHub Copilot

Add the RankReactor SEO MCP server in VS Code’s .vscode/mcp.json servers object and use it from GitHub Copilot Chat.

Every RankReactor plan, including Free, can connect an assistant and create a project API key. Free can generate its one lifetime article through an assistant (the same article as the dashboard). Ongoing generation needs a paid plan. UGC video needs Pro or Ultra.

  • Free includes 1 lifetime article, shared across the dashboard and any assistant. After that article is used, ongoing generation needs a paid plan.
  • Starter is $39/month and includes a 3-day trial.
  • Pro is $79/month.
  • Ultra is $159/month.
  • Read tools work on every plan. Refreshing metrics through an assistant needs Starter, Pro, or Ultra. Queuing a UGC video needs Pro or Ultra.

Visual Studio Code reads MCP servers from a JSON file. The VS Code format uses a top-level servers object — not mcpServers. Point a remote HTTP server at https://www.rankreactor.ai/mcp and authenticate with OAuth or an Authorization header.

Where to put the file

  • Workspace, VS Code format: .vscode/mcp.json in the project. This is the servers shape shown below.
  • User profile: run MCP: Open User Configuration from the Command Palette to edit the user mcp.json. Those servers apply to every workspace.
  • Command Palette: MCP: Add Server walks through adding a server to Workspace or Global.
  • A portable .mcp.json at the repo root (with mcpServers) also works across some Copilot tools. For this guide, use .vscode/mcp.json and servers.

Remote HTTP with OAuth

VS Code’s MCP configuration reference uses type: http and url for Streamable HTTP (it can fall back to SSE). On first start, VS Code can open a browser for OAuth. Paste the project key on Connect RankReactorAI and choose Allow.

{
  "servers": {
    "rankreactor": {
      "type": "http",
      "url": "https://www.rankreactor.ai/mcp"
    }
  }
}

The same reference documents a headers object for authentication. Send the project key as Authorization: Bearer ….

{
  "servers": {
    "rankreactor": {
      "type": "http",
      "url": "https://www.rankreactor.ai/mcp",
      "headers": {
        "Authorization": "Bearer <your-project-key>"
      }
    }
  }
}

VS Code can also prompt for the value with an inputs entry (promptString, password: true) and reference it from headers. That is the official way to avoid writing the key into a shared file. Replace the placeholder only in a private user config if you paste the key directly.

Use it in GitHub Copilot Chat

  1. Save .vscode/mcp.json (or the user MCP config).
  2. Start the server from the mcp.json editor actions, MCP: List Servers, or by sending a chat message if autostart is enabled.
  3. Trust the workspace or the MCP server when VS Code asks.
  4. Open Chat (Copilot) and use Agent mode so the model can call tools.
  5. Select Configure Tools in the chat input if you need to toggle RankReactor tools on.
  6. Prompt with a RankReactor task, for example “List the RankReactor articles for this project.”

Create a project API key

  1. Sign in and open the project you want the assistant to use.
  2. Open API Key in the dashboard sidebar.
  3. Choose Generate. If a key already exists, choose Regenerate only when you intend to replace it.
  4. Copy the key now. RankReactor shows the full value once.
  5. Paste it on the Connect RankReactorAI page (OAuth) or into the client’s Authorization header.

Available tools

This connection is scoped to one project. Do not ask the assistant to guess another site. Write tools ask for confirmation first.

  • List projects (list_projects) — List the RankReactor project this API key can use. The key is scoped to exactly one project, so the result is that single site. Example: “Which RankReactor site is this connection using?”
  • Get reactor status (get_reactor_status) — Read this site's plan, quotas, and recent article or video activity. Example: “How many articles are left on this project today?”
  • Get metrics (get_metrics) — Read stored search and site health numbers for this RankReactor project. Example: “Show the stored search metrics for this site.”
  • Refresh metrics (refresh_metrics) — Refresh one stored metric for this project (analytics, technical SEO, website audit, or keywords), subject to that metric's plan limit. Confirmation required. Example: “Refresh analytics for this project if that metric is due.”
  • List articles (list_articles) — List generated articles for this RankReactor project. Example: “List the generated articles for this site.”
  • Generate article (generate_article) — Queue an article for this project. Uses the same article limits as the RankReactor dashboard. Confirmation required. Example: “After I confirm, queue an article for the keyword running shoes.”
  • List UGC videos (list_ugc_videos) — List generated short videos for this RankReactor project. Example: “List UGC videos for this project.”
  • Generate UGC video (generate_ugc_video) — Queue a short product video for this project. Uses the same monthly video limits as the RankReactor dashboard. Confirmation required. Example: “After I confirm, queue a short product video about our trail runner.”

Troubleshooting

  • 401, invalid, or revoked key — the server returns 401 when no Authorization header is sent, or when the token is invalid or revoked. Generate a key on the matching project and update the client.
  • Regenerated key — the previous key stops working as soon as you confirm Regenerate. Paste the new key into OAuth consent or the Bearer header.
  • Revoke — Revoke on the API Key page stops the current key immediately. Existing OAuth and header connections are refused until you generate a new key.
  • Wrong project or domain — each key belongs to one project. A domain that names a different site is rejected. Create a key on the project you want, or omit the domain so the keyed site is used.
  • Plan-gated tools — Free can generate its one lifetime article through an assistant; that count is shared with the dashboard. Ongoing article generation needs a paid plan. Refreshing metrics through an assistant needs Starter, Pro, or Ultra. Queuing a UGC video needs Pro or Ultra. Read tools still work on Free.
  • Article limit — Free has one lifetime article across the dashboard and assistants. Paid plans have a daily article cap (UTC). When a paid daily cap is reached, the tool reports that the article limit has been reached and when it resets.
  • Video limit — Pro and Ultra have a monthly UGC video cap (UTC). When it is reached, the tool reports that the monthly video limit has been reached.
  • Metrics cooldown — Starter, Pro, and Ultra can refresh one metric at a time, then wait that metric’s interval. Analytics, technical SEO, and website audit wait 7 days on Starter, 1 day on Pro, and 8 hours on Ultra. Keywords wait 21 / 14 / 7 days. Free does not refresh metrics through the assistant.

VS Code-specific notes

  • Do not copy a Cursor mcpServers file into .vscode/mcp.json. VS Code’s workspace format is servers.
  • If the server never starts, run MCP: List Servers, select RankReactor, and choose Show Output.
  • Workspace MCP servers follow Workspace Trust. Restricted mode will not start .vscode/mcp.json.
  • Agent Host sessions read portable .mcp.json natively and receive forwarded .vscode/mcp.json servers that do not require an interactive secret prompt.

Need help?

Email help@rankreactor.ai or reach out on X at @rankreactorai if Copilot Chat never lists RankReactor tools. Include the project domain and which assistant you used.

Questions? Email help@rankreactor.ai or reach out on X at @rankreactorai and include your project domain.