Skip to main content
Glama
PROMPTEYE-SP-Z-O-O

prompteye-mcp

Official

Read how the site does in Google Search

get_search_performance
Read-only

Retrieve Google search clicks, impressions, click-through rate, and average position for your site over a date range, with optional ranking by query or page to identify top performers.

Instructions

Clicks, impressions, click-through rate and average position of the active project's site in ordinary Google results, with the daily timeline behind them.

Pass by to rank the period instead of totalling it: query for the phrases people found the site with, page for the pages Google sends them to. A ranking is built by adding the period up, so it answers with the strongest entries rather than a list to walk to the end of — raise limit to see further down.

Google's figures answer a different question from everything else here: visibility counts the answers that named the brand, and this counts the people who then arrived. Search Console covers ordinary Google results — ctr is a rate between 0 and 1, and position counts from 1, so lower is better. AI traffic is Google Analytics sessions whose referrer was recognised as an assistant, which undercounts by design: an assistant that names the brand without linking it sends nobody, and somebody who reads an answer and then types the domain arrives as direct traffic. Read a rise here as people acting on the answers, never as how often the brand is named. Mind the two senses of the phrase: the aiTraffic field on a prompt is the demand behind that question, while get_ai_traffic counts sessions that reached the site.

Both integrations are bound to the project in the PromptEye app. A project with nothing bound answers with zeros and empty lists, which reads exactly like a site nobody visits — so call get_google_status before reporting a zero as a finding, and say which of the two it was.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
byNoRank the period along this axis instead of reporting its totals.
limitNoHow many entries to return, at most 200. Ignored without `by`.
endDateNoLast day to report on, inclusive. Defaults to today, and must be within 366 days of startDate.
startDateNoFirst day to report on, inclusive. Defaults to 30 days before today.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.0.16

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds meaningful behavioral context beyond that: unbound integrations return zeros and empty lists indistinguishable from a site nobody visits, CTR is a 0-1 rate, position counts from 1 (lower is better), and AI traffic undercounts by design. It also discloses the daily timeline behind the totals. The only minor gap is not describing the exact response shape, but with no output schema and rich behavioral caveats, the description carries its burden well.

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 long but every sentence earns its place: the first sentence states the core function, the second explains the ranking mode, and the remaining sentences carry critical caveats about interpretation and integration state. It is front-loaded with the essential purpose and uses paragraph breaks to separate concerns. It could be tightened slightly, but the density of useful guidance justifies the length.

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 read-only analytics tool with 4 optional parameters, 100% schema coverage, and no output schema, the description covers everything an agent needs: what the numbers mean, how to interpret them, when to distrust them, how to disambiguate from siblings, and what to do before reporting a zero. The integration-bound caveat is exactly the kind of contextual trap that would otherwise cause false findings.

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 baseline is 3. The description adds real value beyond the schema: it explains that `by` changes the aggregation from totals to a ranking, that `limit` is ignored without `by`, and that a ranking answers with the strongest entries rather than a walkable list. It also clarifies the date-range semantics indirectly by noting the daily timeline. This exceeds the baseline but doesn't fully document every parameter interaction (e.g., endDate/startDate defaults are already in the schema).

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 precise verb-resource pair: it reports clicks, impressions, CTR, and average position for the active project's site in ordinary Google results, with a daily timeline. It also distinguishes itself from get_ai_traffic by contrasting visibility (brand named) vs arrivals, and from get_google_status by noting the bound-integration prerequisite. This is a specific, differentiated purpose statement.

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

Usage Guidelines5/5

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

The description explicitly says when to use the `by` parameter (to rank instead of total), when to raise `limit`, and when NOT to report a zero: call get_google_status first to determine whether the integration is bound. It also warns that a rise here means people acting on answers, not brand mentions, and clarifies the two senses of aiTraffic versus get_ai_traffic. This is exemplary routing and exclusion guidance.

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