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., "@Yandex Webmaster MCP List my Webmaster hosts and show the SQI for example.com."
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.
Yandex Webmaster MCP
Ask your Yandex Webmaster data in plain language — from Claude, Cursor, or any MCP client.
Read-only by design (plus URL recrawl), no secrets stored. Sign in with a built-in public OAuth client over PKCE — no app registration, no client secret.
Early development (v0.1). The tool surface is still growing.
A Model Context Protocol server that exposes Yandex Webmaster as a small set of
flexible, well-described tools instead of one-thin-wrapper-per-endpoint. Pairs
with yandex-metrica-mcp:
run both and an agent can cross-reference search queries from Webmaster with
on-site behavior and conversions from Metrica in a single conversation.
Quickstart
1. Add the server to your MCP client (Claude Desktop, Cursor, …):
{
"mcpServers": {
"yandex-webmaster": {
"command": "npx",
"args": ["-y", "@boxlab/yandex-webmaster-mcp"]
}
}
}2. Sign in — interactive, no secret needed:
npx @boxlab/yandex-webmaster-mcp authApprove access in the browser, paste the code Yandex shows you. The token is
cached at ~/.config/yandex-webmaster-mcp/token.json (mode 0600).
3. Ask your agent — e.g. "List my Webmaster hosts and show the SQI for example.com."
Or install as a Claude Code plugin
/plugin marketplace add BoxLab-Ltd/yandex-webmaster-mcp
/plugin install yandex-webmaster-mcp@boxlabRelated MCP server: Yandex Webmaster MCP Server
Why
Existing community servers tend to be thin wrappers — one tool per API endpoint, dumping raw JSON into the model's context. This server aims to be well-engineered: fewer, smarter tools; compact, structured output; read-only by default so an agent can explore your Webmaster data safely.
Tools (v0.1)
get_hosts— list the sites available to your token with theirhost_id, URL and verification state; optionally a host summary (SQI, indexed/excluded pages, site problems). Read-only. Call this first.search_queries— search-query analytics from Yandex Search: impressions, clicks, average show/click position.report="top"ranks the queries bringing the most traffic;report="trend"returns a time series (per query or the site aggregate). Filter by device and date range. Read-only.get_indexing— how Yandex crawls and indexes the host.report="history"gives crawled pages by HTTP status class over time;report="crawled"lists example crawled URLs with their codes;report="in_search"lists example pages currently in search. Read-only.get_diagnostics— problems detected on the site (DNS, slow response, robots.txt, 4xx, …) with severity, active problems first. Read-only.list_sitemaps— the Sitemap files Yandex knows, with URL counts, error counts and where each was discovered. Read-only.get_external_links— inbound links (backlinks):report="samples"for example links with source/target,report="history"for the count over time. Read-only.recrawl_status— remaining daily recrawl quota plus recent recrawl tasks and their state; passtaskIdto check one task. Read-only.recrawl_submit— ask Yandex to recrawl a specific URL sooner. The one write tool; consumes one unit of the daily quota. Returns the task id.
Planned: write tools for sitemaps, original texts and feeds, deferred to a later, opt-in release.
Requirements
Node.js >= 18
A Yandex account with at least one site added in Yandex Webmaster
Authentication
Three ways, in priority order:
Interactive login (recommended) —
npx @boxlab/yandex-webmaster-mcp auth. Uses the built-in public OAuth client over PKCE; the token is valid ~6 months.Static token — set
YANDEX_WEBMASTER_TOKEN(e.g. for CI) to an OAuth token for an app with thewebmaster:hostinfoscope.Your own OAuth app — set
YANDEX_OAUTH_CLIENT_ID(andYANDEX_OAUTH_CLIENT_SECRETto enable automatic token refresh). The app needs thewebmaster:hostinfoandwebmaster:verifyscopes.
See .env.example for all configuration.
Development
Bun-first:
bun install
bun run dev # watch mode
bun run typecheck
bun run lint
bun test
bun run build # emits dist/ (Node-compatible)
bun run try # smoke against the real API after `bun run auth`The published package runs on Node; local development uses Bun.
License
MIT
Available Tools
10 toolsget_diagnosticsSite diagnosticsARead-only
Yandex Webmaster site diagnostics: problems detected on the host (e.g. DNS errors, slow response, robots.txt issues, 4xx alerts), each with a severity (FATAL, CRITICAL, POSSIBLE_PROBLEM, RECOMMENDATION). By default returns only ACTIVE problems (state=PRESENT), worst first. Set includeAbsent=true to also list resolved/absent problem types. Read-only.
Inputs: hostId, includeAbsent.
get_external_linksExternal linksARead-only
Inbound (external) links pointing to the host — the backlinks Yandex knows. Read-only. • report="samples" (default): example links with source page, target URL and discovery date, plus the total count available. • report="history": time series of the total external-link count over time.
Inputs: limit, hostId, offset, report.
get_hostsList Webmaster hostsARead-only
Discovery tool: list the sites (hosts) available to your Yandex Webmaster token, each with its host_id, URL and verification state. host_id is what every other tool needs to identify a site. Optionally pass hostId to also fetch that host summary (SQI, indexed/excluded page counts, site problems). Read-only. Call this first.
Inputs: hostId.
get_indexingSite indexingARead-only
How Yandex crawls and indexes the host. Read-only. Pick a report: • report="history" (default): time series of crawled pages grouped by HTTP status class (HTTP_2XX/3XX/4XX/5XX/OTHER) — spot spikes of errors the crawler hits. • report="crawled": example crawled URLs with their HTTP code and crawl date. • report="in_search": example URLs currently present in Yandex search, with title.
Inputs: limit, dateTo, hostId, offset, +2 more.
list_sitemapsList sitemapsARead-only
List the Sitemap files Yandex knows for the host, each with its URL, type, last access date, number of URLs and error count, and where it was discovered (robots.txt, webmaster, etc.). Use it to check a sitemap is being read and is error-free. Read-only.
Inputs: limit, hostId.
loginSign in to YandexA
Sign in to Yandex from here. Opens your browser to approve access; the code returns automatically over a local redirect, so this usually finishes in one call. If the local port is unavailable it returns a URL to approve and you then call submit_code with the code Yandex shows. Run this once (the token lasts ~1 year); needed before the data tools if you are not signed in yet.
Inputs: oob.
recrawl_statusRecrawl quota & tasksARead-only
Read-only view of the host recrawl activity. With no taskId: the remaining daily quota plus the most recent recrawl tasks and their state (IN_PROGRESS, DONE, FAILED). Pass taskId (from recrawl_submit) to check one task. Use before recrawl_submit to confirm quota is available.
Inputs: limit, hostId, taskId.
recrawl_submitSubmit URL for recrawlA
Ask Yandex to recrawl a specific page of the host sooner. NOT read-only: each call consumes one unit of the limited daily recrawl quota (check it with recrawl_status). The URL must belong to the host and be a full absolute URL. Returns the task_id and the remaining quota. Track progress with recrawl_status using the returned task_id.
Inputs: url (required), hostId.
search_queriesYandex search queriesARead-only
Search-query analytics for a host from Yandex Search: impressions (TOTAL_SHOWS), clicks (TOTAL_CLICKS), average show/click position. Read-only. • report="top" (default): ranked list of the queries bringing the most traffic, ordered by orderBy. Use this to see which phrases people search. • report="trend": a time series. Pass queryId (from a prior "top" call) for one query's history over time, or omit it for the site's aggregate trend. Tip: cross-reference these queries/landing pages with Yandex Metrica (bounce rate, conversions) to find high-impression, low-conversion phrases worth optimizing.
Inputs: limit, dateTo, hostId, offset, +6 more.
submit_codeSubmit the Yandex sign-in codeA
Complete a copy-paste sign-in started by login: pass the code Yandex showed you after you approved access.
Inputs: code (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 10 tools
Each tool targets a distinct aspect of the Yandex Webmaster API: authentication (login, submit_code), host discovery (get_hosts), analytics (search_queries), crawling/indexing (get_indexing), diagnostics (get_diagnostics), sitemaps (list_sitemaps), backlinks (get_external_links), and recrawl management (recrawl_status, recrawl_submit). No two tools have overlapping purposes.
Most tools follow a clear verb_noun pattern with 'get_' (get_hosts, get_indexing, get_diagnostics, get_external_links) and 'list_' (list_sitemaps), but a few deviate: 'search_queries' and 'recrawl_status' are bare noun phrases, while 'login' and 'submit_code' are sequential auth verbs. This is a minor inconsistency that doesn't cause confusion.
With 10 tools, the set is well-scoped for a Yandex Webmaster integration. Each tool covers a meaningful capability, and the count is within the ideal range without being bloated or thin.
The tools cover read-only monitoring for hosts, search queries, indexing, diagnostics, sitemaps, and external links, plus a recrawl action. However, there are notable gaps for a webmaster domain: no ability to add/remove hosts, verify ownership, submit/delete sitemaps, or perform other management operations. Agents can monitor and request recrawls, but lifecycle management is missing.
Maintenance
Related MCP Connectors
Read-only Google Search Console MCP server for AI assistants.
MCP servers for Yandex APIs: Wordstat, Search, Webmaster, Metrika, Direct. Open source, by Seyka AI.
Read-only Yandex Metrika MCP. Query visits, sources, geo, devices and more in plain language.
MCP server for querying and analyzing data from ad platforms, analytics tools, and spreadsheets
Related MCP Servers
- AlicenseAqualityCmaintenanceMCP server for interacting with Yandex.Webmaster API to manage sites, retrieve search queries, and check indexing status. Requires an OAuth token.1396 npm6MIT
- AlicenseCqualityDmaintenanceMCP server that provides 46 tools for managing Yandex Webmaster API v4, enabling site management, sitemaps, indexing, search analytics, and more through natural language.4630 npm7MIT
- AlicenseAqualityDmaintenanceLocal-first MCP server for Yandex Webmaster that exposes tools for SEO operations including search query analytics, sitemap management, indexing history, recrawl quota, and diagnostics.15MIT
- AlicenseAqualityBmaintenanceMCP server for Yandex Metrica analytics: query web analytics metrics, goals, conversions, and raw API data using natural language from AI clients like Claude and Cursor.8708 npm4MIT