MCP Hub
Back to servers

gsc-mcp-rs

MCP server for Google Search Console. 21 tools for search analytics, keyword opportunities, URL inspection, sitemaps, indexing, and property management.

glama
Updated
Apr 3, 2026

gsc-mcp-rs

CI License: MIT Rust: 1.88+

A fast, single-binary MCP server for Google Search Console. 21 tools covering search analytics, URL inspection, sitemaps, indexing, and property management.

Features

  • 21 tools across 9 groups: analytics, discovery, inspection, sitemaps, indexing, properties, meta
  • Both auth methods: OAuth 2.0 (personal) and Service Account (automation)
  • Error-as-UI: operational errors return guidance text, never crash the conversation
  • Zero runtime deps: single Rust binary, no Node/Python/Java required
  • sc-domain: support: domain properties work correctly from day one

Quick Start

Install

cargo install gsc-mcp-rs

Or build from source:

git clone https://github.com/eyupcanakman/gsc-mcp-rs.git
cd gsc-mcp-rs
cargo build --release

Configure Auth

Option 1: OAuth (personal use)

  1. Go to Google Cloud Console > APIs & Services > Credentials
  2. Create an OAuth 2.0 Client ID (Desktop app type)
  3. Enable the Search Console API and Indexing API
  4. Save credentials:
mkdir -p ~/.config/gsc-mcp-rs
cat > ~/.config/gsc-mcp-rs/oauth_credentials.json << 'EOF'
{"client_id": "YOUR_CLIENT_ID", "client_secret": "YOUR_CLIENT_SECRET"}
EOF
  1. Authenticate (opens browser, completes via localhost callback):
gsc-mcp-rs auth

Option 2: Service Account (automation)

  1. Create a service account in Google Cloud Console
  2. Grant it access to your Search Console properties (Full permission)
  3. Download the JSON key and place it:
cp your-key.json ~/.config/gsc-mcp-rs/service_account.json

Or set the environment variable:

export GSC_SERVICE_ACCOUNT_PATH=/path/to/key.json

Add to Claude Desktop

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "gsc": {
      "command": "gsc-mcp-rs",
      "args": ["stdio"]
    }
  }
}

Add to Claude Code

claude mcp add gsc-mcp-rs -- gsc-mcp-rs stdio

Tools (21)

Properties & Auth

ToolDescription
list_sitesList all accessible GSC properties with permission levels
get_site_detailsGet verification status and ownership details
manage_siteAdd or remove a property (action: "add"|"delete", idempotent)
reauthenticateClear tokens for account switching

Search Analytics

ToolDescription
search_analyticsAll dimensions, filters, 25K rows, sorting. Use breakdown for device/country splits
compare_periodsSide-by-side period comparison with deltas
performance_overviewQuick aggregate summary + daily trend
page_query_breakdownWhich queries drive traffic to a specific page

Discovery & Analysis

ToolDescription
top_pagesBest-performing pages by clicks/impressions/CTR/position
keyword_opportunities5 modes: quick_wins (default), cannibalization, ctr_gaps, declining, growing
brand_query_analysisBrand vs non-brand traffic split
keyword_trendDaily tracking of a single keyword
detect_anomaliesAutomatic drop detection with severity levels

Search Appearance

ToolDescription
query_by_search_appearanceFilter by rich result type (FAQ, VIDEO, etc.)

Export

ToolDescription
export_analyticsForce CSV file export for large datasets

URL Inspection

ToolDescription
inspect_urlCheck indexing status of a single URL
batch_inspect_urlsInspect up to 50 URLs with configurable concurrency

Sitemaps

ToolDescription
list_sitemapsList submitted sitemaps with status
manage_sitemapSubmit or remove a sitemap (action: "submit"|"delete", idempotent)

Indexing API

ToolDescription
request_indexingRequest Google to crawl a URL

Meta

ToolDescription
api_referenceAll dimensions and metrics with descriptions and value ranges

Environment Variables

VariableDefaultDescription
GSC_MCP_CONFIG_DIR~/.config/gsc-mcp-rs/Config and token storage directory
GSC_MCP_OUTPUT_DIRSystem temp dirCSV export directory
GSC_SERVICE_ACCOUNT_PATH(none)Path to service account JSON key

CLI Usage

gsc-mcp-rs stdio         # stdio transport (default)
gsc-mcp-rs auth          # Interactive OAuth flow
gsc-mcp-rs --version     # Show version
gsc-mcp-rs --help        # Show help

Docker

docker build -t gsc-mcp-rs .
docker run -i --rm -v ~/.config/gsc-mcp-rs:/root/.config/gsc-mcp-rs gsc-mcp-rs

Minimum Supported Rust Version (MSRV)

Rust 1.85 or later.

Contributing

See CONTRIBUTING.md for development setup and guidelines.

Security

See SECURITY.md for the vulnerability reporting process.

License

MIT. See LICENSE.

Reviews

No reviews yet

Sign in to write a review