Skip to main content
Glama

get_query_to_url

Join Google Search Console queries with Shopify product sales — answers questions that pure SEO or pure sales tools can't. Reports: by_url (given a product URL, return its top driving organic queries plus the matching product's sales/orders/refunds and an implied click-to-purchase rate), unconverting_pages (URLs that received >= minClicks organic clicks but the matching product sold <= maxSales units in the same window — flags 'SEO-visible-but-not-converting' listings), top_pages_with_sales (top organic pages joined with their product sales, ranked by clicks × orderCount so high-throughput pages surface). For unconverting_pages and top_pages_with_sales, only product URLs (matching /products/{handle}) are joined to sales — collection pages and blog posts are not.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlNoFor by_url: the exact URL as it appears in Search Console (https:// included, with or without trailing slash to match how GSC indexed it).
limitNoNumber of results (by_url: top queries to return; unconverting_pages / top_pages_with_sales: max URLs returned). Default 20.
reportYesReport type
_offsetNoPagination offset. If a response includes _pagination.hasMore=true, use _offset to fetch the next page.
endDateNoEnd date (YYYY-MM-DD). Defaults to yesterday (last fully-closed day — today is excluded by default to avoid partial-day totals; pass an explicit endDate to include today).
maxSalesNoFor unconverting_pages: maximum units sold for the matched product in the same window (default 2). 0 means 'pages with zero sales only'.
minClicksNoFor unconverting_pages: minimum organic clicks for a URL to be considered (default 50). Lower for low-traffic stores; raise to focus on bigger problems.
startDateNoStart date (YYYY-MM-DD). Defaults to a 30-day window ending yesterday.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added
  2. Removed
  3. Added

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral burden and does so usefully: it discloses the join scope (only /products/{handle} URLs are matched for two reports; collection and blog pages are excluded) and the ranking formula (clicks × orderCount). It does not mention auth requirements or rate limits, but the core semantics of what is computed and what is silently dropped are 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?

Front-loaded with the join purpose, then a compact enumeration of the three report modes with their returned shape. Dense but every clause carries information; the only mild bloat is the repeated qualification about product-only joins, which could be folded tighter.

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

Completeness4/5

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

For an 8-parameter, no-output-schema tool, the description does the necessary work of sketching what each report returns (driving queries plus sales/orders/refunds, implied click-to-purchase rate, ranked page lists). It leaves the exact field names of the responses unspecified, which is the remaining gap given there is no output schema.

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

Parameters4/5

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

Schema coverage is 100%, so the parameter descriptions already document defaults and formats, setting a baseline of 3. The prose goes further by explaining which parameters matter to which report (url only for by_url, minClicks/maxSales only for unconverting_pages) and by expanding the bare 'Report type' enum into three meaningful modes.

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?

States a specific verb and resource combination ('Join Google Search Console queries with Shopify product sales') and immediately names the reports it produces. The self-positioning line ('answers questions that pure SEO or pure sales tools can't') separates it from the other analytics siblings an agent might otherwise pick.

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?

Gives concrete context for each report: by_url when you have a product URL, unconverting_pages to flag SEO-visible-but-not-converting listings, top_pages_with_sales to find high-throughput pages. It stops short of naming a specific alternative tool to use instead or stating exclusions beyond the join limitation.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources