Skip to main content
Glama
ledokter

mcp-search-console

by ledokter

get_advanced_search_analytics

Retrieve advanced Google Search Console analytics with sorting, filtering, and pagination to analyze queries, pages, devices, and more.

Instructions

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)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
filtersNo
sort_byNoclicks
end_dateNo
site_urlYes
row_limitNo
start_rowNo
data_stateNo
dimensionsNoquery
start_dateNo
search_typeNoWEB
sort_directionNodescending
filter_operatorNocontains
filter_dimensionNo
filter_expressionNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It discloses default date ranges, filter override behavior, row_limit maximum, pagination via start_row, and the difference between 'all' and 'final' data states. It does not explicitly state read-only behavior, but 'Get' and the analytics context make that reasonably clear.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a compact Args-style block with each parameter on its own line and the core purpose front-loaded. It is long due to 14 parameters, but each line provides necessary detail without fluff. The JSON filter example is the only slightly verbose part, yet it earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 14-parameter tool with no annotations and no enum constraints, this description provides all necessary invocation details: exact formats, defaults, constraints, pagination semantics, and data freshness behavior. An output schema exists, so the description does not need to explain return values.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description fully compensates by documenting every parameter with formats, defaults, valid values, and relationships. The filters parameter even includes a JSON example and explains that it overrides the single-filter parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: 'Get advanced search analytics data with sorting, filtering, and pagination.' This clearly distinguishes it from the simpler sibling get_search_analytics and states exactly what the tool does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It offers concrete usage context, such as requiring site_url to be an exact property from list_properties, explaining domain-property/subdomain analysis, and describing data_state freshness trade-offs. It does not explicitly contrast with get_search_analytics, but the advanced capabilities and parameter guidance make the intended use clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

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/ledokter/mcp-gsc'

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