Yandex Wordstat MCP with budget control

@cododel/yandex-wordstat-mcp

A Bun-based MCP server for the official Yandex Wordstat API v2, with per-call cost tracking and spending limits in rubles

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

  • Some calls are paid and charge the Yandex Search API account
  • HTTP mode with --allow-server-credentials spends the server's key on behalf of any client unless restricted by MCP_ACCESS_TOKEN
All reasons and checks
Russian stack

cododel/yandex-wordstat-mcp

Install

Manual install

bun install --frozen-lockfile && bun test && bun run typecheck

Install from source, the INSTALL.md command to verify the build before connecting it.

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

What it does

The server provides five Wordstat tools: a region tree, cached child regions, top requests, dynamics and a regional distribution, where the first two are free and the other three are billed per the Yandex Search API price list. Every paid call is protected against double billing on an error or unknown outcome. The server supports stdio for a local client and Streamable HTTP for a remote deployment with BYOK: an external client sends its own key and folder id as headers rather than through server environment variables. In HTTP mode you can enable your own hourly and daily ruble spending budget backed by a SQLite counter. The repository also includes a separate skills/yandex-wordstat/SKILL.md that teaches an agent to use these tools correctly, but it does not install the server itself.

Who it is for. For people who need spending control on paid Wordstat calls when several clients access the server remotely

Good fit when

  • You need a Wordstat MCP server with explicit cost accounting per paid call
  • You need a remote server where each client pays with its own Yandex key
  • You need to cap Wordstat spending with an hourly or daily ruble limit

Not a fit when

  • You just need a simple local server without budget control: a simpler implementation may fit better
  • You have no Yandex Search API key or folder id

Example request

Get the dynamics for the query "english courses" over the last year for Moscow and tell me what it will cost

Limitations

The project has no stars, a single author, and the README explicitly frames it as building on a third-party yandex-wordstat-mcp package with an added architecture and BYOK. At the time of review the package was not published to npm; INSTALL.md describes installing from source with Bun. HTTP mode must be put behind HTTPS yourself, there is no built-in TLS.

How to disable. Stop the server process or container and remove it from your MCP client config.

MCP

Transport
stdio, http
Authentication
API key
Environment variables
Environment variables
YANDEX_WORDSTAT_API_KEY
required, secret
Yandex Search API key, can also be set as YANDEX_SEARCH_API_KEY
YANDEX_WORDSTAT_FOLDER_ID
required
Yandex Cloud folder id, can also be set as YANDEX_CLOUD_FOLDER_ID
MCP_ACCESS_TOKEN
secret
Access token for the MCP service itself in remote HTTP mode
WORDSTAT_MAX_COST_RUB_PER_HOUR
Hourly spending cap for paid calls in rubles
WORDSTAT_MAX_COST_RUB_PER_DAY
Daily spending cap for paid calls in rubles

Security check

  • Some calls are paid and charge the Yandex Search API account
  • HTTP mode with --allow-server-credentials spends the server's key on behalf of any client unless restricted by MCP_ACCESS_TOKEN

README in short

The README and INSTALL.md describe the server as building on the yandex-wordstat-mcp package with a shared typed architecture, local stdio and remote Streamable HTTP, a BYOK header policy instead of server environment variables, Docker packaging and call cost metadata. It separately stresses that paid operations must not be automatically retried after an error or unknown outcome.

FAQ

Are all tools paid?

No, the region tree and child regions are free, while top-requests, dynamics and regions are billed per the Yandex Search API price, roughly 0.02 to 0.05 rubles per call.

How do I cap spending?

Set WORDSTAT_MAX_COST_RUB_PER_HOUR and WORDSTAT_MAX_COST_RUB_PER_DAY together to enable the SQLite-backed budget guard.

Official

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

SkillMedium riskRussian stackNo VPN needed12Repository 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 riskRussian stackNo VPN needed2Repository 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 Wordstat MCP with budget control

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