Google Search Console

by ahonn

18 stars
1.1k downloads
Not rated
GitHub

About

A Model Context Protocol (MCP) server providing access to Google Search Console.

Details

Author
ahonn
Repository
ahonn/mcp-server-gsc
GitHub stars
18
Downloads
1,065
Categories
Search, Community, Other, AI, Design, Developer Tools, Frontend, Automation
Tags
#mobile, #analytics

- Enhanced Search Analytics: Retrieve up to 25,000 rows of performance data
- Advanced Filtering: Support for regex patterns and multiple filter operators
- Quick Wins Detection: Automatically identify optimization opportunities
- Rich Dimensions: Query, page, country, device, and search appearance analysis
- Flexible Date Ranges: Customizable reporting periods with historical data access

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Google Search Console
    Command (node, npx, python, etc.) npx
    Arguments
    • Argument 1 -y
    • Argument 2 mcp-server-gsc
    Environment
    • GOOGLE_APPLICATION_CREDENTIALS /path/to/credentials.json

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

To obtain Google Search Console API credentials:

1. Visit the Google Cloud Console
2. Create a new project or select an existing one
3. Enable the API:

- Go to "APIs & Services" > "Library"
- Search for and enable "Search Console API"

4. Create credentials:

- Navigate to "APIs & Services" > "Credentials"
- Click "Create Credentials" > "Service Account"
- Fill in the service account details
- Create a new key in JSON format
- The credentials file (.json) will download automatically

5. Grant access:

- Open Search Console
- Add the service account email (format: name@project.iam.gserviceaccount.com) as a property administrator

{
  "mcpServers": {
    "gsc": {
      "command": "npx",
      "args": ["-y", "mcp-server-gsc"],
      "env": {
        "GOOGLE_APPLICATION_CREDENTIALS": "/path/to/credentials.json"
      }
    }
  }
}

search_analytics

Get comprehensive search performance data from Google Search Console with enhanced analytics capabilities. Required parameters include siteUrl (Site URL), startDate (Start date in YYYY-MM-DD format), and endDate (End date in YYYY-MM-DD format). Optional parameters include dimensions, type, aggregationType, rowLimit, dataState, and various filter parameters.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "google search console": {
            "env": {
                "GOOGLE_APPLICATION_CREDENTIALS": "/path/to/credentials.json"
            },
            "args": [
                "-y",
                "mcp-server-gsc"
            ],
            "command": "npx"
        }
    }
}

Linux

{
    "env": {
        "GOOGLE_APPLICATION_CREDENTIALS": "/path/to/credentials.json"
    },
    "args": [
        "-y",
        "mcp-server-gsc"
    ],
    "command": "npx"
}

Macos

{
    "env": {
        "GOOGLE_APPLICATION_CREDENTIALS": "/path/to/credentials.json"
    },
    "args": [
        "-y",
        "mcp-server-gsc"
    ],
    "command": "npx"
}

Windows

{
    "env": {
        "GOOGLE_APPLICATION_CREDENTIALS": "/path/to/credentials.json"
    },
    "args": [
        "/c",
        "npx",
        "-y",
        "mcp-server-gsc"
    ],
    "command": "cmd"
}

Google Search Console MCP Server

A Model Context Protocol (MCP) server providing comprehensive access to Google Search Console data with enhanced analytics capabilities.

Features

- Enhanced Search Analytics: Retrieve up to 25,000 rows of performance data
- Advanced Filtering: Support for regex patterns and multiple filter operators
- Quick Wins Detection: Automatically identify optimization opportunities
- Rich Dimensions: Query, page, country, device, and search appearance analysis
- Flexible Date Ranges: Customizable reporting periods with historical data access

Sponsored by

<a href="https://macuse.app?ref=mcp-server-gsc">
macuse.app
</a>

macuse.app is a native macOS application that gives your AI superpowers by integrating AI assistants with macOS apps like Calendar, Mail, and Notes, plus universal UI control for any application. Supports Claude Desktop, Cursor, and Raycast with one-click setup. Privacy-first, runs locally.

Prerequisites

- Node.js 18 or later
- Google Cloud Project with Search Console API enabled
- Service Account credentials with Search Console access

Installation

npm install mcp-server-gsc

Authentication Setup

To obtain Google Search Console API credentials:

1. Visit the Google Cloud Console
2. Create a new project or select an existing one
3. Enable the API:

- Go to "APIs & Services" > "Library"
- Search for and enable "Search Console API"

4. Create credentials:

- Navigate to "APIs & Services" > "Credentials"
- Click "Create Credentials" > "Service Account"
- Fill in the service account details
- Create a new key in JSON format
- The credentials file (.json) will download automatically

5. Grant access:

- Open Search Console
- Add the service account email (format: name@project.iam.gserviceaccount.com) as a property administrator

Usage

Claude Desktop Configuration

{
  "mcpServers": {
    "gsc": {
      "command": "npx",
      "args": ["-y", "mcp-server-gsc"],
      "env": {
        "GOOGLE_APPLICATION_CREDENTIALS": "/path/to/credentials.json"
      }
    }
  }
}

Available Tools

search_analytics

Get comprehensive search performance data from Google Search Console with enhanced analytics capabilities.

Required Parameters:

- siteUrl: Site URL (format: http://www.example.com/ or sc-domain:example.com)
- startDate: Start date (YYYY-MM-DD)
- endDate: End date (YYYY-MM-DD)

Optional Parameters:

- dimensions: Comma-separated list (query, page, country, device, searchAppearance, date)
- type: Search type (web, image, video, news, discover, googleNews)
- aggregationType: Aggregation method (auto, byNewsShowcasePanel, byProperty, byPage)
- rowLimit: Maximum rows to return (default: 1000, max: 25000)
- dataState: Data freshness (all or final, default: final)

Filter Parameters:

- pageFilter: Filter by page URL (supports regex with regex: prefix)
- queryFilter: Filter by search query (supports regex with regex: prefix)
- countryFilter: Filter by country ISO 3166-1 alpha-3 code (e.g., USA, CHN)
- deviceFilter: Filter by device type (DESKTOP, MOBILE, TABLET)
- searchAppearanceFilter: Filter by search feature (e.g., AMP_BLUE_LINK, AMP_TOP_STORIES)
- filterOperator: Operator for filters (equals, contains, notEquals, notContains, includingRegex, excludingRegex)

Quick Wins Detection:

- detectQuickWins: Enable automatic detection of optimization opportunities (default: false)
- quickWinsConfig: Configuration for quick wins detection:
- positionRange: Position range to consider (default: [4, 20])
- minImpressions: Minimum impressions threshold (default: 100)
- minCtr: Minimum CTR percentage (default: 1)

Example - Basic Query:

{
  "siteUrl": "https://example.com",
  "startDate": "2024-01-01",
  "endDate": "2024-01-31",
  "dimensions": "query,page",
  "rowLimit": 5000
}

Example - Advanced Filtering with Regex:

{
  "siteUrl": "https://example.com",
  "startDate": "2024-01-01",
  "endDate": "2024-01-31",
  "dimensions": "page,query",
  "queryFilter": "regex:(AI|machine learning|ML)",
  "filterOperator": "includingRegex",
  "deviceFilter": "MOBILE",
  "rowLimit": 10000
}

Example - Quick Wins Detection:

{
  "siteUrl": "https://example.com",
  "startDate": "2024-01-01",
  "endDate": "2024-01-31",
  "dimensions": "query,page",
  "detectQuickWins": true,
  "quickWinsConfig": {
    "positionRange": [4, 15],
    "minImpressions": 500,
    "minCtr": 2
  }
}

License

MIT

Contributing

Contributions are welcome! Please read our contributing guidelines before submitting pull requests.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.