Skip to main content
Glama
Yandex Webmaster MCP

Yandex Webmaster MCP

by BoxLab-Ltd

Yandex Webmaster MCP

CI npm License: MIT

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 auth

Approve 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@boxlab

Related 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 their host_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; pass taskId to 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

Authentication

Three ways, in priority order:

  1. Interactive login (recommended) — npx @boxlab/yandex-webmaster-mcp auth. Uses the built-in public OAuth client over PKCE; the token is valid ~6 months.

  2. Static token — set YANDEX_WEBMASTER_TOKEN (e.g. for CI) to an OAuth token for an app with the webmaster:hostinfo scope.

  3. Your own OAuth app — set YANDEX_OAUTH_CLIENT_ID (and YANDEX_OAUTH_CLIENT_SECRET to enable automatic token refresh). The app needs the webmaster:hostinfo and webmaster:verify scopes.

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 tools
get_diagnosticsSite diagnosticsA
Read-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_hostsList Webmaster hostsA
Read-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 indexingA
Read-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 sitemapsA
Read-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 & tasksA
Read-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 queriesA
Read-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

    A4.2/5.0

    Scored across 10 tools

    Disambiguation5/5

    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.

    Naming Consistency4/5

    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.

    Tool Count5/5

    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.

    Completeness3/5

    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

    ActivityActive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      C
      maintenance
      MCP server for interacting with Yandex.Webmaster API to manage sites, retrieve search queries, and check indexing status. Requires an OAuth token.
      13
      96 npm
      6
      MIT
    • A
      license
      C
      quality
      D
      maintenance
      MCP server that provides 46 tools for managing Yandex Webmaster API v4, enabling site management, sitemaps, indexing, search analytics, and more through natural language.
      46
      30 npm
      7
      MIT
    • A
      license
      A
      quality
      D
      maintenance
      Local-first MCP server for Yandex Webmaster that exposes tools for SEO operations including search query analytics, sitemap management, indexing history, recrawl quota, and diagnostics.
      15
      MIT
    • A
      license
      A
      quality
      B
      maintenance
      MCP 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.
      8
      708 npm
      4
      MIT