Google Search Console MCP (gsc-mcp)
FlorianBruniaux
FlorianBruniaux
Community MCP focused on Google Search Console, with related GA4, CrUX, PageSpeed, indexing, and SEO analysis capabilities.
95 tool rows were extracted from the current README table, while the README badge/headline claims 98. The remaining three names were not reconciled, so treat this displayed list as partial.
get_capabilitiesList all available tools
serpapi_searchPreview or explicitly capture one Google SERP on a verified free plan; durable attempt limits, no retries or paid fallback
serpapi_import_previewQualify caller-supplied Google SERP JSON offline; retain missing fields and producer feature types
list_propertiesList all GSC properties
get_site_detailsGet details for a specific property
get_search_analyticsQuery search performance data
get_performance_overviewAggregate totals + top queries
search_change_breakdownCompare explicit equal Google windows with independent bounded page/query/country/device views, coverage and residuals
search_weekday_referenceDefault since 1.4.0: disjoint Google windows aligned by weekday and ending by Pacific J-3. Version 1.5.0 adds optional annual/robust references and mixed/undetermined results; descriptive, no causal attribution
compare_search_periodsCompare two consecutive periods
get_search_by_page_queryPerformance broken down by page and query
get_advanced_search_analyticsFlexible query with custom dimensions and filters
analytics_anomaliesZ-score anomaly detection on daily clicks
discover_performanceTop pages by impressions in Google Discover
news_performanceTop pages by impressions in Google News
search_type_breakdownClicks and impressions split across web, Discover, News, image, video
ai_overviews_impactGeneric Web search appearances; AI exposure unverified, explicit 400/403 limits
quick_winsPages in positions 4-15 with CTR below benchmark
traffic_dropsDeclining clicks with metric-based candidate diagnoses, not causal proof
check_alertsTraffic concentration risks and ranking opportunities
seo_striking_distanceQueries in positions 8-15, one push away from page 1
seo_cannibalizationQueries split across pages (HHI score); search operators excluded by default since 1.3.1
seo_lost_queriesQueries with a click drop >= 80% vs the previous period
inspect_urlURL indexing status via URL Inspection API
batch_url_inspectionInspect up to 10 URLs at once
check_indexing_issuesInspect URLs and categorize by issue type
submit_urlRequest indexing for a single URL
submit_batchRequest indexing for multiple URLs (true HTTP batch)
list_sitemapsList submitted sitemaps
submit_sitemapSubmit a sitemap URL
sitemaps_getFetch details for a single sitemap
sitemaps_deleteDelete a submitted sitemap (with safety check)
sitemap_auditFetch a sitemap and compare its URLs with 90 days of Search Analytics page rows; does not measure indexation
ga4_organic_landing_pagesSessions and engagement for organic landing pages
ga4_traffic_sourcesSessions and conversions by channel, source and medium
ga4_ai_referralsRecorded assistant-attributed visits, exact source rules and coverage-gated shares
ga4_page_performance7 metrics per page path, optional CONTAINS filter
ga4_realtimeActive users right now by screen, country and device
ga4_user_behaviorDevice, country and user-type breakdowns in one batch call
ga4_conversion_funnelConverting pages and event counts, optional event filter
ga4_funnelMulti-step funnel report via GA4 v1alpha RunFunnelReport, conversion rate per step
traffic_health_checkEqual requested dates, zero/empty/unavailable states and coverage-gated heuristic ratios
page_analysisGSC+GA4 join per page with opportunity score, sorted by priority
page_health_scoreComposite 0-100 score (GSC 30 pts, GA4 25 pts, CrUX 25 pts, schema 20 pts), graceful degradation per component
content_briefPer-page top queries, question queries, and GA4 session data for content planning
crux_page_vitalsReal-user Core Web Vitals (LCP, INP, CLS, FCP, TTFB) for a URL from the Chrome UX Report API
crux_historyHistorical Core Web Vitals trend (weekly data points) for a URL
schema_validateFetch any public URL and validate its JSON-LD schemas; suggests missing schemas by URL pattern
crawl_log_auditSince 1.5.0: bounded local common/combined logs, masked paths/IPs, declared bots and optional current Google IP membership; no indexing inference
crawl_snapshot_importOptional site-owned SiteOne storage, bounded details, exact-URL reconciliation and explicit cleanup
crawl_diffExact observed inventory membership and compatible imported field differences; no deletion/indexing inference
indexing_evidence_matrixKeep supplied per-URL inspection, HTML, GSC, inventory and log observations separate with unknown current indexing
crawl_import_previewSince 1.4.0: preview bounded caller-supplied SiteOne JSON in memory; no crawl, file/network access, secrets or GSC join
schema_generateGenerate a Schema.org JSON-LD block for Reservation, OrderAction, DiscussionForumPosting, or ProfilePage
drift_baselineCapture a baseline snapshot of a page (title, H1-H3, schema, canonical, CWV) stored locally in SQLite
drift_compareDiff a live fetch against the stored baseline and apply 17 rules (8 CRITICAL, 6 WARNING, 3 INFO)
drift_historyList previous comparison runs for a URL with triggered findings per run
editorial_auditFR/EN house-style warnings, localized excerpts and faithful rewrite guidance; caller plain/Markdown drafts since 1.4.0 with native source spans and bounded parsing; no AI-authorship score
rewrite_fidelity_checkSince 1.4.0: protected literals and qualifier review candidates; semantic fidelity and factual truth remain unassessed
seo_change_impactSince 1.4.0: declared event and descriptive Google before/after evidence; no persistence or causal effect
content_qualityFetch a URL for local filler, density, repetition and thin-content heuristics; requires independent evaluation
hreflang_auditFetch a URL and validate its hreflang implementation: x-default, ISO 639-1 codes, region codes, self-ref, protocol consistency
page_technical_auditFetch a URL and audit meta tags (title, description, canonical, robots), viewport, HTML lang, security headers, robots.txt Googlebot access
preload_auditAudit Speculation Rules, bfcache eligibility, and LCP preload signals: inline speculationrules blocks, Speculation-Rules header, link preload tags, deprecated prerender, cache-control blockers
crux_lcp_subpartsDecompose LCP into four subparts (TTFB, resource load delay, duration, render delay) with dominant phase identification for targeted CWV remediation
indexnow_submitSubmit URLs to IndexNow (Bing, Yandex, Seznam, Naver) via one POST; SSRF-safe URL validation, skipped-invalid count, ok/partial/error verdict
parasite_riskScan URL paths for parasite SEO patterns matching Google's 2024-11-19 site-reputation policy: sponsored/affiliate sections, Forbes Advisor, CNN Underscored patterns, affiliate query params
ai_visibility_auditCheck robots.txt and llms.txt; version 1.3.1 checks 10 agents, including ClaudeBot, Claude-User and Claude-SearchBot
gbp_deprecation_lintScan a page for deprecated Google Business Profile features: .business.site links, Reserve with Google, GBP appointment widgets
pagespeed_auditRun a PageSpeed Insights API v5 audit: Lighthouse performance score, Core Web Vitals, top 3 improvement opportunities (requires GOOGLE_API_KEY)
heading_auditAudit heading structure: H1 uniqueness, level jumps (H2 to H4), title vs H1 word-for-word duplication, headings carrying no information, words per H2
link_targets_auditObserve bounded internal destination HTTP statuses and redirect hops while preserving source anchors; no recursive crawl
internal_links_auditAudit a page's internal links weighted by zone (body, nav, footer, header, aside): targets linked only from footer/nav, generic and empty anchors, internal nofollow, self-links
link_equity_mapCrawl the top pages by impressions, build the internal link graph, cross it with GSC: pages at position 11-20 with no body inbound link, orphan candidates, footer-only targets, hubs
prune_candidatesClassify pages by measured traffic (has_traffic, impressions_no_clicks, low_impressions, zero_impressions) before any pruning call; a page with clicks is never a candidate
bing_sites_listList sites visible to the Bing account and their observed verified state
bing_query_statsQuery performance in Bing's observed rolling window
bing_page_statsPage performance in Bing's observed rolling window
bing_page_query_statsQuery performance for one page
bing_rank_traffic_statsDaily clicks and impressions; no rank field is inferred
bing_crawl_statsDated crawl counters in the requested local window
bing_crawl_issuesCrawl issue flags; non-empty live item shape remains unverified
bing_crawl_settings_getObserved crawl-rate setting from the partial contract
bing_url_infoObserved URL fields and last crawl date, without an indexation verdict
bing_url_trafficURL clicks, impressions and derived CTR
bing_feeds_listList registered Bing feeds
bing_feed_detailsReturn every observed feed-detail row
bing_url_submission_quotaReturn quota integers with total-versus-remaining semantics marked unknown
bing_link_countsBacklink count page; nested runtime shape remains unverified
bing_url_linksBacklinks for one URL; nested runtime shape remains unverified
bing_url_submitSubmit one same-origin URL; acceptance does not prove indexation
bing_urls_submit_batchValidate a batch, then refuse it while quota semantics remain unknown
bing_feed_submitSubmit one same-origin feed without claiming crawl or indexation
bing_feed_removeRemove a registered same-origin feed after explicit confirm=true; runtime contract unverified
compare_search_enginesCompare query or page metrics; deltas require equal exact observed windows and positions stay side by side
This server’s available tools can vary by account, permissions, or configuration. The list shown is not its full runtime catalog.
Maintainer README explicitly lists 95 exact tools.
Documentation checked 2026-10-28T00:00:00Z. Connection has not been runtime tested.
FlorianBruniaux
Community MCP focused on Google Search Console, with related GA4, CrUX, PageSpeed, indexing, and SEO analysis capabilities.
95 tool rows were extracted from the current README table, while the README badge/headline claims 98. The remaining three names were not reconciled, so treat this displayed list as partial.
get_capabilitiesList all available tools
serpapi_searchPreview or explicitly capture one Google SERP on a verified free plan; durable attempt limits, no retries or paid fallback
serpapi_import_previewQualify caller-supplied Google SERP JSON offline; retain missing fields and producer feature types
list_propertiesList all GSC properties
get_site_detailsGet details for a specific property
get_search_analyticsQuery search performance data
get_performance_overviewAggregate totals + top queries
search_change_breakdownCompare explicit equal Google windows with independent bounded page/query/country/device views, coverage and residuals
search_weekday_referenceDefault since 1.4.0: disjoint Google windows aligned by weekday and ending by Pacific J-3. Version 1.5.0 adds optional annual/robust references and mixed/undetermined results; descriptive, no causal attribution
compare_search_periodsCompare two consecutive periods
get_search_by_page_queryPerformance broken down by page and query
get_advanced_search_analyticsFlexible query with custom dimensions and filters
analytics_anomaliesZ-score anomaly detection on daily clicks
discover_performanceTop pages by impressions in Google Discover
news_performanceTop pages by impressions in Google News
search_type_breakdownClicks and impressions split across web, Discover, News, image, video
ai_overviews_impactGeneric Web search appearances; AI exposure unverified, explicit 400/403 limits
quick_winsPages in positions 4-15 with CTR below benchmark
traffic_dropsDeclining clicks with metric-based candidate diagnoses, not causal proof
check_alertsTraffic concentration risks and ranking opportunities
seo_striking_distanceQueries in positions 8-15, one push away from page 1
seo_cannibalizationQueries split across pages (HHI score); search operators excluded by default since 1.3.1
seo_lost_queriesQueries with a click drop >= 80% vs the previous period
inspect_urlURL indexing status via URL Inspection API
batch_url_inspectionInspect up to 10 URLs at once
check_indexing_issuesInspect URLs and categorize by issue type
submit_urlRequest indexing for a single URL
submit_batchRequest indexing for multiple URLs (true HTTP batch)
list_sitemapsList submitted sitemaps
submit_sitemapSubmit a sitemap URL
sitemaps_getFetch details for a single sitemap
sitemaps_deleteDelete a submitted sitemap (with safety check)
sitemap_auditFetch a sitemap and compare its URLs with 90 days of Search Analytics page rows; does not measure indexation
ga4_organic_landing_pagesSessions and engagement for organic landing pages
ga4_traffic_sourcesSessions and conversions by channel, source and medium
ga4_ai_referralsRecorded assistant-attributed visits, exact source rules and coverage-gated shares
ga4_page_performance7 metrics per page path, optional CONTAINS filter
ga4_realtimeActive users right now by screen, country and device
ga4_user_behaviorDevice, country and user-type breakdowns in one batch call
ga4_conversion_funnelConverting pages and event counts, optional event filter
ga4_funnelMulti-step funnel report via GA4 v1alpha RunFunnelReport, conversion rate per step
traffic_health_checkEqual requested dates, zero/empty/unavailable states and coverage-gated heuristic ratios
page_analysisGSC+GA4 join per page with opportunity score, sorted by priority
page_health_scoreComposite 0-100 score (GSC 30 pts, GA4 25 pts, CrUX 25 pts, schema 20 pts), graceful degradation per component
content_briefPer-page top queries, question queries, and GA4 session data for content planning
crux_page_vitalsReal-user Core Web Vitals (LCP, INP, CLS, FCP, TTFB) for a URL from the Chrome UX Report API
crux_historyHistorical Core Web Vitals trend (weekly data points) for a URL
schema_validateFetch any public URL and validate its JSON-LD schemas; suggests missing schemas by URL pattern
crawl_log_auditSince 1.5.0: bounded local common/combined logs, masked paths/IPs, declared bots and optional current Google IP membership; no indexing inference
crawl_snapshot_importOptional site-owned SiteOne storage, bounded details, exact-URL reconciliation and explicit cleanup
crawl_diffExact observed inventory membership and compatible imported field differences; no deletion/indexing inference
indexing_evidence_matrixKeep supplied per-URL inspection, HTML, GSC, inventory and log observations separate with unknown current indexing
crawl_import_previewSince 1.4.0: preview bounded caller-supplied SiteOne JSON in memory; no crawl, file/network access, secrets or GSC join
schema_generateGenerate a Schema.org JSON-LD block for Reservation, OrderAction, DiscussionForumPosting, or ProfilePage
drift_baselineCapture a baseline snapshot of a page (title, H1-H3, schema, canonical, CWV) stored locally in SQLite
drift_compareDiff a live fetch against the stored baseline and apply 17 rules (8 CRITICAL, 6 WARNING, 3 INFO)
drift_historyList previous comparison runs for a URL with triggered findings per run
editorial_auditFR/EN house-style warnings, localized excerpts and faithful rewrite guidance; caller plain/Markdown drafts since 1.4.0 with native source spans and bounded parsing; no AI-authorship score
rewrite_fidelity_checkSince 1.4.0: protected literals and qualifier review candidates; semantic fidelity and factual truth remain unassessed
seo_change_impactSince 1.4.0: declared event and descriptive Google before/after evidence; no persistence or causal effect
content_qualityFetch a URL for local filler, density, repetition and thin-content heuristics; requires independent evaluation
hreflang_auditFetch a URL and validate its hreflang implementation: x-default, ISO 639-1 codes, region codes, self-ref, protocol consistency
page_technical_auditFetch a URL and audit meta tags (title, description, canonical, robots), viewport, HTML lang, security headers, robots.txt Googlebot access
preload_auditAudit Speculation Rules, bfcache eligibility, and LCP preload signals: inline speculationrules blocks, Speculation-Rules header, link preload tags, deprecated prerender, cache-control blockers
crux_lcp_subpartsDecompose LCP into four subparts (TTFB, resource load delay, duration, render delay) with dominant phase identification for targeted CWV remediation
indexnow_submitSubmit URLs to IndexNow (Bing, Yandex, Seznam, Naver) via one POST; SSRF-safe URL validation, skipped-invalid count, ok/partial/error verdict
parasite_riskScan URL paths for parasite SEO patterns matching Google's 2024-11-19 site-reputation policy: sponsored/affiliate sections, Forbes Advisor, CNN Underscored patterns, affiliate query params
ai_visibility_auditCheck robots.txt and llms.txt; version 1.3.1 checks 10 agents, including ClaudeBot, Claude-User and Claude-SearchBot
gbp_deprecation_lintScan a page for deprecated Google Business Profile features: .business.site links, Reserve with Google, GBP appointment widgets
pagespeed_auditRun a PageSpeed Insights API v5 audit: Lighthouse performance score, Core Web Vitals, top 3 improvement opportunities (requires GOOGLE_API_KEY)
heading_auditAudit heading structure: H1 uniqueness, level jumps (H2 to H4), title vs H1 word-for-word duplication, headings carrying no information, words per H2
link_targets_auditObserve bounded internal destination HTTP statuses and redirect hops while preserving source anchors; no recursive crawl
internal_links_auditAudit a page's internal links weighted by zone (body, nav, footer, header, aside): targets linked only from footer/nav, generic and empty anchors, internal nofollow, self-links
link_equity_mapCrawl the top pages by impressions, build the internal link graph, cross it with GSC: pages at position 11-20 with no body inbound link, orphan candidates, footer-only targets, hubs
prune_candidatesClassify pages by measured traffic (has_traffic, impressions_no_clicks, low_impressions, zero_impressions) before any pruning call; a page with clicks is never a candidate
bing_sites_listList sites visible to the Bing account and their observed verified state
bing_query_statsQuery performance in Bing's observed rolling window
bing_page_statsPage performance in Bing's observed rolling window
bing_page_query_statsQuery performance for one page
bing_rank_traffic_statsDaily clicks and impressions; no rank field is inferred
bing_crawl_statsDated crawl counters in the requested local window
bing_crawl_issuesCrawl issue flags; non-empty live item shape remains unverified
bing_crawl_settings_getObserved crawl-rate setting from the partial contract
bing_url_infoObserved URL fields and last crawl date, without an indexation verdict
bing_url_trafficURL clicks, impressions and derived CTR
bing_feeds_listList registered Bing feeds
bing_feed_detailsReturn every observed feed-detail row
bing_url_submission_quotaReturn quota integers with total-versus-remaining semantics marked unknown
bing_link_countsBacklink count page; nested runtime shape remains unverified
bing_url_linksBacklinks for one URL; nested runtime shape remains unverified
bing_url_submitSubmit one same-origin URL; acceptance does not prove indexation
bing_urls_submit_batchValidate a batch, then refuse it while quota semantics remain unknown
bing_feed_submitSubmit one same-origin feed without claiming crawl or indexation
bing_feed_removeRemove a registered same-origin feed after explicit confirm=true; runtime contract unverified
compare_search_enginesCompare query or page metrics; deltas require equal exact observed windows and positions stay side by side
This server’s available tools can vary by account, permissions, or configuration. The list shown is not its full runtime catalog.
Maintainer README explicitly lists 95 exact tools.
Documentation checked 2026-10-28T00:00:00Z. Connection has not been runtime tested.