🎩 You're Invited:Meet the Socket team at Black Hat in Las Vegas, August 3-6.RSVP
Sign In

mcp-search-console-multi

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

mcp-search-console-multi

Multi-account Google Search Console MCP server

pipPyPI
Version
0.1.3
Weekly downloads
144
Maintainers
1

mcp-search-console

Multi-account Google Search Console MCP server. Connect any number of GSC accounts to Claude, Cursor, Codex, or any MCP-compatible AI assistant — and query them by name in the same session.

# Install:  uvx mcp-search-console-multi

# Ask your AI:
"Show me the top queries for my-site last month"
"Compare client-acme's performance between Q1 and Q2"
"Check indexing issues on client-beta's 5 product pages"

Why this one?

Most GSC MCP servers support one account per server process. This one lets you configure multiple accounts (your own sites + client sites) and switch between them per tool call — no restart needed.

FeatureThis serverOthers
Multiple accountsYes — named, switchableNo — one per process
OAuth + service accountBoth, mixed per accountUsually one type
Auto token refreshYesSometimes
Rate limit retryYes — exponential backoffNo
Destructive op guardYes — env flag requiredSometimes
SSE transport (remote)YesVaries

Quickstart (uvx — no clone needed)

1. Create your accounts config:

mkdir -p ~/.config/mcp-search-console
cp accounts.example.json ~/.config/mcp-search-console/accounts.json
# Edit it — add your accounts

2. Add to your MCP client config:

{
  "mcpServers": {
    "search-console": {
      "command": "uvx",
      "args": ["mcp-search-console-multi"],
      "env": {
        "GSC_ACCOUNTS_CONFIG": "/Users/you/.config/mcp-search-console/accounts.json"
      }
    }
  }
}

3. Restart your AI client. Done.

Accounts config

Copy accounts.example.json and edit it:

{
  "default": "my-site",
  "accounts": {
    "my-site": {
      "type": "oauth",
      "client_secrets_file": "~/.config/mcp-search-console/client_secrets.json",
      "token_file": "~/.config/mcp-search-console/my-site.token"
    },
    "client-acme": {
      "type": "service_account",
      "credentials_file": "~/.config/mcp-search-console/acme.json"
    }
  }
}

Set GSC_ACCOUNTS_CONFIG to its path, or put it at ~/.config/mcp-search-console/accounts.json (default).

OAuth setup

  • Google Cloud Console → create project
  • Enable the Search Console API
  • Credentials → Create → OAuth client ID → Desktop app
  • Download as client_secrets.json
  • On first use, a browser window opens for you to authorise — token is saved automatically

Service account setup

  • Google Cloud Console → Credentials → Create → Service Account
  • Keys tab → Add Key → JSON → download
  • In GSC, add the service account email as a user on each property

Using multiple accounts

Every tool accepts an optional account parameter. Omit it to use your default.

"Show top queries for my-site"                    # uses default
"Show top queries for client-acme"                # uses named account
"Compare client-beta performance Jan vs Feb"      # named account

Or set the default mid-session:

"Switch to client-acme as my default account"

Available tools

Account management

ToolWhat it does
list_accountsShow all configured accounts and which is default
set_default_accountChange the default account
reauthenticateRe-run OAuth flow or reload credentials for an account

Properties

ToolWhat it does
list_propertiesList all GSC properties
get_site_detailsVerification + permission details for a property

Search analytics

ToolWhat it does
get_search_analyticsQueries, pages, clicks, impressions, CTR, position
get_performance_overviewSite-level totals for a period
compare_periodsSide-by-side comparison of two date ranges
get_advanced_search_analyticsAnalytics with dimension filters (country, device, etc.)
get_search_by_pageQueries driving traffic to a specific page

URL inspection

ToolWhat it does
inspect_urlIndexing status, crawl date, mobile usability, rich results
batch_inspect_urlsInspect up to 10 URLs at once
check_indexing_issuesPrioritised issue summary across multiple URLs

Sitemaps

ToolWhat it does
list_sitemapsAll submitted sitemaps with status
get_sitemapDetails for a specific sitemap
submit_sitemapSubmit a new sitemap (requires GSC_ALLOW_DESTRUCTIVE=true)
delete_sitemapRemove a sitemap (requires GSC_ALLOW_DESTRUCTIVE=true)

Environment variables

VariableDefaultDescription
GSC_ACCOUNTS_CONFIG~/.config/mcp-search-console/accounts.jsonPath to your accounts config
GSC_ALLOW_DESTRUCTIVEunsetSet to true to enable sitemap submit/delete
MCP_TRANSPORTstdioSet to sse for remote/Docker deployment
MCP_HOST127.0.0.1SSE bind host (use 0.0.0.0 for all interfaces)
MCP_PORT3001SSE bind port

Remote deployment (Docker / VPS)

docker build -t mcp-search-console .

docker run \
  -e MCP_TRANSPORT=sse \
  -e MCP_HOST=0.0.0.0 \
  -e MCP_PORT=3001 \
  -e GSC_ACCOUNTS_CONFIG=/config/accounts.json \
  -v /path/to/config:/config \
  -p 3001:3001 \
  mcp-search-console

Your MCP client connects to http://your-server:3001/sse.

License

MIT

Keywords

ai

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts