
Yandex Wordstat MCP
io.github.stufentlyPublished by GitHub account stufentlyv2.2.1Updated Oct 24, 2026
MCP server for Yandex Wordstat API — keyword research for Russian/CIS markets
Overview
Local MCP server for Yandex Wordstat keyword research, letting an assistant explore search demand, trends and regional interest for Russian and CIS markets.
- What you can do
- Look up popular search queries containing a keyword, with associated queries and volumes for the last 30 days, filterable by region and device type. Analyze search volume trends over daily, weekly or monthly windows, with dates snapped to valid periods and adjustments reported. Get the regional distribution of interest for a keyword, including counts, shares and affinity index. Browse the Wordstat regions hierarchy and list the children of a region from a cached tree.
- When to use it
- Useful when doing SEO or keyword research for Russian and CIS markets, comparing search demand across regions or devices, or tracking how interest in a term changes over time.
- Requirements
- Runs locally as a Node.js process started from source (the README says nothing is published on the scope yet). Needs a Yandex Cloud account with a linked billing account, a service account with the search-api.webSearch.user role, and two settings: WORDSTAT_API_KEY (API key) and WORDSTAT_FOLDER_ID (folder ID). Credentials can also be placed in a config file under the user's home directory. Network access to the Yandex Cloud Search API is required.
Installation
In SourceWeft
- Open Yandex Wordstat MCP in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
yandex-wordstat-mcp
MCP server for Yandex Wordstat via Yandex Cloud Search API v2. Research keywords, analyze search volume trends, and explore regional search distribution for Russian and CIS markets.
v2.0: the legacy
api.wordstat.yandex.netAPI was shut down by Yandex in 2026. The server now talks tosearchapi.api.cloud.yandex.net/v2/wordstat/*and authenticates with a Yandex Cloud API key instead of an OAuth token. Tool names and parameters are unchanged.
Installation
This package is published as @stufently/yandex-wordstat-mcp; the unscoped name yandex-wordstat-mcp
belongs to an unrelated publisher (see the note in the root README).
Nothing is on the scope yet, so run it from source:
Configuration
Add to your MCP client config:
Alternatively, put the credentials into ~/.config/yandex-cloud/wordstat.env (used as a fallback when the env vars are not set):
Environment Variables
Authentication (how to get the key)
- Sign in to the Yandex Cloud console and pick (or create) a folder — its ID is visible in the URL:
console.yandex.cloud/folders/<folderId>/.... A billing account must be linked to the cloud. - Create a service account in that folder with the
search-api.webSearch.userrole. - Open the service account → Create new key → API key, scope
yc.search-api.execute. - Copy the secret (shown once) into
WORDSTAT_API_KEY; the key identifier (ajel...) is only needed to rotate or revoke the key later.
Rate Limiting
The server enforces a client-side rate limit of 10 requests per second using a sliding window. Requests exceeding the limit are automatically queued. Additionally, 429 and 5xx responses trigger automatic retry with exponential backoff.
Tool Reference
get-regions-tree
Get the Yandex Wordstat regions hierarchy tree.
Returns a tree of regions with value (region ID), label (name), and children.
get-region-children
Get children of a specific region from the cached tree. Does not make an API call -- works from the cached region tree.
top-requests
Find popular search queries containing a keyword (last 30 days), plus associated queries.
Returns { topRequests: [{ phrase, count }], associations: [{ phrase, count }], totalCount } sorted by search volume.
dynamics
Analyze search volume trends over time for a keyword.
The API enforces window rules that are documented nowhere and are returned as raw gRPC errors when broken (verified against the live API on 2026-07-29):
Dates you pass are snapped to the nearest valid window instead of being rejected; every
shift is listed in adjustments in both the text summary and structuredContent.
A range that falls inside a single week or month expands to that whole period. A range
that covers only the current, unfinished week or month cannot be served at all — the API
rejects it — so the tool says so and names the latest available toDate instead of
forwarding a 400.
Default date ranges by period:
daily: last 58 days (kept one day inside the limit so a request never expires on a UTC date rollover)weekly: last 52 full weeks, Monday to Sundaymonthly: last 12 full months, 1st to end of month
All date math is done in UTC.
Returns an array of { date, count, share } data points.
regions
Get regional distribution of search interest for a keyword.
Returns an array of { regionId, regionName, count, share, affinityIndex } sorted by count. Region names are enriched from the cached region tree.
Caching
The region tree is fetched once on the first call to get-regions-tree, get-region-children, or regions, and cached for the entire server session. A flat lookup map is built for O(1) region name resolution.
License
MIT
Source: packages/yandex-wordstat-mcp/README.md at commit bdd6c64
Tools
0Version history
2- v2.2.1LatestOct 16, 2026
- v2.2.0Oct 15, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts