Dev.to AI 🤖 Ai 👁 0 📖 3 min read

Give Your AI Agent Real SEO Data: Keyword Volume, Live SERPs, Backlinks and Trends Over MCP

Ask an AI assistant "where does my site rank for best crm for startups?" and it will either guess or refuse. LLMs don't have search volumes, today's Google results or backlink counts. They make them up. The fix is to giv

Ask an AI assistant "where does my site rank for best crm for startups?" and it will either guess or refuse. LLMs don't have search volumes, today's Google results or backlink counts. They make them up. The fix is to give the agent tools that fetch real data, and the Model Context Protocol (MCP) is now the standard way to plug those tools into Claude, Cursor, VS Code and agent frameworks.

This post covers:

  1. what the SEO MCP server does (8 tools),
  2. connecting it to Claude Desktop / Cursor in one config block,
  3. calling it from Python with the official MCP SDK,
  4. what a typical session costs.

The 8 tools

Tool What the agent gets
keyword_metrics Google search volume, CPC, competition, keyword difficulty, intent and 12-month trend for up to 100 keywords
google_serp Live Google results (top 10-100) for any country and device, your domain's position, AI Overview text and sources, People Also Ask
domain_overview Organic traffic estimate, ranked-keyword count, backlinks and referring domains for up to 100 domains
ranked_keywords Up to 100 keywords a domain ranks for, with position, volume and URL
backlinks Up to 100 backlinks or referring domains for a domain or page
google_trends Interest over time and by region for up to 5 terms
youtube_search Ranked YouTube results with views, channel and date
youtube_video Likes, comments, subscriber count, tags, plus the transcript if you ask

All tools are read-only. There are no logins, cookies or proxies on your side: the data comes from licensed SEO data feeds.

Connect it to Claude Desktop or Cursor

{
  "mcpServers": {
    "seo-data": {
      "url": "https://steady-scrape-1--seo-data-mcp-server.apify.actor/mcp",
      "headers": { "Authorization": "Bearer YOUR_APIFY_TOKEN" }
    }
  }
}

That's it. The server runs in Apify Standby mode: it starts on the first request (a few seconds of cold start in our tests) and stays warm while you work.

Then just ask:

  • "Where does example.com rank for project management software in the UK on mobile?"
  • "Compare organic traffic and referring domains for these 5 competitors."
  • "Is interest in pickleball paddles growing? Show 5-year Google Trends vs tennis racket."

From Python

import asyncio, os, httpx2
from mcp import ClientSession
from mcp.client.streamable_http import streamable_http_client

URL = "https://steady-scrape-1--seo-data-mcp-server.apify.actor/mcp"

async def main():
    headers = {"Authorization": f"Bearer {os.environ['APIFY_TOKEN']}"}
    async with httpx2.AsyncClient(headers=headers, timeout=60) as hc:
        async with streamable_http_client(URL, http_client=hc) as (r, w, *_):
            async with ClientSession(r, w) as s:
                await s.initialize()
                res = await s.call_tool("google_serp", {"keyword": "best crm for startups",
                                                        "target_domain": "hubspot.com"})
                print(res.structured_content["targetPosition"])

asyncio.run(main())

In our tests most tools answered in 1-5 seconds. A top-100 SERP takes about 15 s and Google Trends about 14 s, because both are fetched live.

What it costs

You pay per successful call. Errors, invalid arguments and empty results are free, and there's no compute charge on top.

Session Cost (Free plan)
Rank check: 5 keywords, top 10 each $0.035
Keyword research: 100 keywords $0.395
Competitor audit: 10 domains + 2 ranked-keyword lists + 1 backlink list $0.340
YouTube research: 2 searches + 5 videos, 3 with transcripts $0.161

Per tool: $0.006 per 10 SERP results, $0.039 per 10 keywords, $0.111 per 10 domains, $0.071 per ranked-keywords call, $0.082 per backlinks call, $0.035 per Trends call, $0.006 per 20 YouTube results, $0.018 per video (+$0.018 for a transcript), and $0.005 once per session. Paid Apify plans get 5-15% off the tool prices.

Agents can loop, so the server has guardrails. It refuses calls that would push you past the maximum charge you set for a session, before fetching anything. It also limits a session to 60 calls a minute.

Try it

Disclosure: we (SteadyScrape) built this server and get paid when it's used.

SEO MCP Server: Keyword, SERP & Backlink Data (steady-scrape/seo-data-mcp-server) is on the Apify Store. Paste the config above, ask your agent an SEO question, and check the billing field in each response to see exactly what was charged.

No MCP client yet? Run the Actor normally with input like {"calls": [{"tool": "google_serp", "arguments": {"keyword": "seo mcp server"}}]} and each call becomes one dataset row. Our post-publish test of exactly that took one SERP page plus the session fee, about $0.011.

📰 Read the original article on Dev.to AI

Originally published by Dev.to AI. Aggregated on AIWithGhost for educational purposes — full credit and traffic to the original publisher.