Skip to main content
Glama
Bishwas-py

AI SEO Toolkit

by Bishwas-py

gsc_audit

Audit Google Search Console data to build a ranked fix list for striking-distance keywords, cannibalisation, decay, and click-through gaps using measured metrics.

Instructions

Turn a Google Search Console export into a ranked fix list: striking distance, cannibalisation, decay and click-through gaps. Works from measured data, not estimates. Returns the full instructions to follow; carry them out rather than summarising them.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
daysNoWindow in days, default 90
siteNoDomain to audit, e.g. example.com. Pulls live data when a Search Console tool is connected
focusNoLimit to a section or path, e.g. /blog
regionNoTarget market, e.g. United States, United Kingdom, Canada
tongueNoOutput language, e.g. English, Arabic, Dutch, French

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries the full burden, and it does disclose an important non-obvious trait: the return value is a set of instructions to be carried out, not a summary. However, it says nothing about read-only behaviour, whether it writes to the GSC property, auth requirements, or the cost of a live pull against 90 days of data.

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?

Two sentences, front-loaded with the outcome, and the closing clause about executing rather than summarising the returned instructions is high-value. Minor redundancy in 'measured data, not estimates' which says the same thing twice.

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

Completeness3/5

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

Five optional parameters with no output schema and no annotations means the description should be doing more work than it does; it omits defaults (90 days), what happens with no site given, and whether live-pull mode needs prior authentication. The key disclosure that the output is instructions is present, which keeps it at minimum viable.

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 every one of the five parameters (days, site, focus, region, tongue) is already documented with an example. The description adds no parameter-level meaning such as format constraints or interaction between site and focus, so the baseline 3 applies.

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

Purpose4/5

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

States a concrete verb and resource ('turn a Google Search Console export into a ranked fix list') and enumerates the four analyses it performs (striking distance, cannibalisation, decay, click-through gaps). It is clearly distinguishable from keyword clustering or schema tools, though it never names a sibling to contrast against.

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

Usage Guidelines3/5

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

'Works from measured data, not estimates' and the schema note about pulling live data when Search Console is connected imply the usage context, but the description never states when to pick this over traffic_drop or content_refresh, nor any prerequisites. Usage is inferable rather than stated.

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