kurerok-yandex-webmaster-mcp
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., "@kurerok-yandex-webmaster-mcpget my search queries for the last 7 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.
kurerok-yandex-webmaster-mcp
Local-first MCP server for Yandex Webmaster. It exposes the pieces we need for Kurerok SEO operations: search query analytics, sitemap state, indexing history, pages in search, recrawl quota/submission, diagnostics, and link samples.
This project intentionally talks to the official Yandex Webmaster API directly. It was informed by the public MCP ecosystem, especially:
altrr2/yandex-tools-mcpfor the multi-package Yandex API direction.theYahia/yandex-webmaster-mcpfor a compact Webmaster-only surface.yandex/yandex-search-mcp-serverfor official Yandex MCP packaging ideas.
It does not require sending OAuth tokens to a hosted third party.
Tools
Read-only:
yandex_get_useryandex_list_hostsyandex_get_host_summaryyandex_get_diagnosticsyandex_get_sitemapsyandex_get_search_queriesyandex_get_indexing_historyyandex_get_pages_in_search_historyyandex_get_search_events_samplesyandex_get_recrawl_quotayandex_get_recrawl_queueyandex_get_external_linksyandex_get_broken_internal_links
State-changing, quota-sensitive:
yandex_add_sitemapyandex_submit_recrawl_urls
Both require confirmed: true.
Related MCP server: Yandex Webmaster MCP Server
Setup
npm install
npm run buildCreate a Yandex OAuth application with Yandex Webmaster API access and set:
export YANDEX_WEBMASTER_TOKEN="..."
export YANDEX_WEBMASTER_HOST_ID="https:kurerok.ru:443"Codex/Claude MCP config:
{
"mcpServers": {
"kurerok-yandex-webmaster": {
"command": "node",
"args": ["/absolute/path/to/kurerok-yandex-webmaster-mcp/dist/index.js"],
"env": {
"YANDEX_WEBMASTER_TOKEN": "use-env-or-secret-manager",
"YANDEX_WEBMASTER_HOST_ID": "https:kurerok.ru:443"
}
}
}
}Security Notes
Tokens are read only from environment variables.
The server never prints the token intentionally.
API errors are surfaced without request headers.
Mutating tools require explicit
confirmed: true.Default auth scheme is
OAuth, matching Yandex API examples.Keep the OAuth token out of shell history and MCP config files when possible.
Kurerok Workflow
Recommended daily/weekly sequence:
yandex_get_sitemapsyandex_get_recrawl_quotayandex_get_search_queriesyandex_get_pages_in_search_historyyandex_get_indexing_historyBuild a curated URL queue from sitemap + Google winners.
yandex_submit_recrawl_urlswithconfirmed: true.
Do not bulk-submit weak external-apply or low-value pages before fixing the Yandex vacancies feed and JobPosting/directApply semantics.
Available Tools
15 toolsyandex_add_sitemapC
Add a sitemap file to Yandex Webmaster. Requires confirmed=true.
| Name | Required | Description | Default |
|---|---|---|---|
| host_id | No | Yandex Webmaster host id, for example https:kurerok.ru:443. Defaults to YANDEX_WEBMASTER_HOST_ID. | |
| confirmed | Yes | Must be true. This changes Yandex Webmaster state. | |
| sitemap_url | Yes | Absolute sitemap URL. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the behavioral burden. It states 'Requires confirmed=true' but doesn't disclose side effects (e.g., whether it overwrites existing sitemaps, rate limits, or auth requirements). The mutation is implied but not explicit.
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 main action and a critical requirement. It is highly efficient with no superfluous content.
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 3-parameter tool with no output schema, the description covers the core action and requirement. However, it omits context like the need for a pre-existing host, error handling, or confirmation behavior. Minimal but adequate.
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%, so the baseline is 3. The description adds the note that 'confirmed' must be true, which is already in the schema. It does not clarify the host_id default or the format of sitemap_url 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 'add' and the resource 'sitemap file to Yandex Webmaster'. It distinguishes from sibling tools (mostly get/list operations) by implying a mutation. However, it could elaborate on what 'add' means in context (e.g., submission vs. registration).
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 doesn't mention prerequisites (e.g., existing host) or contrast with other tools like yandex_get_sitemaps for listing. The description lacks any discriminative context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yandex_get_broken_internal_linksC
Get broken internal link samples.
| Name | Required | Description | Default |
|---|---|---|---|
| host_id | No | Yandex Webmaster host id, for example https:kurerok.ru:443. Defaults to YANDEX_WEBMASTER_HOST_ID. |
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 'Get broken internal link samples.' It does not disclose what 'samples' entails (e.g., count, format), whether it is read-only (implied but not explicit), or any side effects. Minimal behavioral insight.
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 unnecessary words. It is front-loaded and efficient, though it could include more detail without harming conciseness. Essentially appropriate size for the tool's simplicity.
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 simple tool (1 param, no output schema, no annotations), the description is incomplete. It lacks context about what 'samples' means, how many are returned, and any limitations. The user needs more information to use the tool effectively.
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% for the single parameter, so the description adds no extra meaning beyond the schema. Baseline score of 3 is appropriate as the existing schema covers the parameter adequately.
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 retrieves broken internal link samples, matching the explicit resource in the name. However, it does not differentiate from sibling tools like yandex_get_diagnostics, which may also involve broken links, but the focus on 'broken internal link samples' is specific enough.
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 yandex_get_diagnostics or yandex_get_external_links. The description does not mention context, prerequisites, or exclusions, relying solely on the tool name for implied usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yandex_get_diagnosticsC
Get Yandex Webmaster diagnostics for the site.
| Name | Required | Description | Default |
|---|---|---|---|
| host_id | No | Yandex Webmaster host id, for example https:kurerok.ru:443. Defaults to YANDEX_WEBMASTER_HOST_ID. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose traits. It only states 'get diagnostics' without indicating whether the operation is read-only, destructive, requires authentication, or has rate limits. Key behavioral details 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 short sentence with no unnecessary words. It is concise and front-loaded, though minimal.
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 output schema, no annotations, and only one parameter, the description should provide more context about the returned diagnostics. It fails to explain what the tool returns or how it fits with 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?
Schema description coverage is 100% (one parameter described). The description adds no extra meaning beyond the schema, but the schema already explains the parameter. 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 states the tool gets diagnostics for a site, which is a verb+resource, but it is vague about what specific diagnostics are retrieved. It does not differentiate from siblings like yandex_get_host_summary or yandex_get_broken_internal_links.
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 siblings or any prerequisites. The description lacks context for correct invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yandex_get_external_linksC
Get external link samples known to Yandex Webmaster.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| offset | No | ||
| host_id | No | Yandex Webmaster host id, for example https:kurerok.ru:443. Defaults to YANDEX_WEBMASTER_HOST_ID. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description does not disclose behavioral traits like pagination, data freshness, or that it returns samples rather than a full list. With no annotations, this is a significant gap.
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, but it is too brief to be fully useful. It front-loads the core purpose but sacrifices necessary detail.
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 3 parameters, no output schema, and no annotations, the description is incomplete. It does not explain pagination, sample size implications, or what the output contains.
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 to parameters beyond the schema; only host_id has a schema description. The limit and offset parameters are not explained, and the default behavior is not mentioned.
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 'external link samples', and the source 'known to Yandex Webmaster', distinguishing it from sibling tools like yandex_get_broken_internal_links and yandex_get_search_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 on when to use this tool versus alternatives, such as for retrieving all external links vs samples, or when to use other link-related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yandex_get_host_summaryC
Get site summary metrics from Yandex Webmaster.
| Name | Required | Description | Default |
|---|---|---|---|
| host_id | No | Yandex Webmaster host id, for example https:kurerok.ru:443. Defaults to YANDEX_WEBMASTER_HOST_ID. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description needs to disclose behavioral traits. It only states what the tool does (get summary metrics) but provides no information on side effects, authentication needs, or rate limits. The read-only nature is implied but not explicit.
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, front-loaded sentence with no unnecessary words. 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?
The tool has no output schema, so the description should explain what summary metrics are returned. It does not, leaving the agent without information on return values. The description is incomplete for practical 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 description coverage is 100% for the single parameter, and the description does not add additional meaning beyond what the schema already provides. 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 the tool gets site summary metrics from Yandex Webmaster, effectively differentiating it from sibling tools like yandex_get_diagnostics or yandex_get_indexing_history.
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, no prerequisites or exclusions are mentioned. The description is too brief to provide any usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yandex_get_indexing_historyC
Get crawl/indexing history for a date range.
| Name | Required | Description | Default |
|---|---|---|---|
| date_to | Yes | End date, YYYY-MM-DD. | |
| host_id | No | Yandex Webmaster host id, for example https:kurerok.ru:443. Defaults to YANDEX_WEBMASTER_HOST_ID. | |
| date_from | Yes | Start date, YYYY-MM-DD. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description does not disclose behavioral traits such as read-only status, authentication needs, rate limits, or what specific data is returned. The simple 'Get' implies a read operation but is insufficient for a tool with no annotation coverage.
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 is front-loaded and to the point, with no unnecessary 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?
Given the lack of output schema and annotations, the description is too minimal. It does not explain what the returned crawl/indexing history includes, how to interpret the data, or the effect of the optional host_id parameter, making it incomplete for effective tool 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 description coverage is 100%, so the input schema already documents all three parameters. The description adds no additional meaning beyond the schema, resulting in a neutral baseline score of 3.
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 retrieves crawl/indexing history for a date range, with specific verb and resource. It differentiates from sibling tools like yandex_get_pages_in_search_history or yandex_get_search_queries, though it does not explicitly name alternatives.
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 yandex_get_pages_in_search_history or yandex_get_recrawl_queue. There is no mention of prerequisites, host_id requirement, or context for the data returned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yandex_get_pages_in_search_historyC
Get pages-in-search count history for a date range.
| Name | Required | Description | Default |
|---|---|---|---|
| date_to | Yes | End date, YYYY-MM-DD. | |
| host_id | No | Yandex Webmaster host id, for example https:kurerok.ru:443. Defaults to YANDEX_WEBMASTER_HOST_ID. | |
| date_from | Yes | Start date, YYYY-MM-DD. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden but only states the basic function. It does not disclose behavioral traits like whether the operation is read-only, rate limits, data freshness, or permissions required. The verb 'Get' implies read-only, but no explicit confirmation.
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 of 10 words that efficiently communicates the tool's purpose. Every word is necessary, and the information 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?
Given the absence of an output schema and the tool's 3 parameters (all well-documented in schema), the description is insufficient. It does not explain return values, pagination, or other context that would help an AI agent understand the tool's full behavior.
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 100% coverage with descriptions for all three parameters. The tool description adds no additional 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?
The description clearly states it retrieves 'pages-in-search count history for a date range', which specifies the resource and action. However, it does not explicitly differentiate from sibling tools like yandex_get_indexing_history, though the resource is distinct.
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 yandex_get_indexing_history or other history tools. The description lacks any explicit when-to-use or when-not-to-use instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yandex_get_recrawl_queueC
Get Yandex recrawl queue/tasks.
| Name | Required | Description | Default |
|---|---|---|---|
| host_id | No | Yandex Webmaster host id, for example https:kurerok.ru:443. Defaults to YANDEX_WEBMASTER_HOST_ID. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must convey behavioral traits. It only states 'Get', implying a read operation, but does not confirm idempotency, auth requirements, rate limits, or response format. Lacks necessary disclosure 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 concise sentence with no fluff. While efficient, it sacrifices necessary detail; a 5 would require both conciseness and well-structured additional 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?
Given one parameter, no output schema, and no annotations, the description is too minimal. It omits what the queue contains, response structure, pagination, or limits, leaving the agent underinformed for this retrieval 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 coverage is 100%, so the description adds no extra meaning beyond the schema's explanation of host_id. Baseline 3 is appropriate as the schema handles parameter documentation adequately.
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' and resource 'Yandex recrawl queue/tasks', which distinguishes it from sibling tools like get_recrawl_quota (quota) and submit_recrawl_urls (submission). However, 'queue/tasks' is slightly vague, missing specifics about the queue's purpose or contents.
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. Given sibling tools for quota and submission, the description should clarify that this tool retrieves the current queue items, not quotas or submission results.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yandex_get_recrawl_quotaB
Check remaining Yandex recrawl quota.
| Name | Required | Description | Default |
|---|---|---|---|
| host_id | No | Yandex Webmaster host id, for example https:kurerok.ru:443. Defaults to YANDEX_WEBMASTER_HOST_ID. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It states 'check' implying a read-only operation, but does not explicitly disclose that it has no side effects or discuss any required permissions 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 of 5 words, containing no unnecessary information. It is front-loaded and 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?
The description lacks details such as what the quota is (e.g., daily, per host), the response format, or implications of quota exhaustion. Given one optional parameter and no output schema, more context would be helpful.
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%, so the description does not need to add parameter details. It does not elaborate beyond what the schema provides, meeting the baseline for high 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 'Check' and a clear resource 'remaining Yandex recrawl quota', making it unambiguous. It distinguishes from sibling tools like yandex_submit_recrawl_urls and yandex_get_recrawl_queue by focusing on quota 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 versus alternatives is provided. The context implies it is for checking quota before submitting recrawl URLs, but this is not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yandex_get_search_events_samplesB
Get sample pages added to or removed from Yandex search.
| Name | Required | Description | Default |
|---|---|---|---|
| host_id | No | Yandex Webmaster host id, for example https:kurerok.ru:443. Defaults to YANDEX_WEBMASTER_HOST_ID. |
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 what the tool does, not whether it is read-only, any side effects, or requirements beyond the host_id parameter.
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 wasted words, front-loading the verb and resource.
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 output schema), the description is adequate to convey the basic action but lacks details on output format or operational constraints.
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% for the single parameter host_id. The description does not add additional meaning beyond the schema, 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' and the resource 'sample pages added to or removed from Yandex search,' making the purpose specific and distinct 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?
No guidance on when to use this tool versus alternatives; the sibling list is provided but without comparisons or context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yandex_get_search_queriesC
Get Yandex search query metrics for a date range.
| Name | Required | Description | Default |
|---|---|---|---|
| date_to | Yes | End date, YYYY-MM-DD. | |
| host_id | No | Yandex Webmaster host id, for example https:kurerok.ru:443. Defaults to YANDEX_WEBMASTER_HOST_ID. | |
| date_from | Yes | Start date, YYYY-MM-DD. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose any behavioral traits such as read-only nature, rate limits, data volume, or authentication 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 sentence with no wasted words, but it is too brief for a tool with three parameters and many siblings. Additional context would improve usability.
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 lack of output schema and annotations, the description does not explain what metrics are returned, any constraints, or how to interpret results. It is incomplete for a tool of this 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?
The input schema already describes all parameters with 100% coverage, so the description adds no additional meaning. 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 the verb 'Get' and resource 'Yandex search query metrics for a date range', which distinguishes it from sibling tools like yandex_get_pages_in_search_history. However, 'metrics' is somewhat vague and could be more specific.
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, nor does it mention any prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yandex_get_sitemapsB
List sitemap files known to Yandex Webmaster.
| Name | Required | Description | Default |
|---|---|---|---|
| host_id | No | Yandex Webmaster host id, for example https:kurerok.ru:443. Defaults to YANDEX_WEBMASTER_HOST_ID. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose any behavioral traits such as safety (read-only), authentication requirements, rate limits, or side effects. The minimal phrase 'list' implies a read operation, but explicit transparency is 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 sentence with no unnecessary words. It is front-loaded with the core action and resource, making it efficient and easy to parse.
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 does not mention return format (e.g., list of URLs), pagination, or filtering. For a simple list tool with one optional parameter, additional context about expected 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% (one optional parameter with schema description detailing format and default). The tool description adds no additional 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 'List sitemap files known to Yandex Webmaster,' which clearly identifies the verb (list) and resource (sitemap files known to Yandex Webmaster). It effectively distinguishes from the sibling tool yandex_add_sitemap (which adds a 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?
The description provides no guidance on when to use this tool versus alternatives (e.g., yandex_get_indexing_history or yandex_get_diagnostics). It does not mention prerequisites or context for use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yandex_get_userA
Get the authenticated Yandex Webmaster user id.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description transparently indicates a read operation with no side effects, though it doesn't specify behavior for unauthenticated users. No annotations are provided.
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, efficiently conveying the tool's 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?
For a simple zero-parameter tool, the description adequately conveys the action but lacks details about the output format or error cases, which would be beneficial without an 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?
There are zero parameters, and the schema coverage is 100%; per guidelines, the baseline score for 0 parameters 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 clearly states the verb 'Get' and the resource 'authenticated Yandex Webmaster user id', distinguishing it from sibling tools that handle sitemaps, diagnostics, etc.
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; however, its simplicity and zero parameters imply it's for retrieving the current user's ID.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yandex_list_hostsA
List sites available in Yandex Webmaster.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
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. It states 'List' which implies a read-only operation, but does not explicitly declare it as non-destructive or mention any side effects. For a simple listing tool, this is adequate but minimal.
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 earns its place by clearly stating the tool's function, though it could provide slightly more 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 the tool's low complexity (no parameters, no output schema), the description is nearly complete. However, it omits details like what format the list of hosts is returned in, which a user might need.
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 zero parameters and 100% schema description coverage, so no parameter documentation is needed. The description adds no parameter info, but the baseline for zero parameters 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 states the verb 'List' and the resource 'sites available in Yandex Webmaster', which clearly indicates the tool's function. It implicitly distinguishes from sibling tools that perform specific actions like adding sitemaps or getting diagnostics, but could be more explicit.
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. The usage context is implied (listing hosts), but there are no exclusions or when-not scenarios mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yandex_submit_recrawl_urlsB
Submit up to 150 URLs to Yandex recrawl queue. Requires confirmed=true.
| Name | Required | Description | Default |
|---|---|---|---|
| urls | Yes | Absolute URLs to send to Yandex recrawl queue. | |
| host_id | No | Yandex Webmaster host id, for example https:kurerok.ru:443. Defaults to YANDEX_WEBMASTER_HOST_ID. | |
| confirmed | Yes | Must be true. This spends Yandex recrawl quota. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries burden. The main description is minimal, but the parameter description for 'confirmed' discloses that it spends Yandex recrawl quota, providing some behavioral context. However, other behaviors (e.g., error handling, quota exhaustion) are not mentioned.
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 and to the point. However, the note 'Requires confirmed=true' is redundant with the schema's required field and parameter description, which slightly reduces efficiency.
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 that consumes quota, the description is too brief. It lacks information on return values, error conditions (e.g., invalid URLs, quota exceeded), and post-submit behavior. No output schema exists to compensate.
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 has 100% description coverage, so the description adds no extra meaning beyond what is already in 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 ('submit'), target ('Yandex recrawl queue'), and constraints ('up to 150 URLs', 'requires confirmed=true'). This distinguishes it from sibling tools that read the queue or check quota.
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 yandex_get_recrawl_quota or yandex_get_recrawl_queue. The description only states a requirement (confirmed=true) but doesn't explain prerequisites or context.
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.
15 tool updates
v0.1.0- First observed
yandex_add_sitemap - First observed
yandex_get_broken_internal_links - First observed
yandex_get_diagnostics - First observed
yandex_get_external_links - First observed
yandex_get_host_summary - First observed
yandex_get_indexing_history - First observed
yandex_get_pages_in_search_history - First observed
yandex_get_recrawl_queue - First observed
yandex_get_recrawl_quota - First observed
yandex_get_search_events_samples - First observed
yandex_get_search_queries - First observed
yandex_get_sitemaps - First observed
yandex_get_user - First observed
yandex_list_hosts - First observed
yandex_submit_recrawl_urls
TDQS
Scored across 15 tools
Each tool targets a distinct aspect of Yandex Webmaster, such as sitemaps, diagnostics, links, indexing, and search queries. There is no functional overlap, making it easy for an agent to select the correct tool.
All tools follow a consistent 'yandex_<verb>_<object>' pattern in snake_case, using descriptive verbs like 'add', 'get', 'list', and 'submit'. The naming is predictable and uniform.
With 15 tools, the set is well-scoped for a Yandex Webmaster API wrapper. It covers essential operations without being excessive, and each tool serves a clear purpose within the domain.
The tool set provides comprehensive coverage of Yandex Webmaster features, including sitemap management, diagnostics, link analysis, indexing history, search queries, recrawl operations, and user/host info. No obvious gaps are present.
Maintenance
Related MCP Connectors
Yandex search results, images, and SERP data via the Apify Yandex Search Scraper, hosted MCP.
MCP server for Google search results via SERP API
Read-only Yandex Metrika MCP. Query visits, sources, geo, devices and more in plain language.
SEO MCP server for keyword research, SERP analysis, audits, and Search Console workflows.
Related MCP Servers
- AlicenseAqualityBmaintenanceMCP server for interacting with Yandex.Webmaster API to manage sites, retrieve search queries, and check indexing status. Requires an OAuth token.1361 npm4MIT
- AlicenseCqualityCmaintenanceMCP server that provides 46 tools for managing Yandex Webmaster API v4, enabling site management, sitemaps, indexing, search analytics, and more through natural language.4613 npm5MIT
- AlicenseAqualityAmaintenanceThis MCP server lets you query Yandex Webmaster data in plain language, covering search queries, indexing, diagnostics, sitemaps, backlinks, and recrawl status. It is read-only by default (except recrawl submission) and uses OAuth without storing secrets.1044 npm3MIT
- AlicenseNot gradedqualityCmaintenanceSelf-hosted MCP server for Google Search Console. Enables natural language queries to list sites, analyze search analytics, inspect URLs, and check sitemaps through AI assistants.MIT