Rankbase MCP Server

Let Claude and other AI assistants query your App Store keyword rankings and install data directly.

Overview

The Model Context Protocol (MCP) is an open standard that lets AI assistants call external tools. Rankbase ships a hosted MCP server, so you can ask Claude questions like "which keywords drove installs for my app last month?" and it will pull live answers straight from your Rankbase data: no CSV exports, no copy-pasting dashboards.

The server is remote (nothing to install or run yourself) and speaks the streamable HTTP transport:

https://rankbase.io/mcp

All tools are read only and expose the same data as the REST API: app discovery, keyword rankings (including per-click position, country, search type, and device), and per-shop install sources. Works with Claude Code, Cursor, the Claude API's MCP connector, and any other MCP client that supports custom headers.

Authentication

The MCP server uses the same team-scoped API keys as the REST API. Requests must include your key as a bearer token:

Authorization: Bearer rb_your_api_key

Create a key in your Rankbase dashboard under API Keys. Keys are scoped to your team, so the assistant only ever sees your own apps. Treat the key like a password: anyone holding it can read your ranking data.

OAuth sign-in is not available yet, so clients that only support OAuth-based remote connectors (such as custom connectors on claude.ai) cannot connect at the moment. Use Claude Code, Cursor, or the Claude API connector below, which all support bearer tokens.

Connect: Claude Code

One command:

claude mcp add --transport http rankbase https://rankbase.io/mcp \
  --header "Authorization: Bearer rb_your_api_key"

Then just ask. Claude Code discovers the tools automatically:

> Which keywords brought the most installs to my app in the last 30 days?

Connect: Cursor

Add the server to .cursor/mcp.json (project) or ~/.cursor/mcp.json (global):

{
  "mcpServers": {
    "rankbase": {
      "url": "https://rankbase.io/mcp",
      "headers": {
        "Authorization": "Bearer rb_your_api_key"
      }
    }
  }
}

Most other MCP clients that support remote servers with custom headers use an equivalent configuration.

Connect: Claude API

Building your own agent? The Claude API's MCP connector can call the Rankbase server directly from a /v1/messages request, with no MCP client code needed on your side:

curl https://api.anthropic.com/v1/messages \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "anthropic-beta: mcp-client-2025-11-20" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-opus-4-8",
    "max_tokens": 4096,
    "mcp_servers": [{
      "type": "url",
      "url": "https://rankbase.io/mcp",
      "name": "rankbase",
      "authorization_token": "rb_your_api_key"
    }],
    "tools": [{ "type": "mcp_toolset", "mcp_server_name": "rankbase" }],
    "messages": [{
      "role": "user",
      "content": "List my apps and summarize keyword performance for the first one."
    }]
  }'

Available Tools

list_apps

Lists the Shopify apps tracked by your team. Assistants call this first: it returns the numeric Rankbase app id that the other tools require (this is not the same as your Shopify app id). No arguments. The response matches GET /apps.

get_keyword_rankings

App Store search keywords that brought merchants to a listing, with per-click position records (position, date, locale, country, search type, and device), average and latest organic position, and importance scoring. The response matches GET /apps/{appId}/keywords.

ArgumentTypeRequiredDescription
app_idintegeryesThe Rankbase app id from list_apps.
daysintegernoLook-back window, 1–365. Defaults to 90. Ignored when a custom range is given.
start_date / end_datestringnoCustom range (YYYY-MM-DD), both required together.
installedbooleannofalse (default): searches that led to Add App button clicks. true: only searches that led to confirmed installs (requires the shopify_app_install event).
search_typestringnoall (default), search (organic only), or search_ad (paid only).

get_install_sources

Looks up where specific stores discovered and installed your app: source classification (App Store Search, Direct, Organic Search, Google Ads, LLM (AI), and more), the keyword or referrer, date, locale, country, and device. Up to 50 stores per call, batched into a single Google Analytics query. The response matches GET /apps/{appId}/installs.

ArgumentTypeRequiredDescription
app_idintegeryesThe Rankbase app id from list_apps.
shop_urlsarray of stringsyesBare .myshopify.com domains, e.g. examplestore.myshopify.com. Maximum 50 per call.

Example Prompts

Once connected, these all work out of the box:

  • "Which keywords drove the most installs for my app in the last 30 days?"
  • "Compare my organic vs paid App Store search traffic for the last quarter."
  • "What share of my install clicks came from mobile devices?"
  • "Where did examplestore.myshopify.com discover my app before installing?"
  • "Which keywords am I ranking worse than position 5 for, sorted by potential?"
  • "Write a weekly summary of my keyword movement I can post in Slack."

Errors & Limits

  • Authentication failures return HTTP 401 (missing or invalid key) or 403 (inactive subscription) before any tool runs.
  • Tool-level problems (unknown app id, app not connected to Google Analytics, invalid arguments, expired GA authentication) are returned as readable error messages inside the tool result, so the assistant can see what went wrong and adjust, usually by calling list_apps again.
  • Rate limit: 60 requests per minute per client IP, shared with the REST API. Exceeding it returns HTTP 429 with a Retry-After header.

Want the raw endpoints instead?

REST API Docs Product Documentation FAQ
© 2026 Rankbase. App Store keyword ranking and analytics for Shopify app developers.