GSC SEO MCP
This server connects Google Search Console to AI assistants (Cursor, Claude, Gemini), enabling plain-English SEO analysis and management.
Server Management
Check server health, list/add/delete GSC properties
Search Analytics
Flexible queries with custom dimensions, filters, date ranges (up to 50,000 rows)
Top queries & pages, performance overviews, period comparisons, dimension breakdowns, and page-query matrices
SEO Analysis
Quick wins – keywords ranking positions 4–15 ready to push to page 1
CTR opportunities – underperforming snippets relative to ranking position
Content decay – pages with declining traffic across multiple periods
Traffic drop diagnosis – classify drops as ranking loss, CTR loss, demand decline, or mixed
Cannibalization – queries where multiple pages split traffic
Brand vs. non-brand split, search intent breakdown, device/country opportunities
Long-tail questions, page refresh priorities, internal link opportunities
Query-page fit – analyze a URL's query mix and intent alignment
Title/meta briefs – data-backed refresh briefs from high-impression, low-CTR queries
Anomaly alerts – detect abnormal click/impression losses
Indexing, Sitemaps & URL Inspection
Inspect individual or batches of URLs for index status, canonicalization, and crawl issues
Summarize index coverage across a URL list
List, submit, and delete sitemaps
Send Indexing API URL_UPDATED/URL_DELETED signals for eligible pages (JobPosting/BroadcastEvent)
Reporting & Verification
Multi-site dashboards, generate Markdown SEO reports
Re-query GSC to verify numeric SEO claims before presenting to stakeholders
Provides tools for querying Google Search Console data, including search analytics, performance snapshots, quick-win keywords, content decay analysis, CTR opportunities, cannibalization checks, brand vs non-brand split, search intent breakdown, URL inspection, sitemap management, Indexing API notifications, multi-site dashboards, and Markdown report generation.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@GSC SEO MCPFind high-impression keywords ranking positions 4 to 15."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
GSC SEO MCP
Connect Google Search Console to Cursor, Claude, or Gemini. Ask questions in plain English and get real SEO data back.
What you can ask your AI once it's set up
Show me the biggest SEO opportunities for my site.
Which pages are losing clicks?
Find keywords ranking positions 4–15 that I can push to page 1.
Split branded vs non-branded traffic for the last 90 days.
Which pages have bad CTR for their ranking position?
Inspect these URLs and tell me what's wrong with indexing.
Generate a Markdown SEO report for the last 28 days.Related MCP server: mcp-gsc-advanced
Setup
There are two parts:
Google — give the MCP access to your Search Console data
Your AI app — tell Cursor / Claude / Gemini how to run it
Pick your Google auth method first:
Service Account | OAuth | |
Best for | Agencies, client sites, teams | Personal sites, your own account |
How it works | JSON key file, no browser login | Signs in via browser once |
Recommended? | Yes, simpler for MCP | Works too |
Part 1 — Google Setup
Step 1: Create a Google Cloud project
This is just a container for API access. It is not your website.
Go to console.cloud.google.com
Click the project dropdown at the top → New Project
Name it
GSC SEO MCPand click CreateMake sure it's selected in the top dropdown after creation
Step 2: Enable the Search Console API
Go to APIs & Services → Library
Search Google Search Console API → click it → click Enable
Optional: also enable Indexing API if you want the
indexing_*tools (only useful for JobPosting/livestream pages)
Option A: Service Account (recommended)
1. Create the service account
Go to IAM & Admin → Service Accounts
Click Create service account
Name:
gsc-seo-mcp→ click Create and continueSkip the role assignment → click Continue → click Done
Copy the service account email — looks like:
gsc-seo-mcp@your-project-id.iam.gserviceaccount.com
2. Download the key file
Click the service account you just created
Go to the Keys tab → Add key → Create new key → JSON → Create
Google downloads a
.jsonfile — save it somewhere safe, like:Mac/Linux:
/Users/your-name/keys/gsc-seo-mcp.jsonWindows:
C:/Users/your-name/keys/gsc-seo-mcp.json
Don't commit this file to GitHub. Treat it like a password.
3. Add it to Search Console
Select your property
Go to Settings → Users and permissions → Add user
Paste the service account email, set permission to Full, click Add
You need to be a property owner to do this.
4. Your MCP config
{
"mcpServers": {
"gsc-seo": {
"command": "npx",
"args": ["-y", "gsc-seo-mcp"],
"env": {
"GSC_AUTH_MODE": "service_account",
"GSC_KEY_FILE": "/absolute/path/to/gsc-seo-mcp.json",
"GSC_SITE_URL": "sc-domain:example.com"
}
}
}
}Windows path tip — use forward slashes or double backslashes:
"GSC_KEY_FILE": "C:/Users/your-name/keys/gsc-seo-mcp.json"Option B: OAuth (sign in with Google)
Use this if you want to connect with your own Google account via browser login.
1. Set up the OAuth consent screen
Go to APIs & Services → OAuth consent screen
Choose External (works for Gmail accounts) → fill in app name, email → save
If the app is in testing mode, add your Gmail under Test users
2. Create the OAuth client
Go to APIs & Services → Credentials → Create credentials → OAuth client ID
Application type: Desktop app → name it
GSC SEO MCP Desktop→ click CreateClick Download JSON — save it like:
Mac/Linux:
/Users/your-name/keys/gsc-oauth-client.jsonWindows:
C:/Users/your-name/keys/gsc-oauth-client.json
3. Your MCP config
{
"mcpServers": {
"gsc-seo": {
"command": "npx",
"args": ["-y", "gsc-seo-mcp"],
"env": {
"GSC_AUTH_MODE": "oauth",
"GSC_OAUTH_SECRETS_FILE": "/absolute/path/to/gsc-oauth-client.json",
"GSC_TOKEN_FILE": "/absolute/path/to/gsc-oauth-token.json",
"GSC_SITE_URL": "sc-domain:example.com"
}
}
}
}GSC_TOKEN_FILE is where the MCP saves your login token after the first browser sign-in. If you leave it out, it saves to ~/.gsc-seo-mcp/token.json by default.
4. First run
Restart your MCP client, then ask it to run server_health or list_properties. A browser window will open — sign in with Google and approve access. That's it, no repeat login needed.
If Google shows an "unverified app" warning, click Advanced → Continue — this is your own OAuth app, it's fine.
Part 2 — Add to your AI app
Node.js 20+ is required. Download here if you don't have it.
Cursor
Create .cursor/mcp.json in your project folder (or use global MCP settings):
{
"mcpServers": {
"gsc-seo": {
"command": "npx",
"args": ["-y", "gsc-seo-mcp"],
"env": {
"GSC_AUTH_MODE": "service_account",
"GSC_KEY_FILE": "/absolute/path/to/service-account.json",
"GSC_SITE_URL": "sc-domain:example.com",
"GSC_BRAND_TERMS": "mybrand,mybrand.com"
}
}
}
}Claude Desktop
Edit claude_desktop_config.json:
Mac:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"gsc-seo": {
"command": "npx",
"args": ["-y", "gsc-seo-mcp"],
"env": {
"GSC_AUTH_MODE": "service_account",
"GSC_KEY_FILE": "/absolute/path/to/service-account.json",
"GSC_SITE_URL": "sc-domain:example.com"
}
}
}
}Restart Claude Desktop after saving.
Claude Code
Create .mcp.json in your project:
{
"mcpServers": {
"gsc-seo": {
"command": "npx",
"args": ["-y", "gsc-seo-mcp"],
"env": {
"GSC_AUTH_MODE": "service_account",
"GSC_KEY_FILE": "/absolute/path/to/service-account.json",
"GSC_SITE_URL": "sc-domain:example.com"
}
}
}
}Or via CLI:
claude mcp add --transport stdio \
--env GSC_AUTH_MODE=service_account \
--env GSC_KEY_FILE=/absolute/path/to/service-account.json \
--env GSC_SITE_URL=sc-domain:example.com \
gsc-seo -- npx -y gsc-seo-mcpGemini CLI
Edit ~/.gemini/settings.json (or .gemini/settings.json in your project):
{
"mcpServers": {
"gsc-seo": {
"command": "npx",
"args": ["-y", "gsc-seo-mcp"],
"env": {
"GSC_AUTH_MODE": "service_account",
"GSC_KEY_FILE": "/absolute/path/to/service-account.json",
"GSC_SITE_URL": "sc-domain:example.com"
},
"timeout": 120000,
"trust": false
}
}
}Property URL format
Use the exact format from Search Console:
sc-domain:example.com ← domain property (recommended)
https://www.example.com/ ← URL-prefix property (include the trailing slash)All config variables
Variable | Required | What it does |
| Recommended | Default property. Example: |
| Optional | Comma-separated properties for multi-site dashboards |
| Optional |
|
| Service account | Path to service account JSON key |
| Service account | Alternative path variable |
| OAuth | Path to OAuth client secret JSON |
| OAuth alternative | Client ID if not using a secrets file |
| OAuth alternative | Client secret if not using a secrets file |
| Optional | Where OAuth token is saved after login |
| Optional | Comma-separated brand terms for |
| Optional | Folder for Markdown reports. Defaults to |
| Optional |
|
Tools
Core
Tool | What it does |
| Shows config status, auth mode, and tool count |
| Lists all Search Console properties you have access to |
| Gets permission details for one property |
| Adds a site to your account |
| Removes a site from your account |
Search Analytics
Tool | What it does |
| Full query with dimensions, filters, search type, and data state |
| Pulls up to 50,000 rows for deeper audits |
| Top queries, optionally filtered by page |
| Top pages, optionally filtered by query |
| Site snapshot with period comparison, daily trend, devices |
| Current vs previous period by page, query, country, or device |
| Performance by one dimension |
| Maps pages to the queries driving them |
SEO Analysis
Tool | What it answers |
| Which keywords are close enough to improve fast? |
| Which snippets underperform for their ranking position? |
| Which pages are declining across multiple periods? |
| Was the drop rankings, CTR, demand, coverage, or mixed? |
| Which queries are split across competing pages? |
| How much traffic is brand vs non-brand? |
| How do queries split across informational, commercial, transactional, navigational, local? |
| Which device/country/page segments have weak CTR or ranking? |
| Which question queries deserve content expansion? |
| Which pages should be updated first? |
| Which strong pages can support weaker pages? |
| What does one page rank for, and does the content match? |
| Which queries should inform title/meta refreshes? |
| Which pages had abnormal losses recently? |
Indexing, Sitemaps, URLs
Tool | What it does |
| Checks one URL for index status, canonical, crawl, coverage |
| Inspects multiple URLs |
| Summarizes inspection results across a URL list |
| Lists submitted sitemaps with errors and indexed counts |
| Details for one sitemap |
| Submits or refreshes a sitemap |
| Deletes a submitted sitemap |
| Sends an Indexing API notification for an eligible URL |
| Sends multiple Indexing API notifications |
| Checks latest Indexing API notification status for a URL |
Reporting
Tool | What it does |
| Compares multiple properties in one view |
| Saves a Markdown SEO report to disk |
| Re-queries GSC to check a number before you report it to a client |
Troubleshooting
Tools don't show up in my AI app
Make sure Node.js 20+ is installed. Check your MCP config uses npx -y gsc-seo-mcp exactly. All file paths must be absolute (not ~/ or relative).
Service account shows no properties You need to add the service account email to Search Console under Settings → Users and permissions.
URL Inspection fails
The URL must belong to the property in GSC_SITE_URL. For URL-prefix properties, use the exact prefix with protocol and trailing slash.
OAuth doesn't open the browser
Set GSC_OAUTH_PORT=0 to let it pick a free port. If you're on a remote machine, you'll need to run this locally instead.
Data notes
Search Analytics rows are sorted by clicks. The API has internal row limits, so not every possible row is included.
GSC_DATA_STATE=allincludes fresh data. Usefinalfor finalized reporting numbers.URL Inspection shows Google's index state, not a live crawl.
The Indexing API is for JobPosting and BroadcastEvent pages only — it's not a general indexing shortcut.
Security
Never commit service account keys, OAuth secrets, or token files to Git.
Use read-only Search Console permissions if you don't need write tools.
Review
delete_site,delete_sitemap,submit_sitemap, andindexing_publish_urlcalls before approving them.
Official docs
License
MIT. If this saves you time, star the repo.
Available Tools
40 toolsadd_siteA
Add a site to the authenticated account. Requires write scope and verification still happens in Search Console.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | Yes | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses that verification is not part of this tool and that write scope is needed, adding value beyond the schema. However, it lacks details on idempotency, error scenarios, or success indication.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 16 words, front-loaded with the core action. Every phrase adds value with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no output schema and no annotations, the description should explain the return value or success indication. It does not, leaving the agent uncertain about the tool's outcome beyond the action itself.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema documentation covers 100% of the parameter (siteUrl) with an example and format. The description does not add parameter-specific meaning, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool adds a site to the authenticated account, using a specific verb ('Add') and resource ('site'). It distinguishes from sibling tools like delete_site and get_site by implying the action of creation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for usage, noting that write scope is required and that verification happens separately. It does not explicitly mention when not to use or alternatives, but the context is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
advanced_filter_queryC
Pull up to 50,000 Search Analytics rows with advanced filters for deeper audits.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| startDate | No | Start date in YYYY-MM-DD. If omitted, days is used. | |
| endDate | No | End date in YYYY-MM-DD. If omitted, days is used. | |
| days | No | Lookback window when startDate/endDate are omitted. | |
| dimensions | No | ||
| filters | No | Search Analytics dimension filters. Operators: contains, equals, notContains, notEquals, includingRegex, excludingRegex. | |
| maxRows | No | ||
| searchType | No | web | |
| dataState | No | all |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description bears full burden. It mentions the 50,000 row limit but omits key behavioral traits like permissions, performance, return format, or how filters aggregate data. The description is too brief for a complex tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the row limit and filtering capability. It is concise and free of fluff, though it could benefit from additional structure given the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the high parameter count (9), many sibling tools, and no output schema or annotations, the description is incomplete. It lacks details on filter syntax, error handling, and how it differs from similar tools, making it insufficient for effective agent usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 56%, but the description adds no parameter-level detail beyond the generic 'advanced filters'. It fails to explain the meaning of parameters like dataState or searchType, relying on schema alone, which is insufficient at this coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it pulls up to 50,000 rows with advanced filters for deeper audits, specifying the verb and resource. It hints at differentiation from sibling tools like search_analytics but does not explicitly distinguish it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus alternatives, such as basic search_analytics. It does not mention exclusions or prerequisites, leaving the agent uninformed about context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
anomaly_alertsB
Detect recent page/query anomalies using the latest period versus the immediately previous period.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| days | No | ||
| minLostClicks | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description reveals minimal behavioral traits: it compares periods to detect anomalies. It does not disclose statistical method, side effects, rate limits, or output format. For a detection tool, this is insufficient transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence clearly states the tool's purpose without filler. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the 4 parameters, no output schema, and no annotations, the description is too brief. It lacks guidance on parameter values, return format, and when to apply, leaving significant gaps for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only 25% of parameters have schema descriptions (siteUrl), and the main description adds no extra meaning to 'days', 'minLostClicks', or 'limit'. The agent must infer their roles, risking misuse. With low schema coverage, the description fails to compensate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool detects anomalies by comparing the latest period to the previous one. The verb 'detect' and resource 'page/query anomalies' are specific. However, it does not differentiate from sibling tools like 'compare_periods' or 'traffic_drop_diagnosis' by stating what constitutes an anomaly or the type of anomaly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for detecting anomalies via period comparison, but provides no guidance on when to use this tool versus alternatives (e.g., for broader drops vs. specific anomalies). No exclusions or recommendations given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
batch_inspect_urlsB
Inspect multiple URLs sequentially. Keep batches small to respect URL Inspection API quotas.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| urls | Yes | ||
| languageCode | No | en-US |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description only mentions sequential processing and quota respect. It omits critical behavioral details such as error handling, partial failures, rate limits, and the structure of results, leaving the agent underinformed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise at two sentences, front-loads the purpose, and contains no wasted words, earning top marks.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a batch tool with 3 parameters, no output schema, and no annotations, the description lacks completeness. It does not explain return values, error behavior, or how to interpret per-URL results, leaving significant gaps for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low at 33% (only siteUrl described). The description does not add meaning to the parameters beyond the schema, failing to compensate for the undocumented urls and languageCode parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Inspect' and resource 'multiple URLs', distinguishing it from the sibling 'inspect_url' tool by emphasizing the batch and sequential nature.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers a practical tip to keep batches small due to quotas, but does not explicitly state when to use this tool over alternatives like inspect_url, nor provides exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
brand_nonbrand_splitC
Split performance into brand and non-brand search demand using configured or supplied brand terms.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| startDate | No | Start date in YYYY-MM-DD. If omitted, days is used. | |
| endDate | No | End date in YYYY-MM-DD. If omitted, days is used. | |
| days | No | Lookback window when startDate/endDate are omitted. | |
| brandTerms | No | ||
| limitExamples | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should disclose behavioral traits. It hints at using configured or supplied brand terms but does not explain if the tool modifies data, requires specific permissions, or has side effects. The brief description leaves many behavioral aspects unclear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no redundancy. While it is concise, it could include more valuable details without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (6 parameters, no output schema, no annotations) and many sibling tools, the description is insufficient. It lacks details on output format, how brand terms are used, what 'configured' means, and any prerequisites for successful use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 67% of parameters with descriptions. The description adds minimal insight beyond the schema, only clarifying that brandTerms can be 'configured or supplied.' It does not explain limitExamples or the relationship between date parameters, so value added is marginal.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: splitting performance data into brand and non-brand categories using brand terms. However, it does not explicitly differentiate from sibling tools like search_analytics or performance_overview, which could also provide performance data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives (e.g., search_analytics). There are no examples or context about prerequisites or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cannibalization_checkC
Find queries where multiple pages compete and split impressions or clicks.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| startDate | No | Start date in YYYY-MM-DD. If omitted, days is used. | |
| endDate | No | End date in YYYY-MM-DD. If omitted, days is used. | |
| days | No | Lookback window when startDate/endDate are omitted. | |
| minQueryImpressions | No | ||
| minPages | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavioral traits. It only states what the tool finds but omits whether the operation is read-only, idempotent, or requires specific permissions. The read-only nature is implied but not explicit, and there is no mention of side effects or resource consumption.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence makes the description concise and easy to scan. However, it packs minimal information; additional structured context (e.g., parameter hints) is missing but the length is appropriate for a straightforward tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 7 parameters, 57% schema coverage, no output schema, and no annotations, the description is insufficient. It does not explain how results are returned, what sorting applies, or how thresholds like minQueryImpressions affect output, leaving important gaps for an agent to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 57%, but the tool description adds no parameter-level insight beyond the schema. Key parameters like 'minQueryImpressions' and 'minPages' are not explained in context, and the description does not compensate for the 43% of parameters lacking schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool's purpose: finding queries where multiple pages compete, splitting impressions or clicks. The verb 'find' and resource 'queries with competing pages' are specific. It distinguishes from siblings like 'page_query_matrix' by focusing on cannibalization, though the term 'compete' lacks precise definition.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives such as 'page_query_matrix' or 'query_page_fit'. No example scenarios, prerequisites, or exclusions are provided, leaving the agent to infer appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_periodsC
Compare current vs previous period by page, query, country, device, or search appearance.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| startDate | No | Start date in YYYY-MM-DD. If omitted, days is used. | |
| endDate | No | End date in YYYY-MM-DD. If omitted, days is used. | |
| days | No | Lookback window when startDate/endDate are omitted. | |
| dimensions | No | ||
| filters | No | Search Analytics dimension filters. Operators: contains, equals, notContains, notEquals, includingRegex, excludingRegex. | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must disclose behavioral traits. It only states 'compare current vs previous period' without explaining what metrics are compared, how periods are defined, or any side effects. Significant gaps exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no wasted words. It is front-loaded with the core action and resources.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 7 parameters, no output schema, and no annotations, the description is too brief. It does not explain the comparison logic, output format, or how periods are derived, leaving substantial gaps for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is high (all parameters have descriptions), so the schema already explains parameter usage. The description adds minimal value ('compare current vs previous period') but does not elaborate on parameter semantics beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'compare' and the resources (current vs previous period) and dimensions (page, query, etc.). It is specific enough but does not distinguish from sibling tools like traffic_drop_diagnosis or performance_overview that may also involve period comparison.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. The description does not mention prerequisites, limitations, or when not to use it, leaving the agent to infer usage from the name only.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
content_decayC
Detect pages declining across multiple equal periods, not just one noisy comparison.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| periodDays | No | ||
| periods | No | ||
| minOldestClicks | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavioral traits. It mentions multi-period comparison but does not disclose whether the tool is read-only, what it returns, or any side effects. Minimal transparency beyond the core function.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loaded with the key differentiator. However, for a tool with 5 parameters and no other documentation, the single sentence is too brief to be fully useful; it sacrifices completeness for conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (5 parameters, no output schema), the description is inadequate. It does not explain the return format, parameter constraints, or prerequisites like needing a Search Console property. Missing details required for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 20% (only siteUrl has description). The tool description adds no parameter details besides implying use of periods/periodDays. Parameters like minOldestClicks and limit are left unexplained, forcing reliance on the sparse schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the verb 'Detect' and the resource 'pages declining across multiple equal periods', clearly distinguishing from a single noisy comparison. It gives a specific purpose, though the definition of 'declining' (clicks, impressions?) could be clearer.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus siblings like compare_periods, traffic_drop_diagnosis, or anomaly_alerts. The description implies use for multi-period decline detection, but lacks explicit context or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ctr_opportunitiesB
Find queries and pages where CTR is below an expected CTR curve for the current average position.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| startDate | No | Start date in YYYY-MM-DD. If omitted, days is used. | |
| endDate | No | End date in YYYY-MM-DD. If omitted, days is used. | |
| days | No | Lookback window when startDate/endDate are omitted. | |
| minImpressions | No | ||
| maxPosition | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden for behavioral disclosure. It only states the tool's purpose without revealing any side effects, authorization needs, or constraints (e.g., whether it is read-only, if results are cached, or if it modifies data).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no extraneous words. Every word contributes to the purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having 7 parameters and no output schema or annotations, the description does not explain the 'expected CTR curve' concept, how parameters interact, or what the returned data looks like. It is insufficient for an agent to fully understand tool behavior without additional context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 57% (4 of 7 parameters have descriptions). The description adds no additional meaning beyond the schema; for example, it does not explain how parameters like 'minImpressions' or 'maxPosition' influence the expected CTR curve calculation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Find'), a clear resource ('queries and pages'), and a distinct context ('CTR below expected CTR curve for current average position'), making it easy for an agent to understand what the tool does and how it differs from siblings like 'top_queries' or 'performance_overview'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives such as 'quick_wins' or 'top_pages'. The description implies a CTR analysis use case but does not state when it is or is not appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_siteA
Remove a site from the authenticated account. Destructive: use only when explicitly requested.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | Yes | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description adds the 'Destructive' label, which signals mutation and risk. However, it does not disclose consequences (e.g., data loss), reversibility, or prerequisites (e.g., site verification needed). This is minimal behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise (two sentences) and front-loaded: first sentence states purpose, second warns about destructiveness. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive tool with no annotations and no output schema, the description is incomplete. It fails to explain what happens upon deletion (e.g., removal of all associated data), whether the action is reversible, or any required prerequisites beyond authentication.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter siteUrl has 100% schema description coverage with examples. The tool description adds no additional semantic meaning beyond the schema, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Remove a site from the authenticated account', using a specific verb and resource. It effectively distinguishes from sibling tools like add_site (add) and get_site (get).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description includes 'Destructive: use only when explicitly requested', providing a clear when-not-to-use condition. However, it does not mention alternatives or provide affirmative when-to-use guidance beyond explicit requests.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_sitemapA
Delete a submitted sitemap from Search Console. Destructive: use only when explicitly requested.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| feedpath | Yes | Full sitemap URL. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full weight. It labels the tool as 'destructive', which alerts to mutation, but lacks details on irreversibility, side effects, or what happens upon deletion. Some additional behavioral context would improve transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two sentences: one stating the purpose and one warning about destructiveness. No unnecessary words, and it is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete tool with no output schema and full schema coverage, the description is mostly complete. It tells what it does and warns about destructiveness. However, it could mention the response or that deletion is immediate, making it slightly more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes both parameters (siteUrl and feedpath) fully (100% coverage). The description adds no additional parameter semantics beyond the schema. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (delete a submitted sitemap) and the scope (from Search Console). It distinguishes itself from sibling tools like submit_sitemap or list_sitemaps by specifying the destructive nature and the context of explicit request.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description says 'use only when explicitly requested', providing clear context for when to use the tool. However, it does not mention alternatives or explicitly state when not to use it, missing some comparative guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
device_country_opportunitiesB
Find device and country segments with high impressions but weak CTR or ranking.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| startDate | No | Start date in YYYY-MM-DD. If omitted, days is used. | |
| endDate | No | End date in YYYY-MM-DD. If omitted, days is used. | |
| days | No | Lookback window when startDate/endDate are omitted. | |
| minImpressions | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It only states the basic function without mentioning any side effects, performance implications, or how the tool derives results. Minimal transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the core purpose. Every word earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters, no output schema, and no annotations, the description is too brief. It fails to explain the output format, parameter usage, or how to interpret results, leaving important gaps for a complex analysis tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 67% (moderate), but the tool description adds no additional meaning beyond the schema for parameters like siteUrl, startDate, etc. It does not explain how parameters influence the analysis or provide examples.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool finds device and country segments with high impressions but weak CTR or ranking. It uses a specific verb 'Find' and identifies the resource and condition, distinguishing it from sibling tools like 'ctr_opportunities' which may focus on overall CTR.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives such as 'ctr_opportunities' or 'search_intent_breakdown'. The description lacks explicit when-to-use, when-not-to-use, or alternative references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dimension_breakdownC
Break performance down by a single dimension such as country, device, date, or search appearance.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| startDate | No | Start date in YYYY-MM-DD. If omitted, days is used. | |
| endDate | No | End date in YYYY-MM-DD. If omitted, days is used. | |
| days | No | Lookback window when startDate/endDate are omitted. | |
| dimension | No | country | |
| filters | No | Search Analytics dimension filters. Operators: contains, equals, notContains, notEquals, includingRegex, excludingRegex. | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but only states what it does, not behavioral traits. No mention of read-only nature, data latency, or response structure, which is critical for an agent to invoke safely.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence is concise and front-loaded with the core action. However, it could benefit from additional context without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 7 parameters, no output schema, and 38 sibling tools, the description is too sparse. Does not explain return format, aggregation behavior, or prerequisite knowledge (e.g., siteUrl format).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 71%, meaning most parameters have descriptions in the schema. The description adds minimal value beyond listing example dimensions; it does not clarify the use of 'filters' or the 'limit' parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb ('break down') and resource ('performance by a single dimension'), with examples of dimensions. However, it does not differentiate from siblings like 'search_analytics' or 'top_pages', which also query performance data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives such as 'search_analytics' or 'page_query_matrix'. Lacks context about when a single dimension breakdown is preferable to multi-dimensional queries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_markdown_reportC
Generate a Markdown SEO performance report and save it to GSC_REPORT_DIR.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| startDate | No | Start date in YYYY-MM-DD. If omitted, days is used. | |
| endDate | No | End date in YYYY-MM-DD. If omitted, days is used. | |
| days | No | Lookback window when startDate/endDate are omitted. | |
| title | No | Google Search Console SEO Report | |
| includeRows | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose all behavioral traits. It mentions saving to GSC_REPORT_DIR but does not explain side effects like overwriting behavior, directory creation, or file naming. The mutation aspect (file write) is implied but not detailed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence that conveys the core purpose efficiently. It is front-loaded with key actions, though it could be expanded slightly without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of output schema and the complexity of a report generation tool, the description lacks critical details such as what data the report contains, how parameters affect output, and what the return value is. The agent may need to rely on tool name and schema alone.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides full descriptions for all parameters, so the description adds no additional parameter meaning. Baseline of 3 is appropriate given high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (generate and save) and the output format (Markdown SEO performance report), distinguishing it from sibling tools that may only retrieve data or display overviews. However, it does not specify the content of the report.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like search_analytics or top_pages. There is no indication of prerequisites or exclusions, leaving the agent to infer context from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_siteB
Get permission details for a specific Search Console property.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It only says 'Get permission details', implying read-only but not disclosing authentication needs, error behavior, or what 'details' entails.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One concise sentence with no wasted words, front-loading the action and object.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 1-parameter tool with no output schema, the description is adequate but lacks details on return format and behavioral constraints, making it minimally complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, providing good parameter description. The tool description adds no extra parameter information, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get', the resource 'permission details', and the scope 'specific Search Console property'. It distinguishes from siblings like add_site and delete_site.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. It does not mention prerequisites or exclusions, leaving the agent without context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_sitemapC
Get details for one sitemap URL.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| feedpath | Yes | Full sitemap URL. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden for behavioral disclosure. It only says 'Get details', implying a read operation, but no information about side effects, safety, or return structure. The description adds minimal value beyond the name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise but under-specified. One sentence is too brief to provide necessary context, missing information on when to use or what is returned.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no output schema and two parameters (one required), the description does not explain what 'details' entails (e.g., status, last submitted, URLs). It is incomplete for an agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 both parameters. The description adds no extra meaning beyond the schema; baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (get) and resource (details for one sitemap URL), distinguishing it from sibling tools like list_sitemaps or submit_sitemap. However, it lacks specificity about what 'details' includes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives, such as list_sitemaps for listing all sitemaps. It does not mention prerequisites (e.g., sitemap must exist) or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
index_coverage_summaryC
Summarize indexed/not-indexed/canonical coverage for a supplied list of URLs.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| urls | Yes | ||
| languageCode | No | en-US |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description fails to disclose if tool is read-only, requires auth, has rate limits, or any side effects. Minimal behavioral info.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no redundancy. Efficient but could be slightly expanded with key constraints.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Lacks output format details, no mention of max URL count (even though in schema), and no context on how summary is presented. Incomplete for an informed tool selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 33% (only siteUrl described). Description does not add meaning to parameters like urls (max 25 items) or languageCode, leaving gaps for the agent.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it summarizes coverage (indexed/not-indexed/canonical) for a supplied list of URLs. Specific verb and resource, distinguishes from siblings like inspect_url (single URL) and indexing tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives. Does not mention context like filtering or comparison with other coverage tools, nor exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indexing_batch_publishC
Publish multiple Indexing API URL notifications sequentially. Use only for eligible pages and respect quota.
| Name | Required | Description | Default |
|---|---|---|---|
| urls | Yes | ||
| type | No | URL_UPDATED |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description only adds the behavioral trait 'sequentially'. It fails to disclose other important behaviors like whether the operation is destructive (publishing implies write), rate limits, error handling, or idempotency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise (2 sentences) with no wasted words. The first sentence effectively front-loads the core action. However, it sacrifices completeness for brevity, which is acceptable for this dimension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 2 parameters, no output schema, no annotations, and a similar sibling, the description is inadequate. It does not explain parameter semantics, prerequisites, or expected outcomes, leaving an agent insufficiently informed to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and the description does not explain either parameter. The 'urls' array format and the meaning of 'type' enum values (URL_UPDATED vs URL_DELETED) are left ambiguous. No value added beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool publishes multiple Indexing API URL notifications sequentially, distinguishing it from the single-publish sibling (indexing_publish_url). However, it does not explicitly name the alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The instruction 'Use only for eligible pages and respect quota' implies when to use but does not provide explicit exclusions or name alternatives like indexing_publish_url for single URLs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indexing_get_metadataB
Check the latest Indexing API update/remove notification metadata for a URL.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Fully-qualified URL to check. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must fully disclose behavior. It states the tool 'checks' metadata, implying read-only, but doesn't confirm idempotency, rate limits, or authentication requirements. The return format is also not described, leaving uncertainty about what the agent receives.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-formed sentence with no unnecessary words. It is front-loaded with the action and resource, making it easy to parse quickly. Ideal conciseness for a simple tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, no nested objects, no output schema) and the lack of annotations, the description is minimally adequate. It explains the primary action but omits behavioral details like response format and whether the call is safe. It could be more complete without sacrificing conciseness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with one parameter 'url' described as 'Fully-qualified URL to check.' The description rephrases this but adds no new semantic info (e.g., requires http/https, what constitutes 'latest', or handling of malformed URLs). Per guidelines, baseline is 3 when coverage is high, and the description does not exceed that baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Check' and identifies a clear resource: 'latest Indexing API update/remove notification metadata for a URL.' This distinguishes it from sibling tools like 'indexing_publish_url' and 'inspect_url'. However, the jargon 'Indexing API update/remove notification metadata' may not be immediately clear to all users, slightly reducing clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, or any prerequisites. Sibling tools include 'indexing_publish_url', 'indexing_batch_publish', and 'inspect_url', but the description gives no context for differentiating use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indexing_publish_urlB
Notify Google that an eligible URL was updated or removed through the Indexing API.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Fully-qualified URL to notify. | |
| type | No | URL_UPDATED |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must carry full burden. It only states 'Notify Google' but does not disclose potential side effects, permissions, rate limits, or confirmation behavior. For a write operation, more transparency is needed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single, precise sentence with no unnecessary words. Front-loaded with purpose. Every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema and no annotations. Description covers basic purpose but lacks behavioral context (e.g., what happens on success/failure, idempotency, scope of URL eligibility). Adequate for a simple tool but incomplete given missing structured aids.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 50% (url described in schema as 'Fully-qualified URL to notify'). Description adds no extra parameter details beyond what the schema provides. Enum for type is fully documented in schema. Minimal added value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the action (notify), target (Google via Indexing API), and scope (eligible URL updated or removed). Distinguishes from sibling tools like indexing_batch_publish (batch) and indexing_get_metadata (retrieval).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool vs alternatives (e.g., batch vs single). Context signals show sibling tools exist, but description lacks any usage or exclusion notes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
inspect_urlC
Inspect a URL's indexed status, canonical, crawl, robots, and coverage signals.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| inspectionUrl | Yes | ||
| languageCode | No | en-US |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description must disclose behavioral traits. It states what is inspected but does not indicate whether the tool is read-only, what data format is returned, or any authentication or rate limit requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that immediately conveys the tool's purpose. It contains no fluff and is front-loaded with the key action and subjects.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description lists the signals inspected, providing some completeness. However, it lacks details on return values, parameter specifics, and error scenarios, leaving gaps for a tool with moderate complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% (siteUrl is documented), but the description does not explain the other parameters (inspectionUrl, languageCode) or their formats. It adds no value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Inspect' and specifies the resource 'URL's indexed status, canonical, crawl, robots, and coverage signals'. It distinguishes from sibling tools like batch_inspect_urls by implying single-URL inspection, but could be more precise about the exact output.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No usage guidance is provided. The description does not explain when to use this tool versus alternatives like batch_inspect_urls or indexing_publish_url, nor does it mention prerequisites or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
internal_link_opportunitiesA
Suggest internal linking opportunities from stronger pages to weaker pages sharing valuable queries.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| startDate | No | Start date in YYYY-MM-DD. If omitted, days is used. | |
| endDate | No | End date in YYYY-MM-DD. If omitted, days is used. | |
| days | No | Lookback window when startDate/endDate are omitted. | |
| minQueryImpressions | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the burden of behavioral disclosure. It indicates a read-only suggestion tool and implies analysis of page strength and query sharing, but lacks details on data source (e.g., Search Console), definitions of 'stronger' and 'weaker', or whether the tool performs any side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that immediately states the tool's purpose. It is concise, front-loaded with the action, and contains no filler or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the purpose is clear, the description omits context on output format, return types, or limitations (e.g., does it return a list? Are there scoring metrics?). For a tool with 6 parameters and no output schema, more completeness would help an agent understand expected results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 6 parameters with descriptions, achieving 67% coverage. The description does not add meaning beyond the schema (e.g., how 'minQueryImpressions' thresholds work or 'limit' behavior). Baseline 3 is appropriate given moderate schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool suggests internal linking opportunities from stronger to weaker pages sharing valuable queries. It uses a specific verb ('suggest') and resource ('internal linking opportunities'), and the context of 'stronger pages to weaker pages' distinguishes it from sibling tools like cannibalization_check or ctr_opportunities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use or when not to use this tool versus alternatives. The description implies a specific use case (internal linking improvements), but does not explicitly state prerequisites, exclusions, or compare with sibling tools like content_decay or quick_wins.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_propertiesA
List Search Console properties available to the authenticated user or service account.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the burden. It mentions 'available to the authenticated user', indicating authentication context. However, it omits details on response format, pagination, error handling, or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that immediately states the action and resource. No unnecessary words, highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple parameterless list tool, the description is fairly complete by specifying what is listed and for whom. It could mention that returned data includes site URLs or status, but is not strictly required given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no parameters, so description cannot add parameter details. Baseline of 4 applies as there is no need to compensate for missing schema info.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List Search Console properties', using a specific verb 'List' and resource 'properties'. It distinguishes from sibling tools like get_site, add_site, or delete_site which perform different actions on properties.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly guide when to use this tool versus alternatives. It is clear that listing is the primary function, but no when-not-to-use or exclusion criteria provided. Given the large sibling set, more guidance would be beneficial.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_sitemapsA
List submitted sitemaps with status, errors, warnings, and indexed URL counts.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description indicates a read-only list operation. However, it does not disclose any behavioral traits such as pagination, rate limits, or data freshness. Without annotations, this is a moderate disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, front-loading the primary action and listing the data fields. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema, so the description should compensate. It mentions some fields but does not specify the structure of the response or whether pagination is used. For a list operation, more clarity on the output would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 the siteUrl parameter. The description adds no additional parameter details beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists submitted sitemaps and specifies the included fields: status, errors, warnings, and indexed URL counts. This distinguishes it from sibling tools like get_sitemap which retrieves details for a single sitemap.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like get_sitemap or submit_sitemap. No mention of prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
long_tail_questionsC
Surface question and long-tail queries that can become FAQ sections, support docs, or content expansions.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| startDate | No | Start date in YYYY-MM-DD. If omitted, days is used. | |
| endDate | No | End date in YYYY-MM-DD. If omitted, days is used. | |
| days | No | Lookback window when startDate/endDate are omitted. | |
| minWords | No | ||
| minImpressions | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears full responsibility for behavioral disclosure, but it only states what the tool does, not side effects, resource intensity, rate limits, or whether it mutates data. The description is insufficient for an agent to understand operational implications.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 15 words, highly concise and containing no fluff. It front-loads the core action and purpose. However, it could be slightly expanded to include usage context without losing brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 7 parameters, no output schema, and no annotations, the description is extremely sparse. It omits crucial details like return format, pagination, filtering behavior, and what constitutes a 'long-tail query'. The tool's complexity is not matched by the description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 57%, and the description adds no parameter-specific details beyond what the schema already provides. For example, 'minWords' and 'minImpressions' are self-explanatory but the description could explain how thresholds affect results. The description does not compensate for the incomplete schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('surface') and identifies the resource ('question and long-tail queries'), clearly stating the tool's function. It further explains the potential value (become FAQ sections, support docs, content expansions), which helps differentiate from generic query tools like 'top_queries' or 'search_analytics'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as 'search_analytics' or 'top_queries'. There are no exclusion criteria or context for when long-tail queries are appropriate, leaving the agent to guess.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
multi_site_dashboardC
Compare configured Search Console properties in one health dashboard.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrls | No | ||
| days | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It does not disclose whether the tool is read-only, what side effects occur, authentication needs, rate limits, or return format. The brief description omits critical behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, which is concise, but it is too minimal for the tool's apparent complexity. While no waste exists, the brevity sacrifices informative value for a tool with multiple parameters and no annotations.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and only two parameters, the description is insufficiently complete. It does not explain the dashboard output, how to interpret results, or any prerequisites (e.g., properties already configured). This leaves significant gaps for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% with no parameter descriptions. The description adds no meaning to 'siteUrls' (e.g., format, valid values) or 'days' (e.g., bounds, unit). An agent cannot infer correct usage from the description alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Compare' and the resource 'configured Search Console properties' with output 'one health dashboard'. It distinguishes this tool from siblings by emphasizing multi-property comparison in a dashboard, which is unique among the listed sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. The description does not mention scenarios, prerequisites, or exclusions. Without such context, an AI agent may not know when to invoke this tool over sibling comparison tools like 'compare_periods' or 'brand_nonbrand_split'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
page_query_matrixA
Map pages to the queries that drive them. Great for content briefs and cannibalization review.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| startDate | No | Start date in YYYY-MM-DD. If omitted, days is used. | |
| endDate | No | End date in YYYY-MM-DD. If omitted, days is used. | |
| days | No | Lookback window when startDate/endDate are omitted. | |
| filters | No | Search Analytics dimension filters. Operators: contains, equals, notContains, notEquals, includingRegex, excludingRegex. | |
| pageContains | No | ||
| queryContains | No | ||
| maxRows | No | ||
| pagesLimit | No | ||
| queriesPerPage | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations; description only states function without disclosing behavior like data limits, side effects, or authentication needs. Minimal transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, efficient and front-loaded. No filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 10 parameters, no output schema, and no annotations, description is too sparse. Missing details on output format, pagination, and parameter interactions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 50% (e.g., pageContains, queryConditions undocumented). Description adds no extra parameter meaning beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool maps pages to queries driving them, with specific use cases. Distinguishes from sibling tools like 'top_pages' and 'cannibalization_check'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides context for use (content briefs, cannibalization review) but lacks explicit when-not-to-use or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
page_refresh_prioritiesB
Prioritize pages to update using lost clicks, declining impressions, CTR gaps, and position changes.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| startDate | No | Start date in YYYY-MM-DD. If omitted, days is used. | |
| endDate | No | End date in YYYY-MM-DD. If omitted, days is used. | |
| days | No | Lookback window when startDate/endDate are omitted. | |
| minPreviousClicks | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and description does not disclose behavioral traits such as whether the tool is read-only, auth requirements, rate limits, or side effects. The description is insufficient for a tool with no annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, clear and direct, no unnecessary words. Efficiently communicates the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should explain what the tool returns (e.g., a prioritized list of URLs). It also does not mention the data source or any constraints. Incomplete for a tool with 6 parameters and no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All parameters have descriptions in the schema, so the description adds no additional semantic value. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'Prioritize' and resource 'pages to update', with specific criteria (lost clicks, declining impressions, CTR gaps, position changes). This distinguishes it from siblings like ctr_opportunities or content_decay.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description implies usage for identifying pages to refresh based on performance metrics but does not explicitly state when to use over alternatives or exclude cases. No guidance on prerequisites or when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
performance_overviewB
Return a site-level snapshot with previous-period comparison, daily trend, devices, and search appearances.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| startDate | No | Start date in YYYY-MM-DD. If omitted, days is used. | |
| endDate | No | End date in YYYY-MM-DD. If omitted, days is used. | |
| days | No | Lookback window when startDate/endDate are omitted. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It describes the output but does not mention data freshness, accuracy, permissions, pagination, or any side effects. The tool's internal logic (e.g., how previous period is computed) is opaque.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence that directly conveys the tool's purpose with no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description lists output components but does not specify their format, structure, or how they are presented. For a tool with no output schema, more detail (e.g., fields returned, sorting, or aggregation) would be needed for reliable agent use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All parameters have schema descriptions (100% coverage), so the description adds little beyond implying date parameters relate to comparison and trends. The meaning of 'days' and its interaction with startDate/endDate is not clarified.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it returns a 'site-level snapshot' with specific components (previous-period comparison, daily trend, devices, search appearances), providing a precise verb and resource. However, it does not explicitly differentiate from siblings like 'compare_periods' or 'search_analytics', which may overlap in functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as 'search_analytics' or 'compare_periods'. There is no mention of prerequisites, limitations, or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
query_page_fitB
Analyze one URL's query mix, intent fit, and content angles based on the queries it already ranks for.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| pageUrl | Yes | Full URL or unique URL substring to filter by. | |
| startDate | No | Start date in YYYY-MM-DD. If omitted, days is used. | |
| endDate | No | End date in YYYY-MM-DD. If omitted, days is used. | |
| days | No | Lookback window when startDate/endDate are omitted. | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully convey behavioral traits. It lacks details on whether the operation is read-only, required permissions, rate limits, or data freshness. The term 'analyze' is vague regarding side effects or output nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, concise and front-loaded. However, it could be expanded slightly to cover output hints without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters, no output schema, and no annotations, the description is insufficient. It does not describe the output format (e.g., what 'mix' or 'intent fit' looks like) or provide enough context for an agent to interpret results correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 83% (5 of 6 parameters documented). The description adds little beyond the schema, mentioning 'intent fit' and 'content angles' which are not directly linked to parameters. The 'limit' parameter lacks schema description and is not clarified here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool analyzes a single URL's query mix, intent fit, and content angles using queries it already ranks for. This is specific and distinguishes it from broader tools like search_analytics or top_queries, though not explicitly mentioning siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when analyzing a specific page's query attributes, but does not provide explicit guidance on when not to use it or mention alternatives like page_query_matrix or search_intent_breakdown.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
quick_winsB
Find keywords ranking around positions 4-15 where better content, internal links, or snippets can win traffic.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| startDate | No | Start date in YYYY-MM-DD. If omitted, days is used. | |
| endDate | No | End date in YYYY-MM-DD. If omitted, days is used. | |
| days | No | Lookback window when startDate/endDate are omitted. | |
| minImpressions | No | ||
| minPosition | No | ||
| maxPosition | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It does not state whether the tool is read-only, modifies data, or requires specific permissions. The method for determining 'opportunities' is opaque.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is concise, front-loaded, and contains no unnecessary words. It effectively communicates the core functionality.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 8 parameters and no output schema, the description is insufficient. It does not explain the output format, response structure, pagination, or how results are ordered. The agent lacks essential context for invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 50%, and the description adds no additional meaning beyond what the schema already provides for parameters. It mentions the ranking range (4-15) which aligns with defaults, but no further parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool's function: finding keywords in rank positions 4-15 with opportunities for traffic wins via content, links, or snippets. It distinguishes from siblings like 'content_decay' or 'internal_link_opportunities' by focusing specifically on positions 4-15.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for identifying quick wins but does not provide explicit guidance on when to use this tool versus alternatives like 'ctr_opportunities' or 'internal_link_opportunities'. No exclusion criteria or context for when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_analyticsC
Run a flexible Search Analytics query. Use this for exact data pulls with custom dimensions and filters.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| startDate | No | Start date in YYYY-MM-DD. If omitted, days is used. | |
| endDate | No | End date in YYYY-MM-DD. If omitted, days is used. | |
| days | No | Lookback window when startDate/endDate are omitted. | |
| dimensions | No | ||
| filters | No | Search Analytics dimension filters. Operators: contains, equals, notContains, notEquals, includingRegex, excludingRegex. | |
| rowLimit | No | ||
| searchType | No | web | |
| dataState | No | all | |
| aggregationType | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must fully disclose behavioral traits. It only says 'Run a flexible Search Analytics query' without mentioning read-only nature, rate limits, authentication, or result format. This is almost no disclosure beyond the name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short (2 sentences, 16 words). It is not verbose, but it sacrifices informativeness. While structured well, it lacks depth. A slightly longer description with key details would be more helpful without being wasteful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (10 parameters, many enums, no output schema, no annotations), the description is grossly incomplete. It fails to explain return format, pagination, metric types, or behavior of aggregation and search type. This is insufficient for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 50%, meaning 5 of 10 parameters lack schema descriptions. The description adds 'custom dimensions and filters' which partially covers dimensions and filters, but does not explain other undocumented parameters like searchType, dataState, aggregationType, or rowLimit. It provides minimal extra meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Run' and the resource 'Search Analytics query', and indicates it allows 'custom dimensions and filters'. This makes the purpose specific, though it does not explicitly differentiate from sibling tools like 'dimension_breakdown' which may overlap.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description says 'Use this for exact data pulls with custom dimensions and filters', implying when to use. However, it provides no guidance on when not to use or mention of alternative tools, leaving room for ambiguity given the large sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_intent_breakdownC
Classify queries into informational, commercial, transactional, navigational, and local intent buckets.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| startDate | No | Start date in YYYY-MM-DD. If omitted, days is used. | |
| endDate | No | End date in YYYY-MM-DD. If omitted, days is used. | |
| days | No | Lookback window when startDate/endDate are omitted. | |
| minImpressions | No | ||
| examplesPerIntent | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries full burden. It only states that queries are classified, but does not disclose whether it is a read-only operation, what side effects occur, or what output to expect. Critical behavioral traits are missing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no fluff. However, it is too brief for a tool with 6 parameters and no output schema, lacking structure or elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is inadequate for a tool with 6 parameters and no output schema. It fails to explain the output format, how classification works, or how to interpret results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 67% (4 of 6 parameters described). The description adds no extra meaning beyond the schema; it does not explain how parameters affect classification or how 'examplesPerIntent' is used.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool classifies queries into five specific intent categories. The verb 'classify' and resource 'queries into intent buckets' is specific and distinct from sibling tools like search_analytics or top_queries.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There is no mention of prerequisites, context, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
server_healthA
Show server configuration, enabled defaults, and tool count without exposing secrets.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It states that secrets are not exposed, which is a behavioral constraint. However, it does not explicitly confirm read-only behavior, mention any side effects, or discuss permissions/rate limits. The description adds some value beyond the empty schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence of 14 words, front-loaded with the verb 'Show'. No extraneous information. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters, no output schema, and no annotations, the description is nearly complete. It explains what is shown and a key behavioral trait (no secrets). It could potentially mention the format or structure of the output, but overall it provides sufficient context for an agent to understand and invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the input schema provides full coverage (100%). The description correctly does not need to add parameter details. Following the guideline, baseline for 0 params is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Show' and clearly identifies the resource: server configuration, enabled defaults, and tool count. It also explicitly states a limitation ('without exposing secrets'). This clearly distinguishes it from sibling tools that perform actions or access different data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. While the purpose is clear, the description does not indicate prerequisites, typical use cases, or when not to use it. There is no mention of sibling tools for comparison.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
submit_sitemapA
Submit or refresh a sitemap in Search Console. Requires write scope.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| feedpath | Yes | Full sitemap URL. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description must carry the full behavioral disclosure. It mentions 'write scope' as a requirement, but does not explain what 'refresh' means, rate limits, or consequences of submission (e.g., if sitemap already exists).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no wasted words. The first sentence front-loads the purpose, and the second adds a key requirement. Highly concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with two fully described parameters and no output schema, the description provides enough context to understand the core function and a critical prerequisite. However, it could elaborate on the 'refresh' aspect and what the agent should expect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds no additional parameter information beyond what the schema already provides, such as constraints or formats.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Submit or refresh' and resource 'a sitemap in Search Console', providing a specific action and context. It distinguishes from sibling tools like delete_sitemap and list_sitemaps.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage through 'Requires write scope', but does not explicitly mention when to use this tool versus alternatives. No exclusions or when-not guidance provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
title_meta_briefA
Create a data-backed title/meta refresh brief from high-impression, low-CTR queries for one page.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| pageUrl | Yes | ||
| startDate | No | Start date in YYYY-MM-DD. If omitted, days is used. | |
| endDate | No | End date in YYYY-MM-DD. If omitted, days is used. | |
| days | No | Lookback window when startDate/endDate are omitted. | |
| minImpressions | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and description does not disclose side effects (e.g., if it creates a report, modifies data), authentication requirements, or rate limits. It only states the action without behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, perfectly concise, front-loaded with key verb and resource. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 7 parameters, no output schema, and no annotations, the description is somewhat sparse. It lacks details on output format, prerequisites (e.g., Google Search Console access), and how to interpret the brief. Adequate but incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Description explains the purpose of minImpressions and pageUrl ('from high-impression, low-CTR queries' and 'for one page'), adding meaning beyond schema. However, schema coverage is moderate, and some parameters like days and limit depend on defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool creates a data-backed title/meta refresh brief from high-impression, low-CTR queries for one page. Verb 'Create' and resource are specific, and the scope differentiates from sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description implies usage for one page with high-impression, low-CTR queries but does not explicitly state when to use or avoid, nor mention alternative tools like 'ctr_opportunities' or 'page_refresh_priorities'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
top_pagesB
Find top pages with optional query filtering, useful for landing page and folder audits.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| startDate | No | Start date in YYYY-MM-DD. If omitted, days is used. | |
| endDate | No | End date in YYYY-MM-DD. If omitted, days is used. | |
| days | No | Lookback window when startDate/endDate are omitted. | |
| queryContains | No | Optional substring filter for queries. | |
| minImpressions | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavioral traits. It fails to mention output format, pagination, aggregation level, or whether the tool is read-only. The description is too brief to cover necessary transparency for safe invocation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, making it concise and front-loaded. While it could be slightly more informative without losing conciseness, it efficiently conveys the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 7 parameters, 38 sibling tools, and no output schema, the description is insufficient. It lacks details on return values, parameter interactions, and differentiation from similar tools, leaving the agent underinformed for correct selection and usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 71% schema description coverage, the schema already documents most parameters. The description adds only a mention of 'optional query filtering' corresponding to 'queryContains', but does not enhance understanding of other parameters like 'minImpressions' or 'limit' beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Find' and resource 'top pages', clearly stating the tool's function. It mentions optional query filtering and a use case ('landing page and folder audits'), which helps differentiate from some siblings like 'top_queries' but could be more explicit about what 'top' means (e.g., by impressions or clicks).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for landing page and folder audits, providing some context. However, it does not explicitly state when to use this tool versus alternatives like 'top_queries' or 'search_analytics', nor does it specify when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
top_queriesB
Find top queries with optional page filtering, useful for keyword and content research.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| startDate | No | Start date in YYYY-MM-DD. If omitted, days is used. | |
| endDate | No | End date in YYYY-MM-DD. If omitted, days is used. | |
| days | No | Lookback window when startDate/endDate are omitted. | |
| pageContains | No | Optional substring or path filter for pages. | |
| minImpressions | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It only says 'find top queries' without explaining output format, required fields (e.g., siteUrl is likely necessary), ordering, or rate limits. This is insufficient for an agent to understand side effects or dependencies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, concise and front-loaded. It earns its place but could include more information without sacrificing brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 7 parameters, no output schema, and no annotations, the description is insufficient. It fails to explain return values, required parameters, or pagination, leaving significant gaps for an agent to safely invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 7 parameters have descriptions in the schema, so baseline is 3. The description adds minimal value by mentioning 'page filtering' (mapping to pageContains), but does not enhance understanding of other params beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'find' and resource 'top queries', and mentions optional page filtering. However, it does not specify what defines 'top' (e.g., impressions, clicks), which limits precision, especially when compared to siblings like 'top_pages'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description notes usefulness for 'keyword and content research', providing implied context, but lacks explicit guidance on when to avoid this tool or how it differs from siblings like 'search_analytics' or 'search_intent_breakdown'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
traffic_drop_diagnosisB
Explain page or query traffic losses as ranking loss, CTR loss, demand decline, or mixed signal.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| startDate | No | Start date in YYYY-MM-DD. If omitted, days is used. | |
| endDate | No | End date in YYYY-MM-DD. If omitted, days is used. | |
| days | No | Lookback window when startDate/endDate are omitted. | |
| dimensions | No | ||
| minLostClicks | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavioral traits. It mentions the output categories but does not disclose data freshness, required permissions (e.g., access to Google Search Console), or whether the analysis is based on historical data. It gives a moderate level of clarity but lacks depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently conveys the core purpose. It is front-loaded and without unnecessary words. A more structured format (e.g., listing categories) could improve clarity, but it is concise enough.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (7 parameters, no output schema, many siblings), the description is too brief. It does not explain the return format, how results are grouped, or how to interpret the categories (e.g., what 'mixed signal' means). Essential context for an AI agent to use the tool effectively is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 57% of parameters with descriptions (according to context), so the description does not add extra meaning beyond what is already in the schema. The description does not elaborate on parameter usage or defaults, so it provides no additional value in this dimension.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: to explain traffic losses as specific categories (ranking loss, CTR loss, etc.). The verb 'Explain' and resource 'traffic losses' are specific, and it distinguishes from sibling tools by focusing on diagnosis rather than raw data or other analyses.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like 'performance_overview' or 'top_pages'. The description does not mention prerequisites, limitations, or when not to use it. With many sibling tools, the lack of usage context is a significant gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_claimC
Re-query GSC to verify a numeric SEO claim before presenting it to a client or stakeholder.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Google Search Console property URL, e.g. sc-domain:example.com or https://www.example.com/. | |
| startDate | No | Start date in YYYY-MM-DD. If omitted, days is used. | |
| endDate | No | End date in YYYY-MM-DD. If omitted, days is used. | |
| days | No | Lookback window when startDate/endDate are omitted. | |
| dimensions | No | ||
| filters | No | Search Analytics dimension filters. Operators: contains, equals, notContains, notEquals, includingRegex, excludingRegex. | |
| metric | No | clicks | |
| expectedValue | No | ||
| tolerancePercent | No | ||
| claim | No | Optional human-readable claim being verified. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states that the tool 're-queries GSC' (a read operation) but does not mention any behavioral traits such as rate limits, quotas, potential latency, or side effects. The description is insufficient for the agent to understand the full behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, achieving conciseness. However, it is overly brief and omits critical details about the tool's operation. It could be expanded to include verification logic or parameter hints without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 10 parameters, no output schema, and no annotations, the description is incomplete. It does not explain the verification mechanism (e.g., comparing actual vs. expected value with tolerance), or what the tool returns (pass/fail, difference). The agent lacks essential context to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds no meaning beyond the input schema. Although schema description coverage is 60% and schema provides definitions for many parameters, the description does not explain how parameters like 'expectedValue' and 'tolerancePercent' relate to the verification logic. The agent must infer semantics solely from the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: re-querying GSC to verify a numeric SEO claim before presenting it. The verb 'verify' and resource 'GSC data' are specific. However, it does not explicitly distinguish itself from sibling tools like 'search_analytics' that also query GSC, though the 'verification' use case is unique.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context ('before presenting to a client or stakeholder') but provides no explicit guidance on when not to use this tool or mention alternative tools. No exclusion criteria or prerequisites are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
40 tool updates
v1.0.0- First observed
add_site - First observed
advanced_filter_query - First observed
anomaly_alerts - First observed
batch_inspect_urls - First observed
brand_nonbrand_split - First observed
cannibalization_check - First observed
compare_periods - First observed
content_decay - First observed
ctr_opportunities - First observed
delete_site - First observed
delete_sitemap - First observed
device_country_opportunities - First observed
dimension_breakdown - First observed
generate_markdown_report - First observed
get_site - First observed
get_sitemap - First observed
index_coverage_summary - First observed
indexing_batch_publish - First observed
indexing_get_metadata - First observed
indexing_publish_url - First observed
inspect_url - First observed
internal_link_opportunities - First observed
list_properties - First observed
list_sitemaps - First observed
long_tail_questions - First observed
multi_site_dashboard - First observed
page_query_matrix - First observed
page_refresh_priorities - First observed
performance_overview - First observed
query_page_fit - First observed
quick_wins - First observed
search_analytics - First observed
search_intent_breakdown - First observed
server_health - First observed
submit_sitemap - First observed
title_meta_brief - First observed
top_pages - First observed
top_queries - First observed
traffic_drop_diagnosis - First observed
verify_claim
TDQS
Scored across 40 tools
Most tools have clearly distinct purposes, with descriptions that differentiate similar operations (e.g., search_analytics vs. specialized queries). A few pairs like indexing_publish_url and indexing_batch_publish could cause minor confusion, but overall boundaries are clear.
Tools consistently use snake_case, but naming patterns vary between verb_noun (add_site, inspect_url) and noun_verb (cannibalization_check, content_decay). The mix is understandable and readable, with only a few deviations from a strict pattern.
With 40 tools, the server is heavily overloaded. While each tool has a specific function, the sheer number exceeds a manageable scope and risks overwhelming agents or users. Many tools could be consolidated or are redundant.
The tool set covers a broad range of Google Search Console functionality: site management, sitemaps, URL inspection, indexing, analytics, and specialized SEO analyses. Minor gaps exist (e.g., no tool for user permissions or manual actions), but core workflows are well supported.
Maintenance
Related MCP Connectors
- CalmSEOOAuthcom.calmseo
SEO MCP server for keyword research, SERP analysis, audits, and Search Console workflows.
Turn Search Console data into SEO actions, content, publishing, indexing, and AI insights.
- RampifyOAuthdev.rampify
SEO MCP server: crawl your site, find AI-visibility gaps, and ship the fix from your coding agent.
- VibeSEOOAuthdev.vibeseo
SEO research, audits, backlinks, GSC, and content workflow tools for AI agents.
Related MCP Servers
- AlicenseBqualityBmaintenanceSEO audit and Google Search Console MCP server with 23 tools. Search analytics, URL inspection, Indexing API, Core Web Vitals (CrUX), striking distance keywords, keyword cannibalization detection, branded query analysis, and automated site audits.302MIT
- FlicenseAqualityDmaintenanceMCP server for advanced Google Search Console analysis — keyword cannibalization detection, page-level query deep dive, and rank change tracking.3-
- AlicenseCqualityCmaintenanceAn SEO analysis MCP server integrating Google Search Console, Bing Webmaster Tools, and GA4 with custom grain analysis tools for content decay, traffic drops, CTR benchmarking, and actionable recommendations.1001MIT
- AlicenseBqualityAmaintenanceMCP server providing 32 tools for Google Search Console and Google Analytics 4, enabling search analytics, URL inspection, indexing, and cross-platform analysis via natural language.4310MIT