list_propertiesLABSCO SUMMARY
Search Console is the spine, and the field data, lab runs and crawls hang off it.
The tools that read your own numbers need Google authorization, but audit_live_site, crawl_site_seo, analyze_page_seo and inspect_robots_txt work from a URL alone, so a site you have no Search Console access to is still auditable. Everything that changes state — properties, sitemaps, Indexing API submissions — is off until you set SEO_AUDIT_ENABLE_WRITE_TOOLS, which is the one decision worth making before you install.
What it is
An SEO audit server built on Google Search Console, with 30 tools spanning search analytics and period comparison, URL inspection, the Indexing API, sitemaps, Core Web Vitals, PageSpeed Insights and local Lighthouse, robots.txt and on-page checks, site crawls and keyword analysis. Forked from AminForou/mcp-gsc and extended.
What you get
- get_search_analytics and get_advanced_search_analytics query clicks, impressions, CTR and position with filtering and dimensions; get_performance_overview and get_search_by_page_query narrow that down, and compare_search_periods puts two periods side by side
- inspect_url and batch_inspect_urls return indexing status, crawl info, canonical and robots for one URL or for many
- request_indexing, batch_request_indexing, request_removal and check_indexing_notification submit and remove URLs through Google's Indexing API
- get_sitemaps, submit_sitemap and delete_sitemap manage the sitemaps registered in Search Console; analyze_sitemap validates a sitemap document and inspect_robots_txt reads robots.txt
- get_core_web_vitals returns LCP, FID, CLS, INP and TTFB from the Chrome UX Report
- get_pagespeed_insights and run_lighthouse_audit return category scores and failing-audit summaries, with Lighthouse taking over automatically when PageSpeed Insights errors or its quota fails
- analyze_page_seo extracts on-page signals and ranks findings by severity, crawl_site_seo crawls internal pages, and audit_live_site runs a live SEO audit without Search Console access
- find_striking_distance_keywords surfaces queries at positions 5-20, detect_cannibalization names pages competing for the same query, and split_branded_queries separates branded from non-branded traffic
- site_audit is the all-in-one report: sitemap health, indexing status, canonical mismatches and a performance summary
- list_properties, add_site and delete_site manage the Search Console properties, and reauthenticate clears the cached OAuth credentials so you can switch Google accounts
Requirements
A Google account with Search Console access, authorized either through an OAuth client secrets file (GSC_OAUTH_CLIENT_SECRETS_FILE) or a service account key (GSC_CREDENTIALS_PATH). Core Web Vitals and PageSpeed need a Google API key in CRUX_API_KEY and PAGESPEED_API_KEY. Every tool that changes something — adding or removing properties, submitting or deleting sitemaps, Indexing API calls — stays off until you set SEO_AUDIT_ENABLE_WRITE_TOOLS to true.
Setup effort
One command plus credentials — uvx mcp-seo-audit, then supply credentials
USE CASES
Finding the queries that are nearly on page one
Search Console keywords at positions 5-20, where a small change is worth making.
Working out why a page is not indexed
Indexing status, crawl info, canonical and robots for one URL or for a batch of them.
Auditing a site you have no Search Console access to
The live audit crawls internal pages, reads robots.txt and the sitemap, and ranks the findings by severity.
Checking whether real users get a fast page
Field data from the Chrome UX Report next to a lab run, with Lighthouse picking up when PageSpeed Insights errors or runs out of quota.
Finding two of your own pages competing for one query
Cannibalization detection names the pages splitting a query, and branded traffic can be separated out first.
Getting a new page into the index
Submit the URL through the Indexing API. The mutating tools stay off until you enable them in the environment.
30 tools
Listed in project docs. Your client may show a different list.
add_sitedelete_siteget_search_analyticsget_advanced_search_analyticsget_performance_overviewget_search_by_page_querycompare_search_periodsinspect_urlbatch_inspect_urlsrequest_indexingrequest_removalcheck_indexing_notificationbatch_request_indexingget_sitemapssubmit_sitemapdelete_sitemapget_core_web_vitalsget_pagespeed_insightsrun_lighthouse_auditinspect_robots_txtanalyze_sitemapanalyze_page_seocrawl_site_seoaudit_live_sitefind_striking_distance_keywordsdetect_cannibalizationsplit_branded_queriessite_auditreauthenticateBEFORE YOU INSTALL
What to know first
Tools you get
30 tools named in the project's documentation.
Requires
- uvx on PATH
- GSC_OAUTH_CLIENT_SECRETS_FILE (OAuth) or GSC_CREDENTIALS_PATH (service account) in your environment
Where it runs
Both documented clients run the server on your machine.
INSTALLATION
Connect your client
Server setup
Setup
git clone https://github.com/GiorgiKemo/mcp-seo-audit.git
cd mcp-seo-audit
python -m venv .venv
source .venv/bin/activateWindows: .venv\Scripts\activate.
pip install -r requirements.txtuvx
uvx mcp-seo-auditMCP Clients
Claude Code, Claude Desktop
{
"mcpServers": {
"seo-audit": {
"command": "uvx",
"args": [
"mcp-seo-audit"
],
"env": {
"GSC_OAUTH_CLIENT_SECRETS_FILE": "<YOUR_GSC_OAUTH_CLIENT_SECRETS_FILE>",
"PAGESPEED_API_KEY": "<YOUR_GOOGLE_API_KEY>",
"CRUX_API_KEY": "<YOUR_GOOGLE_API_KEY>"
}
}
}
}GSC_CREDENTIALS_PATH is the service-account alternative to the OAuth client secrets file in this configuration. To sign in with a service account instead, add GSC_CREDENTIALS_PATH to the env block with the path to its key file, and add the service account email to your Search Console properties.