A side-by-side look at the Google Search Console and QuerySail: Google Search Console MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Google Search Console for marketing work as a local process; choose QuerySail: Google Search Console MCP for marketing over a hosted endpoint. You can also run both side by side in one mcpServers block.
GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET, TOKEN_ENCRYPTION_KEY.server.capabilities, sites.list, sites.get.list_properties, get_performance, compare_performance.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Marketing | Marketing |
| Quality signal | 59/100 · Good | 77/100 · Great |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Remote HTTP/SSE |
| Auth | Not declared | OAuth 2.0 |
| Pricing | Not declared | Paid service |
| Required env vars | GOOGLE_CLIENT_IDGOOGLE_CLIENT_SECRETTOKEN_ENCRYPTION_KEY | None listed |
| Verified owner | Community listing | Verified |
| GitHub stars | 5 | 0 |
| Directory activity | 1 views 0 installs 0 upvotes | 3 views 0 installs 0 upvotes |
| Tools | 10 | 5 |
| Full listing | View Google Search Console | View QuerySail: Google Search Console MCP |
server.capabilitiesList every tool this server exposes and report local Google credential state. `connected` means a stored refresh credential is present; the response also exposes `auth_status_basis` and `provider_auth_live_verified: false` because this discovery call does not probe Google. A later Google tool call…sites.listList the Search Console properties the connected Google account can access (`siteUrl`, `permissionLevel`).sites.getRetrieve one exact Search Console property and the connected account's permission level for it.analytics.queryImpressions, clicks, CTR, and average position over a date range, with dimensions, filters, safe pagination, and selectable search type. Pass `dimensions: []` for true site totals; Google's aggregate row may omit `keys`. Search Analytics does not guarantee every data row and can return only top row…urls.inspectGoogle's URL Inspection report for the version of one page currently known in Google's index. It is not a live URL test; mobile-usability output is deprecated.urls.inspect_manyInspect Google's indexed versions of up to 10 URLs with bounded concurrency of 3 in one call while preserving input-order results. Each URL still consumes one Google URL Inspection request and one unit of the server's shared inspection safety budget; this does not run live URL tests.reports.weekly_digestGenerate a plain-language seven-day performance report with movers, top pages, and one recommended action. Query movers compare only rows returned in both weekly Search Analytics result sets; a query missing from one bounded response is not treated as zero because Google does not guarantee every da…indexing.statusRead Google's latest successful Indexing API `URL_UPDATED` / `URL_DELETED` notification receipts for a previously submitted URL. This is notification metadata only, not index coverage, crawl status, indexing completion, or removal completion. It requires `GSC_ACCESS_MODE=readwrite` because Google's…indexing.requestRequests indexing through Google's Indexing API. Google currently restricts this API to pages containing `JobPosting` structured data or livestream pages containing `BroadcastEvent` inside `VideoObject`. It is not available for general webpage submission. Google's default 200 publish requests/day/p…indexing.removeRequest a `URL_DELETED` notification for a previously eligible Indexing API page. Before removal, the URL must already return HTTP 404/410 or expose a robots `noindex` meta directive. Google's receipt does not prove removal completed; use URL Inspection for indexed-state evidence.list_propertiesLists the Search Console properties your connected Google accounts can read, with exact IDs and permission level.get_performanceClicks, impressions, CTR and average position, as totals or by date, hour, query, page, country, device or search appearance, with filters. Covers web, image, video, news, Discover and Google News results.compare_performanceCompares two periods (previous period, same weekdays a year earlier, or custom dates) and lists the queries, pages, countries or devices that gained or lost the most.inspect_urlsInspects up to 20 URLs: whether each is on Google, why not, last crawl, robots.txt and noindex blocking, and the canonical Google chose.list_sitemapsLists submitted sitemaps with when Google last read them, URL counts, errors and warnings.Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"google-search-console": {
"command": "npx",
"args": [
"-y",
"@digestseo/mcp-gsc"
],
"env": {
"GOOGLE_CLIENT_ID": "YOUR_GOOGLE_CLIENT_ID_HERE",
"GOOGLE_CLIENT_SECRET": "YOUR_GOOGLE_CLIENT_SECRET_HERE",
"TOKEN_ENCRYPTION_KEY": "YOUR_TOKEN_ENCRYPTION_KEY_HERE"
}
}
}
}
{
"mcpServers": {
"querysail-google-search-console-mcp": {
"url": "https://mcp.querysail.com/gsc/mcp"
}
}
}