Yandex Webmaster MCP

Яндекс Вебмастер MCP

A Yandex Webmaster MCP server with in-chat OAuth PKCE login: 20 tools for diagnostics, search queries, sitemaps and recrawl

MCP server

Medium risk

We rate an entry medium when the tool runs code, makes network calls or reads project files. Check what exactly it does before installing.

Why this level

  • Can add sites and sitemaps, start ownership verification and recrawl, including deletion via the generic raw_request
  • The obtained OAuth token grants access to all sites in the Yandex account for a year without re-login
All reasons and checks
Russian stack

askads/mcp-yandex-webmaster

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add mcp/yandeks-vebmaster-mcp

Detects the agents on your machine, checks the risk and pins the version.

Other ways to install

Run in a terminal

claude mcp add --transport stdio --env 'YANDEX_OAUTH_TOKEN=<your YANDEX_OAUTH_TOKEN>' mcp-yandex-webmaster -- npx -y mcp-yandex-webmaster@1.1.1

Or add to the file .mcp.json, in the project

{
  "mcpServers": {
    "mcp-yandex-webmaster": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-yandex-webmaster@1.1.1"
      ],
      "env": {
        "YANDEX_OAUTH_TOKEN": "<your YANDEX_OAUTH_TOKEN>"
      }
    }
  }
}

If the file already exists, add the server inside the mcpServers key.

Keys and settings

YANDEX_OAUTH_TOKENsecret, required
Yandex OAuth token with Webmaster access, sent as `Authorization: OAuth <token>`. Treat it as a secret.
YANDEX_USER_IDoptional
Token owner's user id; auto-detected via GET /v4/user when unset.
YANDEX_WEBMASTER_HOST_IDoptional
Default host_id (e.g. https:example.com:443) used when a tool call omits one.
YANDEX_WEBMASTER_API_BASEoptional
API root override.
YANDEX_WEBMASTER_TIMEOUT_MSoptional
Per-request timeout in milliseconds.
YANDEX_WEBMASTER_MAX_RETRIESoptional
Retries on transient errors (429 — except the daily QUOTA_EXCEEDED; 5xx/network for reads).

Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.

Install in Cursor

The button opens the agent and offers to add the server. If nothing happens, copy the config below.

Add to the file ~/.cursor/mcp.json, for all projects

{
  "mcpServers": {
    "mcp-yandex-webmaster": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-yandex-webmaster@1.1.1"
      ],
      "env": {
        "YANDEX_OAUTH_TOKEN": "<your YANDEX_OAUTH_TOKEN>"
      }
    }
  }
}

If the file already exists, add the server inside the mcpServers key. For a single project, put the same block into .cursor/mcp.json.

Keys and settings

YANDEX_OAUTH_TOKENsecret, required
Yandex OAuth token with Webmaster access, sent as `Authorization: OAuth <token>`. Treat it as a secret.
YANDEX_USER_IDoptional
Token owner's user id; auto-detected via GET /v4/user when unset.
YANDEX_WEBMASTER_HOST_IDoptional
Default host_id (e.g. https:example.com:443) used when a tool call omits one.
YANDEX_WEBMASTER_API_BASEoptional
API root override.
YANDEX_WEBMASTER_TIMEOUT_MSoptional
Per-request timeout in milliseconds.
YANDEX_WEBMASTER_MAX_RETRIESoptional
Retries on transient errors (429 — except the daily QUOTA_EXCEEDED; 5xx/network for reads).

Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.

Install in VS Code

The button opens the agent and offers to add the server. If nothing happens, copy the config below.

Run in a terminal

code --add-mcp '{"name":"mcp-yandex-webmaster","type":"stdio","command":"npx","args":["-y","mcp-yandex-webmaster@1.1.1"],"env":{"YANDEX_OAUTH_TOKEN":"<your YANDEX_OAUTH_TOKEN>"}}'

Or add to the file .vscode/mcp.json, in the project

{
  "servers": {
    "mcp-yandex-webmaster": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "mcp-yandex-webmaster@1.1.1"
      ],
      "env": {
        "YANDEX_OAUTH_TOKEN": "<your YANDEX_OAUTH_TOKEN>"
      }
    }
  }
}

If the file already exists, add the server inside the servers key.

Keys and settings

YANDEX_OAUTH_TOKENsecret, required
Yandex OAuth token with Webmaster access, sent as `Authorization: OAuth <token>`. Treat it as a secret.
YANDEX_USER_IDoptional
Token owner's user id; auto-detected via GET /v4/user when unset.
YANDEX_WEBMASTER_HOST_IDoptional
Default host_id (e.g. https:example.com:443) used when a tool call omits one.
YANDEX_WEBMASTER_API_BASEoptional
API root override.
YANDEX_WEBMASTER_TIMEOUT_MSoptional
Per-request timeout in milliseconds.
YANDEX_WEBMASTER_MAX_RETRIESoptional
Retries on transient errors (429 — except the daily QUOTA_EXCEEDED; 5xx/network for reads).

Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.

Run in a terminal

codex mcp add mcp-yandex-webmaster --env 'YANDEX_OAUTH_TOKEN=<your YANDEX_OAUTH_TOKEN>' -- npx -y mcp-yandex-webmaster@1.1.1

Or add to the file ~/.codex/config.toml, for all projects

[mcp_servers.mcp-yandex-webmaster]
command = "npx"
args = ["-y", "mcp-yandex-webmaster@1.1.1"]
env = { YANDEX_OAUTH_TOKEN = "<your YANDEX_OAUTH_TOKEN>" }

If the file already exists, append the block to the end.

Keys and settings

YANDEX_OAUTH_TOKENsecret, required
Yandex OAuth token with Webmaster access, sent as `Authorization: OAuth <token>`. Treat it as a secret.
YANDEX_USER_IDoptional
Token owner's user id; auto-detected via GET /v4/user when unset.
YANDEX_WEBMASTER_HOST_IDoptional
Default host_id (e.g. https:example.com:443) used when a tool call omits one.
YANDEX_WEBMASTER_API_BASEoptional
API root override.
YANDEX_WEBMASTER_TIMEOUT_MSoptional
Per-request timeout in milliseconds.
YANDEX_WEBMASTER_MAX_RETRIESoptional
Retries on transient errors (429 — except the daily QUOTA_EXCEEDED; 5xx/network for reads).

Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.

Add to the file ~/.gemini/settings.json, for all projects

{
  "mcpServers": {
    "mcp-yandex-webmaster": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-yandex-webmaster@1.1.1"
      ],
      "env": {
        "YANDEX_OAUTH_TOKEN": "<your YANDEX_OAUTH_TOKEN>"
      }
    }
  }
}

If the file already exists, add the server inside the mcpServers key.

Keys and settings

YANDEX_OAUTH_TOKENsecret, required
Yandex OAuth token with Webmaster access, sent as `Authorization: OAuth <token>`. Treat it as a secret.
YANDEX_USER_IDoptional
Token owner's user id; auto-detected via GET /v4/user when unset.
YANDEX_WEBMASTER_HOST_IDoptional
Default host_id (e.g. https:example.com:443) used when a tool call omits one.
YANDEX_WEBMASTER_API_BASEoptional
API root override.
YANDEX_WEBMASTER_TIMEOUT_MSoptional
Per-request timeout in milliseconds.
YANDEX_WEBMASTER_MAX_RETRIESoptional
Retries on transient errors (429 — except the daily QUOTA_EXCEEDED; 5xx/network for reads).

Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.

Add to the file ~/.config/devin/mcp_config.json, for all projects

{
  "mcpServers": {
    "mcp-yandex-webmaster": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-yandex-webmaster@1.1.1"
      ],
      "env": {
        "YANDEX_OAUTH_TOKEN": "<your YANDEX_OAUTH_TOKEN>"
      }
    }
  }
}

If the file already exists, add the server inside the mcpServers key. Legacy Cascade keeps the MCP config in ~/.codeium/windsurf/mcp_config.json.

Keys and settings

YANDEX_OAUTH_TOKENsecret, required
Yandex OAuth token with Webmaster access, sent as `Authorization: OAuth <token>`. Treat it as a secret.
YANDEX_USER_IDoptional
Token owner's user id; auto-detected via GET /v4/user when unset.
YANDEX_WEBMASTER_HOST_IDoptional
Default host_id (e.g. https:example.com:443) used when a tool call omits one.
YANDEX_WEBMASTER_API_BASEoptional
API root override.
YANDEX_WEBMASTER_TIMEOUT_MSoptional
Per-request timeout in milliseconds.
YANDEX_WEBMASTER_MAX_RETRIESoptional
Retries on transient errors (429 — except the daily QUOTA_EXCEEDED; 5xx/network for reads).

Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.

Formerly Windsurf.

Add to the file cline_mcp_settings.json, for all projects

{
  "mcpServers": {
    "mcp-yandex-webmaster": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-yandex-webmaster@1.1.1"
      ],
      "env": {
        "YANDEX_OAUTH_TOKEN": "<your YANDEX_OAUTH_TOKEN>"
      }
    }
  }
}

If the file already exists, add the server inside the mcpServers key. Open the settings file in Cline: MCP Servers tab, Configure MCP Servers.

Keys and settings

YANDEX_OAUTH_TOKENsecret, required
Yandex OAuth token with Webmaster access, sent as `Authorization: OAuth <token>`. Treat it as a secret.
YANDEX_USER_IDoptional
Token owner's user id; auto-detected via GET /v4/user when unset.
YANDEX_WEBMASTER_HOST_IDoptional
Default host_id (e.g. https:example.com:443) used when a tool call omits one.
YANDEX_WEBMASTER_API_BASEoptional
API root override.
YANDEX_WEBMASTER_TIMEOUT_MSoptional
Per-request timeout in milliseconds.
YANDEX_WEBMASTER_MAX_RETRIESoptional
Retries on transient errors (429 — except the daily QUOTA_EXCEEDED; 5xx/network for reads).

Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.

Add to the file .roo/mcp.json, in the project

{
  "mcpServers": {
    "mcp-yandex-webmaster": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-yandex-webmaster@1.1.1"
      ],
      "env": {
        "YANDEX_OAUTH_TOKEN": "<your YANDEX_OAUTH_TOKEN>"
      }
    }
  }
}

If the file already exists, add the server inside the mcpServers key.

Keys and settings

YANDEX_OAUTH_TOKENsecret, required
Yandex OAuth token with Webmaster access, sent as `Authorization: OAuth <token>`. Treat it as a secret.
YANDEX_USER_IDoptional
Token owner's user id; auto-detected via GET /v4/user when unset.
YANDEX_WEBMASTER_HOST_IDoptional
Default host_id (e.g. https:example.com:443) used when a tool call omits one.
YANDEX_WEBMASTER_API_BASEoptional
API root override.
YANDEX_WEBMASTER_TIMEOUT_MSoptional
Per-request timeout in milliseconds.
YANDEX_WEBMASTER_MAX_RETRIESoptional
Retries on transient errors (429 — except the daily QUOTA_EXCEEDED; 5xx/network for reads).

Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.

A fork of Roo Code, same .roo folders.

Add to the file opencode.json, in the project

{
  "mcp": {
    "mcp-yandex-webmaster": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "mcp-yandex-webmaster@1.1.1"
      ],
      "environment": {
        "YANDEX_OAUTH_TOKEN": "<your YANDEX_OAUTH_TOKEN>"
      }
    }
  }
}

If the file already exists, add the server inside the mcp key.

Keys and settings

YANDEX_OAUTH_TOKENsecret, required
Yandex OAuth token with Webmaster access, sent as `Authorization: OAuth <token>`. Treat it as a secret.
YANDEX_USER_IDoptional
Token owner's user id; auto-detected via GET /v4/user when unset.
YANDEX_WEBMASTER_HOST_IDoptional
Default host_id (e.g. https:example.com:443) used when a tool call omits one.
YANDEX_WEBMASTER_API_BASEoptional
API root override.
YANDEX_WEBMASTER_TIMEOUT_MSoptional
Per-request timeout in milliseconds.
YANDEX_WEBMASTER_MAX_RETRIESoptional
Retries on transient errors (429 — except the daily QUOTA_EXCEEDED; 5xx/network for reads).

Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.

Add to the file ~/.config/zed/settings.json, for all projects

{
  "context_servers": {
    "mcp-yandex-webmaster": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-yandex-webmaster@1.1.1"
      ],
      "env": {
        "YANDEX_OAUTH_TOKEN": "<your YANDEX_OAUTH_TOKEN>"
      }
    }
  }
}

If the file already exists, add the server inside the context_servers key.

Keys and settings

YANDEX_OAUTH_TOKENsecret, required
Yandex OAuth token with Webmaster access, sent as `Authorization: OAuth <token>`. Treat it as a secret.
YANDEX_USER_IDoptional
Token owner's user id; auto-detected via GET /v4/user when unset.
YANDEX_WEBMASTER_HOST_IDoptional
Default host_id (e.g. https:example.com:443) used when a tool call omits one.
YANDEX_WEBMASTER_API_BASEoptional
API root override.
YANDEX_WEBMASTER_TIMEOUT_MSoptional
Per-request timeout in milliseconds.
YANDEX_WEBMASTER_MAX_RETRIESoptional
Retries on transient errors (429 — except the daily QUOTA_EXCEEDED; 5xx/network for reads).

Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.

Add to the file .codeassistant/mcp.json, in the project

{
  "mcpServers": {
    "mcp-yandex-webmaster": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-yandex-webmaster@1.1.1"
      ],
      "env": {
        "YANDEX_OAUTH_TOKEN": "<your YANDEX_OAUTH_TOKEN>"
      }
    }
  }
}

If the file already exists, add the server inside the mcpServers key.

Keys and settings

YANDEX_OAUTH_TOKENsecret, required
Yandex OAuth token with Webmaster access, sent as `Authorization: OAuth <token>`. Treat it as a secret.
YANDEX_USER_IDoptional
Token owner's user id; auto-detected via GET /v4/user when unset.
YANDEX_WEBMASTER_HOST_IDoptional
Default host_id (e.g. https:example.com:443) used when a tool call omits one.
YANDEX_WEBMASTER_API_BASEoptional
API root override.
YANDEX_WEBMASTER_TIMEOUT_MSoptional
Per-request timeout in milliseconds.
YANDEX_WEBMASTER_MAX_RETRIESoptional
Retries on transient errors (429 — except the daily QUOTA_EXCEEDED; 5xx/network for reads).

Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.

You will need: Node.js

Checked against the repository on Sep 25, 2026, commit 727d1ca.

Text for your agent

Add the server with claude mcp add --transport stdio --scope user yandex-webmaster -- npx -y mcp-yandex-webmaster@latest, then ask the agent to connect Yandex Webmaster and follow the login link.

Other ways from the author
claude mcp add --transport stdio --scope user yandex-webmaster -- npx -y mcp-yandex-webmaster@latest

Command from the README, no token needed: login happens in chat after connecting.

This is third-party code. Review the repository files before installing.

What it does

The server provides 20 tools for the Yandex Webmaster API v4: a site list with ИКС quality scores, diagnostics by severity, search query impressions and clicks broken down by device, indexing history, crawl HTTP errors, sitemaps and external links. Almost every tool is read-only, with a few that can add a site or sitemap, start ownership verification, or queue a page for recrawl. The connection happens right in chat: the agent opens Yandex's login page, the user sends back a one-time code that gets exchanged for a token via PKCE inside the running server, with no config editing or pre-created token.

Who it is for. For SEO specialists and site owners who want quick conversational access to Yandex Webmaster data without manually configuring a token.

Good fit when

  • You want to connect without pre-creating an OAuth app and token
  • You need to review diagnostics, impressions, clicks and positions in natural language
  • You need to check a sitemap, queue a recrawl or add a new site

Not a fit when

  • You need Metrika, Wordstat or ad-account data: the server only covers Webmaster's organic search
  • You need continuous background monitoring: the server only responds to agent calls

Example request

What critical problems does the diagnostics show for my site right now?

Limitations

Diagnostics, queries and indexing require verified site ownership, without it only the site list and verification status are visible. Recrawl is limited by the site's daily quota. Top queries are capped at 3000 rows per week, 500 rows per request. By default the server sends anonymous technical telemetry (disable with ASKADS_TELEMETRY=0), the token and account data are never included.

How to disable. Tell the agent to disconnect Webmaster, or remove the server from your client config; access can also be revoked in Yandex ID.

MCP

Transport
stdio
Authentication
OAuth
Environment variables
Environment variables
YANDEX_OAUTH_TOKEN
secret
A ready OAuth token for CI, not needed in normal mode: takes priority over the in-chat login
YANDEX_WEBMASTER_HOST_ID
The default site, so it does not need to be specified in every request
YANDEX_WEBMASTER_OAUTH_CLIENT_ID
Your own OAuth app's ClientID instead of the default app

Security check

  • Can add sites and sitemaps, start ownership verification and recrawl, including deletion via the generic raw_request
  • The obtained OAuth token grants access to all sites in the Yandex account for a year without re-login

README in short

The Russian README describes connecting without a pre-created token via in-chat OAuth PKCE, npx-based installation for Codex, Claude Code, Claude Desktop, Cursor and VS Code, a table of which operations change data, environment variables for CI, a telemetry section, and links to detailed tool documentation.

FAQ

Does an OAuth token need to be created in advance?

No, for regular use no token is needed: the connection happens right in chat through a one-time PKCE code, which is safe to paste into the conversation.

What does HOST_NOT_VERIFIED mean?

It means site ownership is not verified in Webmaster, only the site list and verification status are available, everything else needs verification via DNS, an HTML file or a meta tag.

Official

Official DataLens (Yandex) skills for Claude Code, Codex and OpenCode: SDK, HTML reports and RLS resolution

SkillMedium risk12Repository stars
Editors’ pick

A Yandex Metrika MCP server generated from the API spec: 108 methods, 10 tools declared by default, transparent filters and response metadata

MCP serverMedium risk2Repository stars
Official

An open MCP server and agent skill set for SEO: keyword research, competitors, backlinks and site audits powered by DataForSEO

MCP serverMedium risk21.5KRepository stars

A Claude Code plugin for SEO audits: technical SEO, E-E-A-T, schema, local and AI search via parallel subagents

PluginHigh risk17.9KRepository stars
Foxx AIYandex Webmaster MCP

I am Foxx AI and I have already vetted this tool. Ask about install, setup or anything else, and I will keep it simple.