{
  "markdown": "# Google Search Console MCP Server\n\nA Model Context Protocol (MCP) server that gives AI agents direct access to your Google Search Console data.\n\n- **Search analytics** — query clicks, impressions, CTR, and average position by page, query, country, device, or date range\n- **Compare periods** — week-over-week, month-over-month trends\n- **Find opportunities** — high-impression/low-click queries, ranking keywords you didn't know about\n- **Track specific pages** — see which URLs are gaining or losing traction\n- **Index coverage** — check which pages are indexed, excluded, or erroring\n- **Sitemap status** — verify sitemaps are being read and how many URLs are indexed\n\nRead-only access — this server cannot submit URLs, modify settings, or make any changes to your Search Console properties.\n\n> [!IMPORTANT]\n> This server uses service account authentication. The service account must be added as a user on each Search Console property you want to access.\n\n## Tools\n\n<details>\n<summary><code>list_sites</code></summary>\n\nList all sites (properties) you have access to in Google Search Console.\n\nNo parameters required.\n</details>\n\n<details>\n<summary><code>search_analytics</code></summary>\n\nQuery search analytics data — clicks, impressions, CTR, and position.\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `siteUrl` | string | Yes | Site URL as it appears in Search Console (e.g. `https://example.com/` or `sc-domain:example.com`) |\n| `startDate` | string | Yes | Start date in `YYYY-MM-DD` format |\n| `endDate` | string | Yes | End date in `YYYY-MM-DD` format |\n| `dimensions` | string | No | Comma-separated: `query`, `page`, `country`, `device`, `searchAppearance`, `date` |\n| `rowLimit` | number | No | Max rows to return (default 100, max 25000) |\n| `searchType` | string | No | `web`, `image`, `video`, `news`, `discover`, or `googleNews` (default `web`) |\n| `queryFilter` | string | No | Filter by query. Prefix with `regex:` for regex matching |\n| `pageFilter` | string | No | Filter by page URL. Prefix with `regex:` for regex matching |\n| `countryFilter` | string | No | ISO 3166-1 alpha-3 country code (e.g. `USA`, `GBR`) |\n| `deviceFilter` | string | No | `DESKTOP`, `MOBILE`, or `TABLET` |\n</details>\n\n<details>\n<summary><code>inspect_url</code></summary>\n\nCheck indexing status, crawl info, and mobile usability for a URL.\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `siteUrl` | string | Yes | Site URL as it appears in Search Console |\n| `inspectionUrl` | string | Yes | The full URL to inspect (must belong to the site) |\n</details>\n\n<details>\n<summary><code>list_sitemaps</code></summary>\n\nList all submitted sitemaps and their status for a site.\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `siteUrl` | string | Yes | Site URL as it appears in Search Console |\n</details>\n\n\n## Installation\n\n### Quick setup via agent\n\nAlready have your [service account key](#google-cloud-setup-service-account-key)? Paste this prompt into Claude Code or Claude Desktop and it will configure everything for you:\n\n> Clone and build the Google Search Console MCP server from https://github.com/sarahpark/google-search-console-mcp, then add it to my global MCP config. My service account key is at `/path/to/service-account-key.json`. After setup, call `list_sites` to verify it works.\n\nReplace the key path with your actual file location.\n\n### Build from source\n\n```bash\ngit clone https://github.com/sarahpark/google-search-console-mcp.git\ncd google-search-console-mcp\nnpm install\nnpm run build\n```\n\n## Configuration\n\n### Google Cloud setup: service account key\n\n1. Go to [Google Cloud Console](https://console.cloud.google.com/) and create a new project (or select an existing one)\n2. Open the [Search Console API page](https://console.cloud.google.com/marketplace/product/google/searchconsole.googleapis.com) and click **Enable**\n3. In the sidebar, go to **APIs & Services** → **Credentials**\n4. Click **Create Credentials** → **Service account**\n5. Give it a name (e.g. \"search-console-mcp\"), then click **Create and Continue**\n6. You can skip the optional role/access steps — click **Done**\n7. On the Credentials page, click on the service account you just created\n8. Go to the **Keys** tab → **Add Key** → **Create new key** → select **JSON** → click **Create**\n9. A `.json` key file will download — save it somewhere safe (e.g. `~/.config/gcloud/service-account-key.json`)\n\n> [!CAUTION]\n> Treat this key file like a secret key. Do **not** save it inside your project repo or commit it to git. Store it outside your project directory and reference it by absolute path in your MCP config.\n\n### Google Search Console access\n\n1. Copy the service account's email address (it looks like `name@project-id.iam.gserviceaccount.com` — you can find it on the service account details page)\n2. Go to [Google Search Console](https://search.google.com/search-console)\n3. Select your property, then go to **Settings** → **Users and permissions**\n4. Click **Add user**, paste the service account email, set the permission to **Restricted**, and click **Add**\n\n### Claude Desktop\n\nAdd to your `claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"gsc\": {\n      \"command\": \"node\",\n      \"args\": [\"/absolute/path/to/google-search-console-mcp/build/index.js\"],\n      \"env\": {\n        \"GOOGLE_APPLICATION_CREDENTIALS\": \"/absolute/path/to/service-account-key.json\"\n      }\n    }\n  }\n}\n```\n\n### Claude Code (VS Code)\n\nAdd to the `\"mcpServers\"` object in `~/.claude.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"gsc\": {\n      \"type\": \"stdio\",\n      \"command\": \"node\",\n      \"args\": [\"/absolute/path/to/google-search-console-mcp/build/index.js\"],\n      \"env\": {\n        \"GOOGLE_APPLICATION_CREDENTIALS\": \"/absolute/path/to/service-account-key.json\"\n      }\n    }\n  }\n}\n```\n\n## Usage\n\nOnce configured, ask Claude naturally:\n\n- \"List my Search Console properties\"\n- \"Show me the top 20 queries for my site over the last 28 days\"\n- \"Check the indexing status of https://example.com/blog/my-post\"\n- \"Compare mobile vs desktop performance this month\"\n- \"What sitemaps are submitted for my site?\"\n\n## License\n\nMIT\n",
  "bytes": 6245,
  "sha": "d462a40b38d2bb7177beed1bba1eb514412e3082ce1aea7c18d48d2cb7882a9d",
  "repo_slug": "sarahpark/google-search-console-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_sarahpark_google_search_consol_9b403378/readme"
}