Skip to main content
Glama

Kleap

Get Google Search Performance

get_search_console
Read-only

Use this when the user asks how their site is doing IN GOOGLE SEARCH — keywords/queries they rank for, impressions, clicks from search, CTR, or average position. Backed by their own Google Search Console property (connected per site in Kleap's options), so it is the real Google data, not an estimate. Returns totals plus the top queries and top pages that produced them. Search Console lags real traffic by ~2 days — the newest days are always incomplete, say so rather than reporting a drop. If connected is false or site_selected is false, the site simply has no Search Console hooked up: call connect_search_console(app_id) — it returns a consent_url to hand the user, and that is the whole setup. Do NOT send them hunting through Kleap's settings for it. For visitors and pageviews on the site itself (all sources, not just Google), use get_analytics instead. Requires the analytics:read scope — on a 403 INSUFFICIENT_SCOPE error, tell the user to disconnect and reconnect the Kleap integration (re-authorize).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
app_idYesThe app id to fetch search data for
periodNoTime window: '28d' (default, the window Search Console itself shows), '7d', '30d' or '90d'
contextYesWhy this call, in one short sentence. Used to improve the connector; never include credentials or personal data.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
ctrNo
noteNo
app_idNo
clicksNo
periodNo
messageNo
has_dataNo
positionNo
site_urlNo
connectedNo
top_pagesNo
impressionsNo
top_queriesNo
site_selectedNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

The description discloses real behavioral traits beyond annotations: the ~2 day data lag and instruction not to report it as a drop, that the data is real Google data not an estimate, what the response includes (totals, top queries, top pages), and the required analytics:read scope. This substantially enriches the safe read-only picture annotations already imply.

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

Conciseness5/5

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

The description is long but every sentence earns its place: use case, data source, return content, lag caveat, setup routing, alternative tool, and auth failure handling are all distinct and actionable. It is front-loaded with the primary use case and structured logically.

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?

Given the output schema exists, return values need no further explanation. The description covers setup fallback, scope requirements, error behavior, data freshness caveat, and sibling routing, so an agent has everything needed to invoke and interpret this tool correctly.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents app_id, period, and context. The description adds minimal new parameter-level meaning beyond noting the per-site connection model for app_id and the lag caveat tied to period interpretation, which is enough to justify a baseline 3.

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 names a specific verb and resource: fetching Google Search Console performance data (queries, impressions, clicks, CTR, position). It also explicitly distinguishes itself from get_analytics, making the tool's scope unmistakable.

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?

It gives explicit when-to-use context (user asks about Google Search performance), when-not-to-use (site visitors/pageviews → get_analytics), and even routes the agent to connect_search_console when no property is connected. Error handling for the 403 scope issue is also specified.

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.