searchconsole-mcp
Provides tools for interacting with Google Search Console, including search analytics, sitemap management, site property management, and URL inspection.
Click on "Install 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., "@searchconsole-mcpShow me top queries with impressions for the last 28 days."
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.
searchconsole-mcp
MCP server that automates Google Search Console for your projects: search analytics, sitemap management, site properties and URL inspection.
Tools
Tool | Description |
| List all properties the service account can access |
| Add/remove a property ( |
| Clicks, impressions, CTR, position grouped by query/page/country/device/date, with filters. Defaults to last 28 days |
| Inspect submitted sitemaps and indexed counts |
| Submit or remove sitemaps |
| URL Inspection API: index status, canonical, crawl info, mobile usability |
Related MCP server: Google Search Console MCP Server
One-time Google setup
In Google Cloud Console create a project.
Enable the Google Search Console API (APIs & Services > Library).
Create a Service account (IAM & Admin > Service Accounts) and download a JSON key.
For each Search Console property: Settings > Users and permissions > Add user, paste the service account email (
...@...iam.gserviceaccount.com) and grant Owner (Owner is required for the URL Inspection API).
Configuration
Environment variables:
Var | Required | Description |
| one of | Full service-account JSON key inline |
| one of | Path to the key file. Defaults to |
| optional | Default property so you can omit |
The server also loads .env from its working directory at startup.
Register in an MCP client
opencode (~/.config/opencode/opencode.json or project .opencode/opencode.json):
{
"mcp": {
"searchconsole": {
"type": "local",
"command": ["node", "/absolute/path/to/searchconsole-mcp/dist/index.js"],
"environment": {
"GSC_SERVICE_ACCOUNT_FILE": "/absolute/path/to/service-account.json",
"GSC_DEFAULT_SITE": "sc-domain:example.com"
}
}
}
}Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"searchconsole": {
"command": "node",
"args": ["/absolute/path/to/searchconsole-mcp/dist/index.js"],
"env": {
"GSC_SERVICE_ACCOUNT_FILE": "/absolute/path/to/service-account.json",
"GSC_DEFAULT_SITE": "sc-domain:example.com"
}
}
}
}Development
npm install
npm run build # tsc -> dist/
npm start # run the server on stdio
npm run smoke # boots the server and lists toolsNotes
Analytics data lags ~2 days; pass
dataState: "all"to include fresh partial data.The API caps analytics rows at 25,000 per request; use
startRowto page.Adding a site via API leaves it unverified until ownership is confirmed; easiest path is adding the service account email as an Owner in the UI first.
Available Tools
9 toolsgsc_add_siteAdd a Search Console siteA
Add a property to Search Console. Use "sc-domain:example.com" for domain properties or "https://www.example.com/" for URL-prefix properties. The property stays unverified until ownership is confirmed.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | Yes | Property, e.g. sc-domain:example.com |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral disclosure burden. It mentions that the property stays unverified until ownership is confirmed, which is useful. However, it does not cover potential side effects (e.g., replacement, duplicate behavior), permissions, or reversibility—important for a mutation 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?
Two sentences, no filler. The action is front-loaded, and the format guidance and verification note are directly relevant. 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 tool with a single parameter and no output schema, the description covers the essential usage and a key behavioral trait (unverified state). It omits potential edge cases like duplicate properties or error handling, but these are likely covered by the API itself. Overall, it is sufficiently complete for an agent to invoke it 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 100% (siteUrl is described), so baseline is 3. The description adds real value by explaining the two accepted formats and their distinctions (sc-domain: vs https://), which goes beyond the schema's single example. This clarifies acceptable input and reduces ambiguity.
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 ('Add a property to Search Console') with a specific resource and verb, and distinguishes itself from siblings like list, remove, or analyze tools. It also provides concrete URL format examples, making the tool's scope unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context on how to form the siteUrl (domain vs. URL-prefix) and notes the verification status, implying when the tool is appropriate (adding a property). It does not explicitly state when not to use it or name alternative tools, but the purpose is distinct enough that an agent can infer usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gsc_delete_sitemapDelete a sitemapA
Remove a sitemap from a property. Pages already indexed are not deindexed by this.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Falls back to GSC_DEFAULT_SITE | |
| feedpath | Yes | Sitemap URL to remove |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral burden. It discloses the key consequence that indexed pages are not deindexed, which is valuable, but it does not mention whether the action is reversible, what permission or property requirements exist, or what happens if the sitemap does not 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 two sentences with no filler. The primary action is front-loaded, and the crucial non-deindexing caveat is packed into the second sentence without excessive wording.
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 deletion tool, the description plus fully documented schema is largely sufficient. The lack of annotations and output schema is partially mitigated by the explicit consequence statement, though a bit more context about preconditions or return behavior would make it fully 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 description coverage is 100%, so the parameters are already documented. The tool description adds no additional insight about feedpath or siteUrl beyond what the schema already states, so it earns the baseline score without extra credit.
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 names the specific verb 'Remove' and the exact resource ('a sitemap') scoped to 'a property', making the action unambiguous. The second sentence additionally distinguishes this from deindexing content, which prevents confusion with broader content-removal operations.
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 clearly establishes the context for use: removing a sitemap from a property. It also implicitly excludes the deindexing use case, though it does not explicitly name an alternative sibling tool like gsc_submit_sitemap or gsc_list_sitemaps for contrast.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gsc_get_sitemapGet sitemap detailsA
Get details of one submitted sitemap (status, contents, errors/warnings).
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Falls back to GSC_DEFAULT_SITE | |
| feedpath | Yes | Sitemap URL, e.g. https://www.example.com/sitemap.xml |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. 'Get details' clearly indicates a read operation, and the parenthetical lists what the response will contain, but it does not mention error behavior for unsubmitted or invalid URLs, authentication requirements, or the fact that siteUrl has a default fallback. The description is not misleading, but it is minimal on behavioral nuance.
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 focused sentence that front-loads the core action ('Get details') and immediately lists the relevant response aspects. Every word adds value, and there is no redundant restatement of the tool name or title.
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 low-complexity tool with only two parameters, no output schema, and no nested objects, the description is nearly complete: it identifies the target resource, the required input, and the expected response contents. It could mention behavior for missing or invalid sitemaps, but the existing description covers the main calling context adequately.
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%, with siteUrl documented as 'Falls back to GSC_DEFAULT_SITE' and feedpath documented as 'Sitemap URL, e.g. https://www.example.com/sitemap.xml'. The tool description reinforces that the target must be a single submitted sitemap but does not add meaning beyond the schema, so the 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 states a specific verb ('Get'), a specific resource ('one submitted sitemap'), and the exact kind of details returned ('status, contents, errors/warnings'). This clearly distinguishes it from sibling tools like gsc_list_sitemaps, which would handle multiple sitemaps, and gsc_submit_sitemap/gsc_delete_sitemap, which perform different actions.
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 phrase 'one submitted sitemap' implies the tool is for retrieving details about a single existing sitemap, but it never explicitly says when to prefer this over gsc_list_sitemaps or what to do if the sitemap has not been submitted. Usage context is present but only implied, not stated as a positive or negative rule.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gsc_inspect_urlInspect URL indexing statusA
URL Inspection API: check whether a URL is on Google, its coverage state, canonical, crawl info, mobile usability and rich results. The service account must be an OWNER of the property for this API. Only works for URLs in properties you own.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Property containing the URL. Falls back to GSC_DEFAULT_SITE | |
| languageCode | No | BCP-47 language code for messages, default en-US | |
| inspectionUrl | Yes | The full URL to inspect |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description covers the operational constraints: permission level and property ownership. It also implies read-only behavior via 'check' and lists the type of information returned, making side effects and access requirements transparent.
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 succinct, two sentences, with the primary purpose stated first. It avoids unnecessary elaboration while delivering all essential information in a well-ordered manner.
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 an output schema, the description adequately covers the tool's capabilities and constraints. It does not require explanation of return values and is complete for an inspection tool in the context of sibling tools.
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, and the tool description reinforces the key parameter (inspectionUrl). Since schema coverage is 100%, the description does not need to repeat parameter details; the existing info is sufficient.
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 ('check') and the resource (URL), listing specific aspects (coverage, canonical, crawl, mobile usability, rich results) and the ownership constraint. It is distinct from sibling tools which handle site management or 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?
It explicitly outlines prerequisites (OWNER permission, owned properties) and implicitly indicates when to use (to inspect URL details). The description provides clear conditions for successful use, leaving no ambiguity about applicability.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gsc_list_sitemapsList sitemapsA
List submitted sitemaps for a property, with submission dates and indexed counts.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Falls back to GSC_DEFAULT_SITE | |
| sitemapIndex | No | Only list sitemaps contained in this sitemap-index URL |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must cover behavioral traits. It is a read-only operation implied by 'list', but the description does not explicitly mention side effects, permissions, or rate limits. It does convey the primary action and return data, but lacks explicit transparency about non-obvious behaviors.
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, succinct sentence with clear structure: verb first, then object, then additional detail. 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 is adequate for a simple list operation with two parameters and no output schema. It mentions the type of data returned (submission dates, indexed counts), giving a good expectation. Could be slightly more explicit about output format but overall 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 descriptions cover both parameters comprehensively (100% coverage). The tool description does not add extra meaning beyond what the schema already provides, 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?
Clearly states the action (list), the resource (submitted sitemaps), and the property context. It also specifies the returned data (submission dates, indexed counts), distinguishing it from sibling tools like list_sites or get_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?
Implies usage for listing all sitemaps for a property, but does not explicitly contrast with alternatives such as gsc_get_sitemap (for a single sitemap) or gsc_list_sites (for properties). No when-not to use guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gsc_list_sitesList Search Console sitesA
List all Google Search Console properties the service account has access to, including permission levels.
| 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 responsibility for behavioral disclosure. It adequately states the operation's outcome: listing all accessible properties and exposing permission levels. It does not mention potential side effects (none expected) or limitations like pagination, but for a simple list operation, this is sufficient transparency and does not hide any surprising 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, efficient sentence that front-loads the action and resource, then adds the key detail of permission levels. There is no fluff or redundant phrasing, making it easy for an agent to parse quickly.
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 zero-parameter, no-output-schema tool, the description is complete. It tells the agent exactly what will be returned: all properties the service account can access, including permission levels. Nothing else is needed for correct invocation or interpretation of 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 tool has zero parameters, so the schema is complete (100% coverage) and there is nothing for the description to add. The baseline for 0-parameter tools is 4 because the schema already defines everything. The description's mention of 'permission levels' does not pertain to parameters but to the output, so it doesn't add parameter semantics but is not needed.
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 a specific action ('List'), a clear resource ('all Google Search Console properties'), and the scope ('the service account has access to, including permission levels'). This precisely differentiates it from siblings like gsc_add_site or gsc_search_analytics, which operate on specific properties or metrics.
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 about what the tool does and implies its use as an inventory/overview tool, distinct from the mutation-oriented siblings. However, it does not explicitly state when to prefer this over alternatives, nor does it mention exclusions like 'use this instead of gsc_list_sitemaps when you want sites only'. It stops short of explicit routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gsc_remove_siteRemove a Search Console siteB
Remove a property from Search Console.
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | Yes | Property to remove |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It communicates that the operation is destructive, but does not mention irreversibility, permission requirements, side effects on associated data, or whether the property can be re-added later.
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. The core action and object are front-loaded, making it easy to scan.
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 too sparse. It omits important operational context such as whether removal is permanent, what happens to existing data, and any confirmation or authorization expectations.
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%, and the single parameter siteUrl is already described as 'Property to remove'. The tool description adds no additional meaning beyond the schema, so the baseline score of 3 applies.
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 a specific action ('Remove') on a specific resource ('a property from Search Console'). This clearly distinguishes it from sibling tools like gsc_add_site and gsc_list_sites.
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 about when to use this tool versus alternatives, nor any mention of prerequisites or conditions. The description only states what the tool does, not when it should be selected.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gsc_search_analyticsQuery search analyticsC
Run a Search Console search-analytics query: clicks, impressions, CTR and average position grouped by dimensions (query, page, country, device, date). Dates default to the last 28 days.
| Name | Required | Description | Default |
|---|---|---|---|
| endDate | No | End date YYYY-MM-DD (inclusive), defaults to today | |
| siteUrl | No | Property, e.g. "sc-domain:example.com". Falls back to GSC_DEFAULT_SITE. | |
| rowLimit | No | ||
| startRow | No | ||
| dataState | No | "all" includes fresh (partial) data | final |
| startDate | No | Start date YYYY-MM-DD (inclusive), defaults to today minus 28 days | |
| dimensions | No | Dimensions to group by; up to 3 per API limit when combining | |
| searchType | No | web | |
| aggregationType | No | auto | |
| dimensionFilterGroups | No | Optional filter groups, e.g. filter queries containing 'blog' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden; it does not mention side effects, permissions, rate limits, or the structure of the response, leaving behavioral aspects undisclosed.
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 but packs essential information about the operation, metrics, and defaults without unnecessary verbosity.
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 with 10 parameters and nested filter groups, the description is too brief; it omits explanations of output format, available search types, aggregation options, and filter semantics, making it insufficient for full understanding.
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 minimal insight beyond the schema; it notes the default date range and valid dimensions, but many parameters like searchType, aggregationType, and filters are not explained in the description, and the schema already covers most 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 states the action (run a query) and the resource (Search Console search-analytics), and lists the returned metrics and grouping dimensions, making it distinct from sibling tools about sites and 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?
The description does not provide any guidance on when to use this tool versus other tools, or any conditions that would trigger its use; it only states what it does.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gsc_submit_sitemapSubmit a sitemapC
Submit a sitemap URL for a property (same as clicking Submit in the UI).
| Name | Required | Description | Default |
|---|---|---|---|
| siteUrl | No | Falls back to GSC_DEFAULT_SITE | |
| feedpath | Yes | Sitemap URL, e.g. https://www.example.com/sitemap.xml |
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 indicates a mutation ('Submit') but does not state side effects, idempotency, potential errors, or whether repeated submissions are allowed. The 'same as clicking Submit in the UI' hint is thin and fails to cover key operational aspects like state changes or auth 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 front-loads the primary action. The parenthetical UI analogy adds minor context without bloat. It is efficient, though the brevity leaves room for missing behavioral detail that could be seen as excessive compression.
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 mutation tool with no annotations and no output schema, the description is insufficiently complete. It omits crucial context such as the need for an existing property (siteUrl) or the relationship with sibling actions like gsc_add_site. The lack of guidance on prerequisites or expected outcomes leaves the agent under-informed for a non-trivial write operation.
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%—both parameters have descriptions (siteUrl fallback and feedpath example). The tool description adds no additional parameter meaning beyond what the schema provides. Baseline 3 is appropriate when the schema fully documents 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 action ('Submit') and the resource ('a sitemap URL for a property'). It distinguishes from sibling tools like gsc_list_sitemaps and gsc_get_sitemap by describing a submission operation. The 'same as clicking Submit in the UI' reinforces the action but doesn't add specificity about the property context.
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 no guidance on when to use this tool versus alternatives. It does not mention that it is for adding a new sitemap, nor does it reference any prerequisites (e.g., site verification) or conditions that would make it the right choice over gsc_delete_sitemap or gsc_list_sitemaps. The UI comparison is vaguely contextual but not directive.
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. Dates show when Glama detected each change.
9 tool updates
v0.1.0- First observed
gsc_add_site - First observed
gsc_delete_sitemap - First observed
gsc_get_sitemap - First observed
gsc_inspect_url - First observed
gsc_list_sitemaps - First observed
gsc_list_sites - First observed
gsc_remove_site - First observed
gsc_search_analytics - First observed
gsc_submit_sitemap
TDQS
Each tool targets a distinct resource or action: site management, search analytics, sitemaps, and URL inspection. Even similar-looking sitemap tools are clearly separated by list/get/submit/delete semantics.
Every tool uses the gsc_ prefix followed by a verb_noun pattern, such as list_sites, submit_sitemap, and inspect_url. The naming is uniform and predictable across the entire set.
Nine tools is well-scoped for a Search Console server, covering each core API area without redundancy. No tool feels like filler, and the count is within a comfortable range.
The set maps closely to Google's official Search Console API surface: site CRUD, sitemap submission/removal/list, search analytics querying, and URL inspection. It covers all primary workflows an agent would need for Search Console.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Read-only Search Console analytics, URL inspection, indexing diagnostics, and sitemaps.
SEO & marketing toolkit for AI agents: GA4, Search Console, AdSense, GTM, PageSpeed, Trends.
Read Search Console performance, keyword opportunities and annotations for your sites.
Turn Search Console data into SEO actions, content, publishing, indexing, and AI insights.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables interaction with Google Search Console via MCP, offering search analytics, performance summaries, URL inspection, sitemap management, and property listing for SEO workflows.1591MIT
- FlicenseNot gradedqualityFmaintenanceEnables interacting with Google Search Console via natural language, supporting search analytics, URL inspection, sitemap management, and site listing.25-
- AlicenseNot gradedqualityDmaintenanceEnables interaction with Google SearchConsole tools and services through a unified API.2MIT
- FlicenseNot gradedqualityBmaintenanceEnables programmatic management of Google Search Console properties and IndexNow URL submission for search indexing.-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Parithosh-Varma/searchconsole-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server