Comparison, anomaly detection and drop attribution are first-class rather than something you assemble from rows, and the SEO analyses arrive under the names practitioners already argue about — striking distance, cannibalization, brand versus non-brand. The thing to establish first is which platforms are actually live for you: the tool list spans Google, Bing, GA4 and AdSense whether or not all of them are connected, which is why get_started returns the map of active platforms and diagnostics exists to explain an empty result.
A search-visibility server fronting Google Search Console, Bing Webmaster Tools, GA4 and AdSense through a single tool set, with PageSpeed, structured-data validation and indexing submission alongside.
- One performance query across queries, pages, countries, devices and search appearances, with filters and a row limit, replacing a tool per dimension
- Period-over-period comparison, trend modes and traffic-drop attribution, plus anomaly detection against a threshold you set
- Index and crawl status inspected for single or batched URLs, and submission through the Google Indexing API, Bing URL submission or IndexNow
- Properties added or removed, sitemaps listed, submitted and deleted, and Google service accounts and site permissions administered
- Named SEO analyses rather than raw rows: cannibalization, striking distance, lost queries, low CTR, brand versus non-brand, and quick wins
- Page-level checks in the same session — PageSpeed Insights with Core Web Vitals, and structured-data validation for JSON-LD, Microdata and RDFa
- A cross-engine matrix comparing Google against Bing on a chosen dimension, and GA4 e-commerce, realtime, user-behaviour and funnel metrics
- AdSense earnings, payments and account alerts once you opt in to its read-only scope, so a revenue dip can be read next to the traffic that caused it
- The same tools available as CLI commands, printing JSON, CSV or an ASCII table when the answer belongs in a terminal rather than a chat
Verified properties in the engines you intend to query, and an account connected for each: npx search-console-mcp setup opens a browser and authorizes Google, BING_API_KEY covers Bing, GOOGLE_APPLICATION_CREDENTIALS covers a service account for servers, and AdSense needs its own opt-in because it supports user OAuth only. Tokens are stored in the OS keychain where there is one, encrypted to the machine otherwise, so a copied config file is useless elsewhere — on a headless server, authorize on a machine with a browser and transfer the grant. GA4 calls address a property id rather than a site URL, and IndexNow submission needs a key and the location that hosts it. MIT.
One command — npx search-console-mcp setup
