reliable yandex wordstat collector CLI

Yandex Wordstat Collector

cli collector for yandex wordstat frequencies with failure recovery: null results are never treated as complete data

  • 3 ★ on the repository
  • Last commit
  • MIT
CLI

Extended access

Why this level

  • each request consumes paid yandex search api quota billed to the service account
  • api key with search-api.webSearch.user rights is stored in an environment variable or file on disk
All reasons and checks
Russian stack

igorshkarin/yandex-wordstat-collector

Install

Works in

Manual install

npm test && node ./bin/wordstat.js --phrases "куда вложить деньги,робо эдвайзер" --regions 225,213 --out-dir docs/analysis/wordstat --max-requests 20

install from source; key is read from WORDSTAT_API_KEY, YANDEX_SEARCH_API_KEY, or a file in ~/.config/codex-tools/.

Access and checks

How we review

Extended accessThe tool runs code or makes network calls and only reads external data.

  • each request consumes paid yandex search api quota billed to the service account
  • api key with search-api.webSearch.user rights is stored in an environment variable or file on disk

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

What it does

this tool collects phrase frequencies using the topRequests method of the official yandex search api, retrying on 429 and 5xx errors with delay and jitter. collection state is stored in wordstat-state-v2.json in three buckets: completed, incomplete, error, plus quota tracking. the key idea: results with totalCount: null are never considered complete but marked for retry or discarded after several attempts. interrupted collection can be resumed with the --retry-incomplete command. includes a codex skill skills/wordstat that, on seo queries, builds a dictionary of 25 nouns, adjectives, and verbs, 25 example phrases, and 10 priority recommendations for headline and subheadline combinations.

Who it is for. for those who collect large keyword lists from wordstat and want to avoid quietly incomplete data.

Good fit when

  • need to collect frequencies for a large phrase list with the ability to resume after failure
  • important to distinguish honest zero from temporary api error (null result)
  • need a codex skill that collects frequencies and builds an seo dictionary on request

Not a fit when

  • need dynamics or seasonality data, not implemented yet, only on roadmap
  • no yandex cloud service account with search-api.webSearch.user role and active billing

Example request

collect wordstat frequencies for the phrases купить окна and установка окон под ключ in the moscow and saint petersburg regions

Limitations

requires a service account with the search-api.webSearch.user role on the folder and a key scoped yc.search-api.execute with active billing; a regular ai studio key is insufficient. regions and dynamics are not supported yet, no mcp wrapper or npm publication. wordstat accepts no more than 100 requests per hour.

How to disable. delete the cloned repository and, if you installed the codex skill, remove the ~/.codex/skills/wordstat folder.

FAQ

what to do if some phrases fail with errors?

run node ./bin/wordstat.js --retry-incomplete --out-dir docs/analysis/wordstat; the tool will pick up only incomplete and error phrase-region pairs from saved state.

why are null results not considered complete data?

the author explains: if frequency affects seo pages or product bids, a line with totalCount: null is not progress but risk, so such results go to a separate bucket for retry.

Discussion

No questions or reviews yet.

Russian stack

A Python-script skill for Yandex Wordstat statistics: top requests, monthly dynamics and regional distribution

SkillExtended access
Russian stack

A compact MCP server on the official SDK for five Yandex Wordstat operations: top requests, dynamics, regions, region tree, account info

MCP serverExtended access

Yandex Wordstat MCP with budget control

@cododel/yandex-wordstat-mcp

Russian stack

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

MCP serverExtended access
Russian stack

An MCP server for Yandex Wordstat via the official Yandex Cloud Search API: frequency, related queries, dynamics and regions

MCP serverExtended access2Repository stars
Russian stack

An MCP server for Yandex Wordstat via the Yandex Cloud Search API: frequency, dynamics, regions and an operator-aware phrase builder

MCP serverExtended access3Repository stars

README in short

the bilingual readme explains the tool’s philosophy (to get data and be sure it is complete), features: retry with backoff, resumable state, quota ledger, null-result policy, atomic writes. it shows quick start, yandex cloud service account setup with exact roles and scopes, cli reliability flags, state and summary format, and the built-in codex skill with subagent orchestration.

README badge

Report a problem