Skip to main content
Glama
shutovdef-dotcom

Google Search Console MCP Server

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
GSC_DATA_STATENoData state for Search Analytics: 'all' (default), 'final', or 'hourly_all'.all
GSC_EXPORT_DIRNoDirectory for read-only Search Analytics snapshot exports. Defaults to <GSC config dir>/exports.
GSC_SKIP_OAUTHNoSet to 'true' to force service account auth and skip OAuth entirely.false
GSC_ALLOW_REMOTE_SSENoRequired to bind SSE/HTTP transport to a non-loopback host such as 0.0.0.0.false
GSC_CREDENTIALS_PATHNoAbsolute path to your service account JSON key. Required when using service account.
GSC_ALLOW_DESTRUCTIVENoSet to 'true' to enable add/delete site and submit/delete sitemap external mutation tools.false
GSC_OAUTH_CLIENT_SECRETS_FILENoAbsolute path to your OAuth client secrets JSON. Required when using OAuth.

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
gsc_get_manual_operator_checklistA

Return a stable read-only checklist for Search Console UI-only/manual surfaces. This tool never calls Google APIs, never requires credentials, and never mutates Search Console. It tells an operator what to review and what evidence to bring back.

get_capabilitiesA

Get a full list of all available tools, current auth status, and how to get started. ALWAYS call this first when asked what tools are available, what this server can do, or how to get started. Returns all tool names grouped by category in a single call — faster than searching individually. Also shows if authentication is needed.

list_propertiesA
List all Google Search Console (GSC) properties and sites the user has access to.
Use this to see all verified sites, domain properties, and URL-prefix properties
in the connected Google Search Console account. Always call this first to get the
exact site_url needed for other tools.
add_siteA
Add a site to your Search Console properties.

Args:
    site_url: The URL of the site to add (must be exact match e.g. https://example.com, or https://www.example.com, or https://subdomain.example.com/path/, for domain properties use format: sc-domain:example.com)
delete_siteA
Remove a site from your Search Console properties.

Args:
    site_url: The URL of the site to remove (must be exact match e.g. https://example.com, or https://www.example.com, or https://subdomain.example.com/path/, for domain properties use format: sc-domain:example.com)
get_search_analyticsA
Get search analytics data for a specific property.

Args:
    site_url: Exact GSC property URL from list_properties (e.g. "https://example.com/" or
              "sc-domain:example.com"). Domain properties cover all subdomains — use the
              domain property as site_url and filter by page to analyze a specific subdomain.
    days: Number of days to look back (default: 28)
    dimensions: Dimensions to group by (default: query). Options: query, page, device, country, date
               You can provide multiple dimensions separated by comma (e.g., "query,page")
    row_limit: Number of rows to return (default: 20, max: 500). Use 5-20 for quick overviews,
               50-200 for deeper analysis, up to 500 for comprehensive reports. For bulk exports
               beyond 500 rows, use get_advanced_search_analytics which supports pagination.
get_site_detailsA
Get detailed information about a specific Search Console property.

Args:
    site_url: Exact GSC property URL from list_properties (e.g. "https://example.com/" or
              "sc-domain:example.com"). Domain properties cover all subdomains — use the
              domain property as site_url and filter by page to analyze a specific subdomain.
get_sitemapsA
List all sitemaps for a specific Search Console property.

Args:
    site_url: Exact GSC property URL from list_properties (e.g. "https://example.com/" or
              "sc-domain:example.com"). Domain properties cover all subdomains — use the
              domain property as site_url and filter by page to analyze a specific subdomain.
audit_sitemap_urlsA
Safely fetch and parse an XML sitemap or sitemap index for read-only diagnostics.

This tool does not submit/delete sitemaps and does not call URL Inspection. It
validates the sitemap URL against the supplied GSC property scope before any
network request, resolves DNS to block unsafe IP targets, disables redirects,
and caps response bytes.

Args:
    site_url: Exact GSC property URL from list_properties, or sc-domain:example.com
    sitemap_url: Full URL of the sitemap XML to fetch
    max_urls: Maximum number of URL or child sitemap entries to include in samples
gsc_audit_jobposting_schemaA
Read-only JobPosting JSON-LD audit and Indexing API eligibility dry run.

This tool fetches only property-scoped URLs, blocks unsafe/private targets,
does not follow redirects, parses JSON-LD JobPosting objects from static HTML,
validates a minimal Google JobPosting checklist, and returns what Indexing API
action would be eligible in a dry run. It never calls the Indexing API, never
publishes URL_UPDATED or URL_DELETED, never writes files, and never mutates
Search Console.
gsc_build_jobposting_lifecycle_queueA
Build a read-only JobPosting lifecycle action queue.

This composes the safe JobPosting schema audit with optional URL Inspection
diagnostics. It never calls the Google Indexing API, never publishes
URL_UPDATED/URL_DELETED, never requests indexing, never writes files, and
never mutates Search Console.
gsc_run_adjacent_technical_diagnosticsA

Run auth-free, read-only sampled adjacent technical diagnostics for supplied URLs.

This tool performs safe property-scoped HTML and robots.txt fetches only. It never calls Search Console, the Indexing API, PageSpeed Insights, CrUX, or Rich Results Test APIs, never writes files, and never mutates external state.

inspect_url_enhancedA
Enhanced URL inspection to check indexing status and rich results in Google.

Args:
    site_url: Exact GSC property URL from list_properties (e.g. "https://example.com/" or
              "sc-domain:example.com"). Domain properties cover all subdomains — use the
              domain property as site_url and filter by page to analyze a specific subdomain.
    page_url: The specific URL to inspect
    language_code: Optional IETF BCP-47 language code to pass to the URL Inspection API
batch_url_inspectionA
Inspect multiple URLs in batch (within API limits).

Args:
    site_url: Exact GSC property URL from list_properties (e.g. "https://example.com/" or
              "sc-domain:example.com"). Domain properties cover all subdomains — use the
              domain property as site_url and filter by page to analyze a specific subdomain.
    urls: List of URLs to inspect, one per line
build_indexing_action_queueA

Build a read-only prioritized action queue from URL Inspection data.

This tool does not request indexing. It only inspects URL-level indexed state for up to 10 URLs and recommends manual next steps.

check_indexing_issuesA
Check for specific indexing issues across multiple URLs.

Args:
    site_url: Exact GSC property URL from list_properties (e.g. "https://example.com/" or
              "sc-domain:example.com"). Domain properties cover all subdomains — use the
              domain property as site_url and filter by page to analyze a specific subdomain.
    urls: List of URLs to check, one per line
get_performance_overviewA
Get a performance overview for a specific property.

Args:
    site_url: Exact GSC property URL from list_properties (e.g. "https://example.com/" or
              "sc-domain:example.com"). Domain properties cover all subdomains — use the
              domain property as site_url and filter by page to analyze a specific subdomain.
    days: Number of days to look back (default: 28)
get_advanced_search_analyticsA
Get advanced search analytics data with sorting, filtering, and pagination.

Args:
    site_url: Exact GSC property URL from list_properties (e.g. "https://example.com/" or
              "sc-domain:example.com"). Domain properties cover all subdomains — use the
              domain property as site_url and filter by page to analyze a specific subdomain.
    start_date: Start date in YYYY-MM-DD format (defaults to 28 days ago)
    end_date: End date in YYYY-MM-DD format (defaults to today)
    dimensions: Dimensions to group by, comma-separated (e.g., "query,page,device")
    search_type: Type of search results (WEB, IMAGE, VIDEO, NEWS, DISCOVER)
    row_limit: Maximum number of rows to return (max 25000)
    start_row: Starting row for pagination
    sort_by: Metric to sort by (clicks, impressions, ctr, position)
    sort_direction: Sort direction (ascending or descending)
    filter_dimension: Single filter dimension (query, page, country, device). Use 'filters' instead for multiple filters.
    filter_operator: Single filter operator (contains, equals, notContains, notEquals)
    filter_expression: Single filter expression value
    filters: JSON array of filter objects for AND logic across multiple dimensions. Overrides
             filter_dimension/filter_operator/filter_expression when provided. Each object must
             have 'dimension', 'operator', and 'expression' keys. Valid dimensions: query, page,
             country, device. Valid operators: contains, equals, notContains, notEquals.
             Example: [{"dimension":"country","operator":"equals","expression":"usa"},
                       {"dimension":"device","operator":"equals","expression":"MOBILE"}]
    data_state: Data freshness — "all" (default, matches GSC dashboard) or "final" (confirmed data only, 2-3 day lag)
gsc_build_cannibalization_decision_queueB

Build a read-only sampled decision queue for likely keyword cannibalization.

Uses one official Search Analytics query call with dimensions query,page. A query is a candidate when two or more distinct returned page URLs compete for that query. This is a diagnostic queue, not proof of cannibalization.

gsc_build_content_action_queueB

Build a read-only prioritized content-opportunity action queue.

Uses one official Search Analytics query call and returns heuristic action items for high-impression/low-CTR rows, striking-distance rankings, and page/query refresh opportunities. It does not mutate Search Console state.

gsc_build_traffic_drop_queueC

Build a read-only prioritized action queue for Search Analytics traffic drops.

Uses two official Search Analytics query calls, compares current vs previous rows by dimension keys, and returns stable JSON for operator/agent workflows.

gsc_run_weekly_seo_ops_reportB

Compose a read-only weekly SEO ops report from official Search Analytics data, existing diagnostic queues, and an auth-free static manual checklist.

gsc_export_search_analytics_snapshotC
Export a read-only Search Analytics snapshot to JSONL and/or CSV plus manifest.

Files are written only below GSC_EXPORT_DIR when set, otherwise below the GSC
config directory's exports/ folder. This uses Search Analytics query pagination
and does not mutate Search Console state.
compare_search_periodsB
Compare search analytics data between two time periods.

Args:
    site_url: Exact GSC property URL from list_properties (e.g. "https://example.com/" or
              "sc-domain:example.com"). Domain properties cover all subdomains — use the
              domain property as site_url and filter by page to analyze a specific subdomain.
    period1_start: Start date for period 1 (YYYY-MM-DD)
    period1_end: End date for period 1 (YYYY-MM-DD)
    period2_start: Start date for period 2 (YYYY-MM-DD)
    period2_end: End date for period 2 (YYYY-MM-DD)
    dimensions: Dimensions to group by (default: query)
    limit: Number of top results to compare (default: 10)
get_search_by_page_queryA
Get search analytics data for a specific page, broken down by query.

Args:
    site_url: Exact GSC property URL from list_properties (e.g. "https://example.com/" or
              "sc-domain:example.com"). Domain properties cover all subdomains — use the
              domain property as site_url and filter by page to analyze a specific subdomain.
    page_url: The specific page URL to analyze
    days: Number of days to look back (default: 28)
    row_limit: Number of rows to return (default: 20, max: 500). Use 5-20 for quick overviews,
               50-200 for deeper analysis, up to 500 for comprehensive reports. For bulk exports
               beyond 500 rows, use get_advanced_search_analytics which supports pagination.
list_sitemaps_enhancedA
List all sitemaps for a specific Search Console property with detailed information.

Args:
    site_url: Exact GSC property URL from list_properties (e.g. "https://example.com/" or
              "sc-domain:example.com"). Domain properties cover all subdomains — use the
              domain property as site_url and filter by page to analyze a specific subdomain.
    sitemap_index: Optional sitemap index URL to list child sitemaps
get_sitemap_detailsA
Get detailed information about a specific sitemap.

Args:
    site_url: Exact GSC property URL from list_properties (e.g. "https://example.com/" or
              "sc-domain:example.com"). Domain properties cover all subdomains — use the
              domain property as site_url and filter by page to analyze a specific subdomain.
    sitemap_url: The full URL of the sitemap to inspect
submit_sitemapA
Submit a new sitemap or resubmit an existing one to Google.

Args:
    site_url: Exact GSC property URL from list_properties (e.g. "https://example.com/" or
              "sc-domain:example.com"). Domain properties cover all subdomains — use the
              domain property as site_url and filter by page to analyze a specific subdomain.
    sitemap_url: The full URL of the sitemap to submit
delete_sitemapA
Delete (unsubmit) a sitemap from Google Search Console.

Args:
    site_url: Exact GSC property URL from list_properties (e.g. "https://example.com/" or
              "sc-domain:example.com"). Domain properties cover all subdomains — use the
              domain property as site_url and filter by page to analyze a specific subdomain.
    sitemap_url: The full URL of the sitemap to delete
manage_sitemapsA
All-in-one tool to manage sitemaps (list, get details, submit, delete).

Args:
    site_url: Exact GSC property URL from list_properties (e.g. "https://example.com/" or
              "sc-domain:example.com"). Domain properties cover all subdomains — use the
              domain property as site_url and filter by page to analyze a specific subdomain.
    action: The action to perform (list, details, submit, delete)
    sitemap_url: The full URL of the sitemap (required for details, submit, delete)
    sitemap_index: Optional sitemap index URL for listing child sitemaps (only used with 'list' action)
get_creator_infoB

Provides information about Amin Foroutan, the creator of the MCP-GSC tool.

reauthenticateA

Perform a logout and new login sequence. Deletes the current OAuth token file and triggers the browser authentication flow. Useful when you need to switch to a different Google account.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/shutovdef-dotcom/google-search-console-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server