MCP server
Connect Claude Code, Cursor, or a compatible MCP client to RankPine — your SEO pipeline as native agent tools.
RankPine ships a hosted MCP (Model Context Protocol) server. Point any MCP client that supports bearer authentication at it and your AI agent gets RankPine's capabilities as native tools — no HTTP glue code, no SDK.
- Endpoint:
https://rankpine.com/api/mcp - Transport: Streamable HTTP (stateless)
- Auth: the same API keys as the REST API, sent as
Authorization: Bearer rp_live_…
Setup
Claude Code
claude mcp add rankpine https://rankpine.com/api/mcp \
--transport http \
--header "Authorization: Bearer rp_live_your_key_here"Cursor
{
"mcpServers": {
"rankpine": {
"url": "https://rankpine.com/api/mcp",
"headers": { "Authorization": "Bearer rp_live_your_key_here" }
}
}
}Any other client
Use a client that supports Streamable HTTP and a custom Authorization header.
The server is stateless, so no session juggling. It supports protocol versions
2025-11-25, 2025-06-18, 2025-03-26, and 2024-11-05.
OAuth sign-in is not currently supported. A connector that requires OAuth or cannot send a bearer header cannot connect directly. Do not enter an API key as an OAuth client secret. Create a separate key for each assistant in Settings → API keys; revoke it there to remove access.
Available tools
The server exposes 40 tools. Existing tool names remain supported.
| Tools | What they do |
|---|---|
whoami, list_sites, get_site, get_subscription | Account, accessible sites, subscription and article usage |
get_website_settings | Writing, image and scheduling settings, competitors and audiences |
update_content_settings, update_image_settings | Change supplied writing/image defaults without changing billing |
list_integrations | CMS connection status and support for updating existing posts |
list_keywords, get_keyword, list_keyword_clusters | Keyword metrics, provenance, clusters, SERP results, ranking history and related articles |
import_keywords, suggest_keywords, generate_keywords | Import, suggest and research keywords |
refresh_keyword_metrics, delete_keywords | Queue enrichment or delete unused keywords; article-linked keywords are retained |
list_articles, get_article | Article metadata, full Markdown/HTML, language versions and current edit revision |
generate_article | Queue article generation |
list_scheduled_articles, schedule_article, reschedule_article, unschedule_article | Read and manage the content calendar |
update_article | Edit title, slug, meta description and Markdown; automatically rescore |
edit_article_with_ai, get_article_rewrite, apply_article_rewrite | Request, review and accept an AI rewrite proposal |
check_article_seo_score, check_seo_score | Score a saved article or pasted Markdown without changing it |
regenerate_featured_image | Queue a new featured image |
publish_article, sync_article_to_cms, get_publish_status | Publish, update a supported CMS post and inspect delivery |
get_search_console_status, sync_search_console | Inspect and refresh Search Console |
get_search_performance, get_top_search_queries, get_article_search_performance | Site and article search performance |
get_ai_visibility, get_backlinks_overview | Stored AI visibility results and backlink exchange activity |
Example workflows
- “List my sites, then show the upcoming calendar for example.com.”
- “Import these three keywords and schedule them on free days next week.”
- “Read this article and rewrite its introduction. Show me the proposed changes before saving.”
- “Score my five latest articles and explain the checks they fail.”
- “Update this draft's meta description, then publish it to my connected CMS.”
- “Show the ranking history and competing pages for this keyword.”
- “Compare this article's search performance with our stored AI visibility results.”
Editing and publishing
Read get_article first and pass its updated_at as expected_updated_at to
update_article or apply_article_rewrite. Stale edits are rejected. An AI
rewrite is a proposal: poll get_article_rewrite, inspect proposed_markdown,
then pass the proposal's id to apply_article_rewrite. If the saved body has
changed since the rewrite started, request a new proposal.
Edits recompute sanitized HTML, SEO checks, word count, sources and internal
links. They do not publish. For a ready article, use publish_article. For an
already published article, use sync_article_to_cms if list_integrations
reports update support. Both require an active site and a connected CMS.
Publishing is asynchronous. Poll get_publish_status and check the latest
delivery's timestamp and outcome; an old successful delivery does not confirm a
new sync. A queued operation is not evidence that content is live.
Calendar behavior
Import new keywords before scheduling them. schedule_article takes a keyword
id and a future ISO timestamp with a timezone, such as 2026-10-03T08:00:00Z.
It enforces the site's daily capacity using UTC dates. Scheduling does not spend
an article credit immediately; generation later does, and autopilot may publish
that article.
reschedule_article follows the app's calendar behavior: a single movable
occupant is swapped with the source article. Other occupied days are refused.
unschedule_article archives an ungenerated planned original and skips its
keyword so automatic refill does not immediately restore it. Calling
schedule_article explicitly can restore it.
Things agents should know
- Generation is asynchronous.
generate_articlereturns immediately; a full article takes several minutes. Pollget_articleforready,published, orfailed; autopilot can publish after generation. - Access follows your account's content permissions. The key can reach owned sites and sites shared with you as a content member/admin. Billing-only membership does not grant content access. Tools do not expose integration credentials or change subscriptions, purchases, or paid add-ons.
- Writing and image settings are patches. Only supplied fields change;
nullclears nullable fields. New defaults affect future generation. - AI rewrites, metric enrichment and images require an active site and use the app's operation limits. Keyword metric refresh can reuse fresh provider cache entries. AI visibility reads stored data and does not purchase or run the add-on.
- Credits are real. Each generated article consumes one of the site's ~30
monthly credits — check
get_subscriptionbefore batch-generating. - One generate can produce several articles, but costs one credit. If
get_sitereportsadditional_languages, the article is also localised into each of them — those are covered by a paid add-on, not metered. The versions are separate articles sharing atranslation_group_id;list_articlesreturns one row per version, so filter bylanguageif you want just one. - Rate limits are shared with the REST API (120/min, 10k/day per key).
- Errors come back as tool results, not protocol failures, so your agent can
read the reason (
quota_exceeded,rate_limited, …) and adapt.
Try it: connect the server and ask your agent — “check my RankPine sites and suggest ten keywords for the weakest one, then queue the two best as articles.”
Billing & usage
Read subscription status and per-site article usage with the RankPine Billing API. Review response fields and an authenticated example request.
Team members
Invite people to collaborate on a site — assign roles, manage access, and let them work on your subscription without a plan of their own.