Google Search Console MCP Intel Engine
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GSC_SITE_URL | Yes | Your Google Search Console property URL, e.g., sc-domain:example.com or https://example.com/ | |
| GOOGLE_APPLICATION_CREDENTIALS | Yes | Path to the Google service account JSON key file. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_gsc_sitesA | List all sites verified in Google Search Console. Returns: List of verified sites with their permission levels. |
| list_sitesA | List all sites verified in Google Search Console (alias for list_gsc_sites). Returns: List of verified sites with their permission levels. |
| list_available_dimensionsA | List all available GSC dimensions with their descriptions. Returns: List of dimension objects with api_name and description. |
| list_available_metricsA | List all available GSC metrics with their descriptions. Returns: List of metric objects with api_name and description. |
| skills_listA | List available analytical skills (playbooks) for Google Search Console. Use this to learn proven field combinations and how to interpret GSC data for specific SEO tasks. Fetch the full playbook with skill_read. |
| skill_readA | Fetch the full content of one analytical skill (playbook) for Google Search Console. Args: skill_id: The skill id from skills_list (e.g., "brand_visibility.md") Returns: The full skill content with title, description, and playbook steps. |
| get_search_analyticsA | Retrieve Google Search Console search analytics data. Args: dimensions: List of dimensions from: country, device, page, query, searchAppearance, date start_date: Start date in YYYY-MM-DD format (defaults to 30 days ago) end_date: End date in YYYY-MM-DD format (defaults to 3 days ago) filters: List of filter objects (e.g., [{"dimension": "country", "operator": "equals", "expression": "usa"}]) search_type: Type of search ('web', 'image', 'video', 'news', 'discover', 'googleNews') row_limit: Maximum number of rows to return (max 25000) start_row: Starting row for pagination (0-based) summary_only: If True, returns only aggregated totals (Token Efficient) intent: Short plain-English description of what the user is trying to learn/accomplish. E.g. "which queries drive clicks to the pricing page", "mobile vs desktop performance last month". Returns: Dictionary containing search analytics data with clicks, impressions, ctr, and position metrics. |
| get_sitemapsA | Get all sitemaps for the configured site. Returns: List of sitemaps with their status and details. |
| submit_sitemapB | Submit a sitemap to Google Search Console. Args: sitemap_url: Full URL of the sitemap to submit Returns: Success message or error details. |
| delete_sitemapA | Delete a sitemap from Google Search Console. Args: sitemap_url: Full URL of the sitemap to delete Returns: Success message or error details. |
| check_for_updatesA | Check PyPI for newer versions of this MCP server and get upgrade instructions. |
| setup_gsc_accessA | Interactively fix a broken Google Search Console MCP setup (missing or wrong credentials path, missing GSC_SITE_URL, invalid key, or missing property access) by asking the user for the needed value through the client, then re-initializing without a restart. Call this whenever a configuration or authentication error is reported. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| analyze-brand-visibility | How visible is a brand in Google Search? Branded vs non-branded share, CTR, positions. |
| content-opportunities | Striking-distance queries, low-CTR pages, and content gaps worth acting on. |
| diagnose-traffic-drop | Compare two periods and localize a search traffic drop: which segment, impressions vs CTR, likely cause. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| skill-brand_visibility | Analyzes 'Branded' vs 'Non-Branded' performance to see if you are a 'Reference' or a 'Destination'. |
| skill-citation_opportunities | Identifies 'Information Gaps' where your site ranks #1 but has low CTR. |
| skill-intent_efficiency | Aggregates metrics by 'User Intent' (Informational vs. Transactional). |
| skill-intent_segmentation | Segments traffic into 'Searchers' (Keyword-based) vs. 'Prompters' (Natural Language). |
| skill-search_appearance_audit | Contrast standard vs. featured results bypassing GSC API limitations. |
TDQS
Scored across 12 tools
Most tools target distinct operations, but list_sites is an explicit alias for list_gsc_sites, giving two tools that do exactly the same thing with no guidance on which to pick. The skills_list/skill_read pair and the two metadata listers are otherwise reasonably separable.
The majority follow a snake_case verb_noun pattern (list_gsc_sites, submit_sitemap, get_search_analytics), but skills_list and skill_read invert it to noun_verb and also mix plural/singular (skills_ vs skill_), breaking predictability.
Twelve tools is a sensible scope for a GSC integration, but one is a pure alias and two (setup_gsc_access, check_for_updates) are operational meta-tools rather than analytics capabilities, leaving roughly nine core domain tools.
Sites, sitemaps (get/submit/delete), and search analytics are covered, but there is no URL Inspection / indexing-status tool and no way to surface or select a site other than the configured default, which are core GSC workflows. Metadata helpers (dimensions/metrics) partially compensate.