All posts
Playbook11 min read

Google Search Console MCP connector: ask Claude or ChatGPT about your Search Console data

An MCP connector lets Claude or ChatGPT read your Search Console data when you ask a question, instead of working from a CSV you pasted in. This post compares three ways to connect: export and paste, a local server, and a hosted remote server. It shows what you can ask and what comes back, and covers the data limits no connector removes: delays, anonymised searches and row caps. It ends with how SearchOps connects Search Console, Google Analytics and your local data in one connection.

Person working on a laptop at a wooden desk in a bright office

A Google Search Console MCP connector lets Claude or ChatGPT read your Search Console data when you ask a question, so "which pages lost clicks last month, and for which searches?" gets answered from your real numbers instead of a CSV you exported and pasted. You can build one yourself, run someone else's code on your own machine, or connect a hosted server that already handles Google sign-in. With SearchOps it is one server address: add it as a custom connector in Claude or a custom MCP server in ChatGPT, sign in, and ask. This post explains how the options differ, what you can realistically ask, and where Search Console data itself has limits no connector can remove.

What MCP is, in one paragraph

The Model Context Protocol is an open standard for connecting AI applications to outside systems: data sources, tools and ready-made workflows.1 An MCP server publishes a list of tools, each with a name, a description and the inputs it accepts. When you ask Claude or ChatGPT something, the assistant reads that list, decides which tool fits, calls it, and writes its answer from what comes back. For Search Console, that means the assistant can ask Google for clicks, impressions, click-through rate and average position, grouped and filtered the way your question needs, rather than guessing or asking you to upload a spreadsheet.

Three ways to connect Search Console to Claude or ChatGPT

Search for "Search Console MCP" and you will find a mix of open-source projects, hosted services and tutorials. They fall into three groups, and the differences matter more than the brand names.

Export and paste
CSV or screenshot into chat
Local server
Code on your machine
Hosted remote server
A URL and a sign-in
SetupNone, but repeated for every questionGoogle Cloud project, API enabled, OAuth client or service account, a config filePaste a server address, sign in, approve
Works in the Claude and ChatGPT appsYes, as an attachmentUsually desktop or code tools onlyYes, including Claude on mobile once connected
Data freshnessAs old as your exportLive from the APILive from the API
Row ceiling1,000 rows from the Search Console interfaceWhatever the code requests, up to the API limitsWhatever the server allows per call, with paging
Who holds your Google tokensNobodyYou, on your machineThe hosted service
Team useEveryone exports their ownEach person sets it upEach person connects to the same account
The 1,000-row interface limit is documented in Google's Search Console performance data deep dive.

Export and paste

The Search Console interface exports up to 1,000 rows.2 For a one-off question about a small site this is fine, and it involves no new access to your Google account. It falls down quickly: the export is a snapshot, the assistant cannot ask a follow-up question of Google, and you repeat the export every time.

A local MCP server with your own credentials

Several open-source servers wrap the Search Console API. You create a Google Cloud project, enable the Search Console API, set up an OAuth client or a service account with access to your properties, and point a desktop assistant or code editor at the server through a config file. This gives you full control and keeps tokens on your own machine. The cost is setup time, maintenance when packages change, and the fact that it usually lives on one computer. It is also code you are running with access to your Google data, so read it before you install it.

A hosted remote server

A remote MCP server lives at a web address. In Claude you add it as a custom connector by its URL and typically sign in through OAuth, and remote connectors then work across Claude clients, including the mobile apps.3 In ChatGPT you add it under Plugins as a custom MCP server, enter the URL and authentication, and create it as a plugin.4 No Google Cloud project, no config file. The trade-off is trust: the service holds the Google connection on your behalf, so check what it can read, what it can change and how you disconnect it.

How SearchOps does it

SearchOps is a hosted remote MCP server at https://searchops.co/api/mcp. You connect Search Console to SearchOps once, inside the app, and every assistant you link reads through that connection. There is no separate Search Console server to set up in Claude or ChatGPT, and no Google Cloud project of your own.

How each app connects

  • •Claude (web, desktop, and mobile once added): a custom connector that signs in with your SearchOps account through OAuth.
  • •ChatGPT: a custom MCP server you add yourself under Plugins, with OAuth. SearchOps is not listed in the ChatGPT directory, so you add it by its address.
  • •Claude Code: add the server, then run /mcp to sign in, or send an API key instead.
  • •Cursor, VS Code and other MCP apps: the same address with an API key in an Authorization header.

What it can and cannot do

  • •Reads Search Console, Google Analytics, Business Profile performance, geo-grid scans, reviews, citations, competitors and LLM Visibility for the account.
  • •Can add and update tasks on your Tasks board.
  • •If you leave the drafts permission ticked, can save review reply and post drafts for a person to publish.
  • •Cannot publish to Google, run scans, spend credits, delete anything or edit your Business Profile.

Only an account owner or admin can approve a connection, and each connection sees that one account. Connected apps and API keys are listed under Developers in SearchOps, where you can disconnect an app or revoke a key at any time. Reading data uses no credits.

The Search Console tools

Sites

list_search_console_sites

Each site, whether it can be queried, and the locations it belongs to.

Query

query_search_console

Clicks, impressions, CTR and position by query, page, country, device, date or search appearance. Up to 1,000 rows per call, with paging.

Insights

get_search_console_insights

Last 30 days against the 30 before, branded against non-branded, biggest gains and losses, near-wins and six months of visibility.

query_search_console defaults to the last 28 days of complete data, grouped by query, and ends three days ago so the most recent, still-changing days are left out unless you ask for them. You can filter by text in the query (including excluding your brand name), by page, by three-letter country code such as gbr, usa or irl, and by device, and choose web, image, video, news or Discover results. Responses are cached for five minutes, so asking the same thing twice does not hit Google twice.

The same connection carries Google Analytics (list_analytics_properties, query_google_analytics and get_analytics_ai_referrals) and the location data SearchOps already holds: Business Profile calls, website clicks and directions, geo-grid scans across Google Maps, Google Search and Google AI Mode, reviews and LLM Visibility. That is the real difference from a Search Console-only connector. Search Console tells you about the search before the click. Analytics tells you what the visitor did after it. The location data tells you how the Business Profile is doing on the map, which is where most local searches end.

Questions worth asking, and what comes back

These all work in plain English. The assistant picks the tools; you do not need to name them.

  1. 1

    "Which searches brought the most clicks to our site in the last 28 days, excluding our brand name?"

    query_search_console grouped by query with your brand filtered out. You get a table of searches with clicks, impressions, CTR and average position, and a short read of which ones matter.
  2. 2

    "What gained and lost the most this month, and why might that be?"

    get_search_console_insights. It returns the last 30 days against the 30 before, the queries and pages that moved most, and searches that held their position but lost clicks, which often points to a change on the results page rather than on your site.
  3. 3

    "Which pages are sitting just off page one for searches with real volume?"

    The insights tool's striking-distance list, or a query by page and query filtered to average positions just outside the top results. Useful for deciding which page to improve next.
  4. 4

    "How do people search for us: near me, a town name, or a question?"

    The insights tool groups searches by how people phrased them. For a local business this shows whether customers search by place or by need.
  5. 5

    "Our service page gets clicks. Do those visitors enquire?"

    Search Console for clicks to the page, then Google Analytics for sessions and key events on that landing page. One question, both sides of the click.
  6. 6

    "Add a task to rewrite the title on the page that lost the most clicks."

    One of the few writes a connection can make. The task lands on the SearchOps Tasks board for the right location, and the assistant tells you what it added.

Claude also lists the ready-made SearchOps prompts, such as a weekly client update, diagnosing a drop and a monthly report, so you can start from one instead of a blank message.

What Search Console data cannot tell you

A connector gives the assistant faster access to Search Console. It does not change what Search Console records. Three limits matter most, and a good answer should respect all three.

It is two to three days behind

Collected data is normally available in two to three days, and a site newly added to Search Console can take up to a week to show any.5 The most recent days can still change.6 That is why SearchOps ends the default window three days ago. If you ask about "yesterday", expect partial or missing numbers.

Many searches are anonymised

Searches that are not made by more than a few dozen people over two to three months are left out of the query rows to protect searchers' privacy. They still count in the site totals, and they are dropped whenever a filter is applied.2 For local businesses this gap is often large, because so many searches are specific to a street, a town or a problem. In our own checks on client sites, the named searches accounted for well under half of total clicks on some sites.

The API returns top rows, not every row

One API request returns up to 25,000 rows, and the API does not guarantee every row, only the top ones.6 Across a day, the API can return up to 50,000 rows per site per search type.2 SearchOps keeps each MCP call to 1,000 rows so answers stay readable, and tells the assistant when there is more so it can ask for the next page. For most local sites that is plenty. For a large estate, ask narrower questions (one page, one country, one month) rather than "every query ever".

Set it up

  1. 1

    Connect Search Console in SearchOps

    Sign in to SearchOps, connect your Google account and choose the Search Console sites to link. Link each site to its locations so the assistant knows which business a site belongs to. Add Google Analytics the same way if you want the after-the-click side.
  2. 2

    Add SearchOps in Claude

    Add a custom connector, name it SearchOps and paste https://searchops.co/api/mcp. Claude's own guide covers where the setting lives on your plan.3 Choose Connect, sign in to SearchOps and approve.
  3. 3

    Or add it in ChatGPT

    Open Plugins, choose Add, then Add custom MCP server. Name it SearchOps, paste the same address, leave authentication on OAuth and create it as a plugin.4 Sign in to SearchOps and approve, then type @SearchOps in a chat. Custom plugins depend on your ChatGPT plan, and a workspace admin may need to allow them.
  4. 4

    Or use Claude Code, Cursor or VS Code

    In Claude Code, run claude mcp add --transport http searchops https://searchops.co/api/mcp, then /mcp to sign in.7 For other apps, create an API key under Developers in SearchOps and send it as a Bearer token in the Authorization header.
  5. 5

    Check the approval screen

    It shows where the connection returns to, what it can read, that it can add and update tasks, and a separate tick box for saving drafts. Untick drafts if you only want reads.
  6. 6

    Ask a first question

    "List my Search Console sites" is a good test. If the assistant says it has no SearchOps tools, refresh the tools in the app's connector settings and start a new chat.

Step-by-step help and troubleshooting are in Connect the MCP server. If you are building your own integration rather than chatting, the same data is available through the SearchOps REST API.

Before you connect anything

  • Decide which assistant your team actually uses. A hosted server is the only option that works in the Claude and ChatGPT apps without a terminal.
  • Check who holds your Google tokens and how you revoke access, for any connector you consider.
  • Prefer read-only tools. Any write a connector can make should be listed on its approval screen.
  • Link each Search Console site to the right location, so answers about one branch do not mix in another.
  • Ask for totals before breakdowns, and expect query rows to add up to less than the total.
  • Leave the last three days out of any comparison.
  • Keep map visibility and website position apart. They are different measures.

Frequently asked questions

Is SearchOps in the ChatGPT or Claude directories?

Not yet. You add it yourself by its server address, which takes about a minute in either app.

Do I need a Google Cloud project or an API key from Google?

No. You connect Search Console to SearchOps with your Google sign-in, and SearchOps makes the API calls. An API key from SearchOps is only needed for apps that cannot sign in, such as Cursor or VS Code.

Can the assistant change my Search Console settings or my website?

No. The Search Console tools only read. Across the whole connection, the only changes possible are adding and updating SearchOps tasks and, if you allow it, saving review reply and post drafts that a person publishes.

Why do the query rows not add up to the total clicks?

Anonymised searches are counted in totals but not listed as rows, and they are dropped when you filter.2 Ask for totals with no grouping to see the full figure.

Which plan do I need?

The MCP server and API are included on Pro, Agency and Enterprise. See pricing for what each plan includes.

Does asking questions use credits?

No. A connection reads data and cannot run scans or spend credits.

The short version

A Search Console MCP connector is worth having if you ask Search Console questions more than once a month. Export and paste is fine for a one-off. A local server suits a developer who wants full control. A hosted server is the practical choice for a team that works in Claude or ChatGPT. SearchOps gives you that hosted server, with Search Console, Google Analytics and your local data in one connection, reads only apart from tasks and drafts, on Pro and above. Whatever you use, ask for totals first and remember the data is a few days behind. See the MCP server page for every tool and app, or compare plans to get started.

Keep reading

References

Mechanism claims are cited to the Model Context Protocol, Anthropic, OpenAI and Google documentation. The observation about anonymised searches on local sites is from our own checks in October 2026. Links last checked 1 Nov 2026.

  1. 1.Model Context Protocol. What is the Model Context Protocol (MCP)?. Describes MCP as an open-source standard for connecting AI applications such as Claude or ChatGPT to data sources, tools and workflows. Checked 1 Nov 2026.
  2. 2.Google Search Central Blog (October 2022). A deep dive into Search Console performance data filtering and limits. Anonymised queries are left out of the query rows to protect privacy but counted in totals, and are dropped whenever a filter is applied. Interface exports stop at 1,000 rows; the API can return up to 50,000 rows per day per site per search type. Checked 1 Nov 2026.
  3. 3.Anthropic. Get started with custom connectors using remote MCP. Steps for adding a custom connector by its remote MCP server URL, the OAuth sign-in, and that remote connectors work across Claude clients including the mobile apps. Checked 1 Nov 2026.
  4. 4.OpenAI. Building MCP servers for plugins and API integrations. Adding a custom MCP server in ChatGPT as a plugin, with an OAuth flow, and the statement that custom MCP servers are not developed or verified by OpenAI. Checked 1 Nov 2026.
  5. 5.Google Search Console Help. About Search Console data. Collected data should normally be available in 2 to 3 days, and a newly added site can take up to a week to show data. Checked 1 Nov 2026.
  6. 6.Google for Developers. Search Analytics: query. rowLimit runs from 1 to 25,000 (default 1,000), the API returns top rows rather than every row, and the most recent data can be incomplete. Checked 1 Nov 2026.
  7. 7.Anthropic. Connect Claude Code to tools via MCP. The claude mcp add --transport http command, and /mcp to sign in to remote servers that use OAuth. Checked 1 Nov 2026.

Start tracking your real rankings today

See where you actually rank on Google Maps, not where Google tells you. Pick the plan that fits and start tracking from day one.