SEO with AI agents: running SEO research over MCP
An AI agent can do most of the legwork in SEO, from auditing a site to tracking rankings, once it can call tools that return real search data. Connect it to an SEO data source over MCP, give it one job at a time with a clear deliverable, make it price expensive runs before it starts them, and check every number against the tool call it came from.
Updated 27 September 2026
In short
- Without a data source, an agent can only guess at search volumes, rankings and crawl errors. MCP is how you give it one.
- Hand the agent loops that have a clear finish: crawl, triage, fix, re-crawl, or research, filter, save, track. Keep the decisions about positioning, publishing and outreach.
- Start with the data you already own. Search Console and Analytics show what is happening on your site, and reading them costs nothing.
- Put a ceiling on spend: a balance check first, a cost estimate before rank checks, and your go-ahead before anything large.
- Treat every number in the answer as a claim. Ask which tool call it came from, and whether it is measured or a third-party estimate.
What an agent adds to SEO work
SEO is a lot of repetitive lookups joined by a few judgment calls. Pull the queries a page ranks for, check the titles on forty pages, look up volumes for two hundred keywords, run the same rank check every week. An agent is good at the lookups and at keeping its place in a long task. It is also patient with the joins nobody wants to do by hand, such as matching the pages that get search impressions against the pages that lead to signups.
What it cannot do on its own is see search data. A language model doesn't know how many people searched for a phrase last month, where your page ranks today, or which of your URLs return a 404. Asked anyway, it produces a plausible number. The fix is a tool that returns the real figure, and an instruction to use it.
With the tools in place, you describe the outcome, such as "find the pages closest to page one and tell me what to change". The agent makes the calls, and you read a short answer with the evidence attached. Your time goes on the decision rather than on the exports.
How MCP connects an agent to search data
Model Context Protocol is an open standard for connecting AI applications to external systems. A server publishes a list of tools, each with a name, a description and a schema for its arguments. A client such as Claude, ChatGPT, Cursor or Codex reads that list and decides which tool fits the task in front of it.
For SEO, that means the agent calls research_keywords with your seed topics instead of inventing volumes, and run_site_audit on your domain instead of guessing at broken links. The results come back as rows the agent can sort, filter and quote.
Two properties of a tool list matter more than its length:
- It has to write, not only read. An agent that can read a dashboard but can't start a crawl or create a rank tracker still needs you to click through the setup, which is the part you wanted to hand off.
- It has to say what things cost. A description that says "costs credits" or "free, reads stored data" lets the agent plan a task on a budget instead of finding the bill afterwards.
IndexZero's server exposes 54 tools in the groups an agent works through: workspace, reports, keyword research, domain and backlink research, local search, rank tracking, site audits, your own measured data, AI visibility. The tool catalog lists all of them with the JSON Schema for every argument and a flag for whether each one costs credits. It needs no account, so you can read it before connecting anything.
Connecting an agent
Setup takes a few minutes. The server lives at one URL. Clients that support OAuth need nothing else: they register themselves, open a browser window, and you approve access to your workspace. In Claude Code it is one command:
claude mcp add --transport http indexzero https://app.indexzero.site/mcp
Clients without a browser, such as a CI job or an agent running on a server, send an API key in an x-api-key header instead. Keys reach the MCP endpoint only, never account or billing settings. The connection guides cover Claude, ChatGPT, Cursor, Codex and other clients.
Then check the connection with a question that has a known answer:
List my IndexZero projects and tell me my plan and remaining credit balance.
The agent should call list_projects and whoami, and answer with the projects you see in the dashboard. If it answers without calling a tool, it isn't connected, and nothing it says after that comes from your data.
Give the agent a project and some context
Almost every tool works on a project: a domain plus a market, meaning a country and a language. Keyword volumes, rankings and local results all depend on the market, so a project set to the United States and English returns different numbers from one set to Germany and German. Create the project in the dashboard, or have the agent call create_project with your domain.
Then tell it what the business is. get_project_context returns what the workspace already knows about a project: what the business does, who the customer is, what success looks like, positioning, tone, constraints, what has been tried, and which research has already been paid for. update_project_context writes to it. An agent that reads this at the start of a session doesn't ask you the same questions twice, and it judges keywords against your customer instead of an imagined one.
Read the project context for example.com. If what the business does, who the customer is, or the current goal is missing, ask me, then save my answers to the project context.
What to hand over, and what to keep
Hand the agent jobs that are long, repetitive and have a clear finish. Keep the ones that come down to judgment, taste or relationships.
Good jobs for an agent
- Auditing a site, grouping the issues by the fix they need, and re-crawling after the fixes ship. See how to run a site audit with an AI agent.
- Expanding a few seed topics into scored keywords, dropping the ones you can't win, and saving the rest. See keyword research with an AI agent.
- Building a rank tracker from the saved keywords, pricing it, and reporting what moved. See rank tracking with an AI agent.
- Asking ChatGPT, Claude, Gemini and Perplexity the questions your buyers ask, and recording who they recommend. See how to check whether AI assistants mention your brand.
- Joining Search Console against Google Analytics to find pages that get search traffic and rarely convert.
- Sizing up a competitor: estimated traffic, top pages, the keywords they rank for that you don't, and who links to them.
Keep these yourself
- What the site is for and who it serves. The agent can suggest keywords. Whether a keyword matches what you sell is your call.
- Publishing. An agent can draft a title or a section, but a person should read it before it ships. Google's spam policies list "using generative AI tools or other similar tools to generate many pages without adding value for users" as an example of scaled content abuse.
- Outreach. An agent can find the sites that link to competitors. Deciding who to contact, and what to offer them, is relationship work.
- Anything hard to undo: deleting pages, changing redirects, disavowing links. Ask for a plan, read it, then approve it.
IndexZero's tools follow the same split. They measure and diagnose, and none of them writes to your site or your CMS. When an agent fixes an issue, it does so in your codebase with its own editing tools, and you review the change.
The working loop
Work in this order. Each step narrows what the next one has to buy.
- Orient.
whoamifor the plan and balance,list_projectsfor the project,get_project_contextfor what is already known. All free. - Read measured data. With Search Console connected,
get_striking_distanceandget_search_console_performanceshow what is already happening, andinspect_urlsshows what Google has indexed. These read your own data and cost nothing. - Buy what measured data can't tell you: volumes for topics you don't rank for yet, or a competitor's top pages. These spend credits. A crawl of your own site spends credits only on its Lighthouse sample.
- Act. Save keywords, create a tracker, fix issues in your code. Saving and creating are free. Rank checks cost credits, and so does an audit's Lighthouse sample.
- Record.
save_reportkeeps the finding as a page you can reopen, andupdate_project_contextlogs what was bought so the next session doesn't buy it again. Both free. - Re-check. Re-crawl after the fixes, or read the tracker a week later. This step tells you whether any of it worked.
Measured data first is the most useful habit to put in a prompt. Search Console reports what actually happened: the clicks, impressions and average position of your pages in Google. Keyword volumes, domain traffic and backlink counts are third-party estimates. They are good for comparing options and poor as a statement of anyone's real traffic.
Search Console's position figure has its own caveat. Google calculates it as the topmost position of your link, averaged across searches, and notes that for a specific search "your position might be different than the average because of many variables, such as your search history, location, and so on."
Keeping the spending in check
Live search data costs money wherever it comes from, and the big SEO suites start above $100 a month. With an agent, the useful question is what one session can spend, because an agent working through a long task will repeat an expensive call if nothing stops it.
IndexZero prices every paid call in credits: the provider's price plus a published 28% markup, at 1,000 credits to the dollar, rounded up per call. Anything that reads data you already own or have already paid for is free. That covers Search Console, Google Analytics and PostHog reports, saved keywords, audit results, tracker history, cost estimates and saved reports.
Four habits keep a session inside a budget:
- Ask for the balance first.
whoamireturns the plan, the monthly allowance and what is left, andget_product_infoanswers questions about plans, limits and which tools cost credits from the live catalog instead of the model's memory. - Price rank checks before running them.
estimate_rank_tracker_costis free and exact for a manual run, andrun_rank_trackeraccepts amaxCostCreditsceiling. If the estimate is above it, the run is refused and nothing is charged. - Batch the research.
research_keywordstakes up to five seeds in one call andget_keyword_metricstakes up to 700 keywords, and the tool descriptions steer the agent toward one call with several seeds. - Say where to stop. "Show me the list before saving anything" or "tell me the cost and wait" turns a long run into checkpoints.
The server also tells every connected agent, in its instructions, to confirm with you before any single action expected to cost more than about 2,000 credits. A careful client follows that. Saying it in the prompt as well costs nothing.
For scale: keyword research costs roughly 30 to 100 credits per seed, and a weekly scheduled rank check of 100 keywords on desktop and mobile at a depth of 20 results costs 1,080 credits a month. The free plan includes 2,000 credits a month, and Starter ($29 a month) includes 30,000.
Writing prompts that work
A good SEO prompt reads like a brief to a contractor: which site, what you want back, what not to do yet, and where to stop. Compare two versions of the same request:
Do some keyword research for my site.
For example.com, research keywords from these seeds: invoice software, invoicing for freelancers. Drop anything with difficulty above 40, group the rest by intent, and show me the 20 best with volume and difficulty. Don't save anything until I pick.
The second names the site, and with it the project's market. It gives the agent a filter it can apply to numbers the tool returns, says what the answer should look like, and puts a checkpoint before the one step that changes anything.
- Name the site, and the project if you have several.
- Say what you want back: a ranked list, a table, one recommendation. Given an open question, an agent returns everything it found.
- Put filters in terms the tools return: volume, difficulty, position, severity. "Keywords we can win" means nothing to a tool. "Difficulty under 30" does.
- Ask for sources. "Say which tool each number came from" makes an invented number easy to spot.
- Say what not to do yet: don't save, don't create a tracker, don't edit the site.
The SEO prompts for AI agents page has 12 more, each with the tools it calls and whether it spends credits. The agent skills pack goes further: 10 step-by-step workflows an agent follows for audits, keyword research, rank tracking and more.
Checking what the agent tells you
Treat the agent's answer as a draft with citations. Four checks catch most problems.
Did it call a tool?
Most clients show tool calls in the transcript. A search volume, a ranking or an issue count with no tool call behind it is a guess. Ask where it came from. If the answer is the model's own knowledge, discard the number.
Was the work finished?
Site audits run in the background. run_site_audit returns an id straight away, and the crawl takes minutes. An agent that reads get_audit_issues before get_audit_status reports completed is reading partial results, and can report a confident "no issues found" about a crawl that hasn't finished. Rank checks work the same way: run_rank_tracker returns a run id, and the positions arrive later in get_rank_tracker.
Is it measured or estimated?
Left alone, an agent will put your Search Console clicks and a third-party traffic estimate in the same sentence. Ask it to label each figure. Measured numbers describe your site. Estimates are for comparing options.
Where did a claim about a results page come from?
IndexZero has no tool that returns Google's organic results page for an arbitrary query. Rank trackers report your own positions, not the page around them, and the site audit is built to crawl your own site. So anything the agent says about the layout of a results page, or the copy on a competitor's page, came from its own web browsing. That can be useful. It isn't IndexZero data, and the answer should say so.
Keep the work, not only the chat
A finding that lives only in a chat transcript is gone when the session ends. save_report stores a complete HTML document on the project. You can reopen it, print it, or publish it as a public link for someone without an account. Ask for one at the end of any session that led to a decision:
Write up what we found as a one-page report on the project: the three changes to make this week, the evidence for each, and what we'll check next time. Save it as a report.
update_project_context does the same for durable facts and for the research log, so the next session starts where this one ended.
Where this approach falls short
- History. IndexZero buys live data when you ask for it. It has no years-deep archive of rankings or backlinks to look back through, and a tracker's history starts with its first check.
- Results pages on demand. No tool returns the full organic results page for any query you like.
- Other people's sites. The site audit is built for your own origin. Domain and backlink tools cover competitors with third-party data.
- Writing to your site. The tools diagnose. Changes happen in your codebase or CMS, through the agent's own editing tools and your review.
- Real-time monitoring. Crawls and rank checks take minutes, and scheduled checks run daily at most.
If your work depends on years of backlink history or a very large link index, a suite like Ahrefs or Semrush is the better tool for that part of it. The SEO tool cost calculator compares what each would cost for your number of sites and people.
Where to start
Connect an agent, create a project for your site, and connect Search Console in the dashboard. Then ask a question that costs nothing to answer:
Using my Search Console data for example.com, list the queries where I rank between positions 5 and 20, with the page ranking for each. Pick the five pages most likely to move up with a better title or an extra section, and say why for each.
When that's done, pick the workflow that matches your next question: a site audit, keyword research, rank tracking, or AI visibility. To spot-check a single page first, the free SEO checker runs the audit's on-page checks against one URL with no account.
Frequently asked questions
- What is an SEO MCP server?
- A server that exposes SEO data and actions as Model Context Protocol tools, so an AI client such as Claude, ChatGPT or Cursor can call them. Instead of reading a dashboard, the agent calls a tool like
research_keywordsand gets rows of data back. - Can ChatGPT or Claude do SEO without any tools?
- They can explain SEO and draft copy. They can't see search volumes, current rankings or your site's crawl errors, so any such figure they give without a tool call is a guess.
- Do I need to code to use an SEO agent?
- No. Claude and ChatGPT connect to an MCP server from their settings. Code comes in when the agent fixes issues in your site's codebase, which works best in a coding agent such as Claude Code, Cursor or Codex. On Pro and above, SAM, the assistant inside IndexZero, calls the same tools with no client to set up.
- How much does it cost to run SEO through an agent?
- The agent spends the same credits the dashboard does. Reading your own Search Console and Analytics data is free, keyword research costs roughly 30 to 100 credits per seed, and a rank check's exact cost is available before it runs. The free plan includes the MCP server and 2,000 credits a month.
- Will Google penalize content an agent helped write?
- Google's guidance on generative AI content says AI can be useful for researching a topic and adding structure to original content, and asks for a focus on accuracy, quality and relevance. It also warns that generating many pages without adding value for users may violate its spam policy on scaled content abuse.
Run it with your agent
Connect an agent to IndexZero
Every step in these guides is a tool call an agent can make. Connect Claude, ChatGPT, Cursor or Codex to IndexZero's MCP server and paste the prompts as they are. The free plan includes the MCP server and 2,000 credits a month.
Check one page first, free
- SEO checkerRun the on-page checks from IndexZero's site audit against one URL: titles, meta descriptions, headings, canonicals, indexability, redirects and response time.
- SEO tool cost calculatorCompare the monthly cost of Ahrefs, Semrush and IndexZero for your number of sites and teammates, and whether you need AI visibility or agent access.
The workflows in this guide
- How to run a site audit with an AI agentHave an agent crawl your site, wait for the crawl to finish, triage the issues by severity, fix them in your codebase, and re-crawl to confirm.
- Keyword research with an AI agentStart from the queries you already rank for, expand a few seeds into scored keywords, cut the ones you can't win, and save the rest for tracking.
- Rank tracking with an AI agentChoose what to track, price a check before it runs, cap what a run may spend, and read position changes without over-reading noise.
- How to check whether AI assistants mention your brandMeasure how often ChatGPT and Google's AI Overviews mention you against competitors, see which sources they cite, and compare four assistants on the questions your buyers ask.