Go Wordstat MCP with its own OAuth

yandex-wordstat-mcp

A Go MCP server for Yandex Wordstat with three tools and a built-in OAuth server protecting remote access

  • 0 ★ on the repository
  • Last commit
MCP server

Extended access

Why this level

  • Starts a Go HTTP server that reads Wordstat statistics with a Yandex Search API key
  • The /mcp endpoint sits behind its own OAuth layer and changes nothing in external systems
All reasons and checks
Russian stack

bogachenko/yandex-wordstat-mcp

A similar tool with a larger community: Yandex Wordstat MCP, 9 ★ on the repository

Install

Manual install

go build -o yandex-wordstat-mcp ./cmd/yandex-wordstat-mcp

Build from source, set YANDEX_API_KEY and YANDEX_FOLDER_ID before running.

Access and checks

How we review

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

  • Starts a Go HTTP server that reads Wordstat statistics with a Yandex Search API key
  • The /mcp endpoint sits behind its own OAuth layer and changes nothing in external systems

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

What it does

The server provides three tools: top requests with options for exact word form and fixed phrase order, frequency dynamics by day, week or month over a period, and the full Wordstat region tree. It is written in Go on the official modelcontextprotocol/go-sdk, exposing a Streamable HTTP MCP on /mcp and a health check on /healthz. The server has its own built-in OAuth 2.0 layer with authorization code, PKCE and dynamic client registration, protecting the /mcp endpoint separately from the Yandex key. The Yandex key and folder id are set via environment variables and required at startup.

Who it is for. For people who want a self-hosted Go Wordstat server with access protected by a separate OAuth layer

Good fit when

  • You want a compact Go binary without a Node or Python runtime
  • You need a remote HTTP MCP server protected by its own OAuth authorization
  • The basics are enough: top requests, dynamics, region tree

Not a fit when

  • You need a regional distribution as a separate tool: it is not here
  • You need ready install documentation: the repository has no README

Example request

Show the monthly dynamics for the query "apartment renovation" over the last year

MCP

Transport
http
Authentication
OAuth

Environment variables

YANDEX_API_KEY required, secret
Yandex Search API key for Wordstat
YANDEX_FOLDER_ID required
Yandex Cloud folder id

Limitations

The repository has no README and no stars, with a single author. It can only be installed by building from Go source, no ready binary release is documented. The OAuth layer adds setup complexity for those who just want a simple local run.

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

FAQ

Is there a regional impressions tool?

No, only the wordstat_regions_tree region tree; there is no separate regional distribution tool in the code.

Why does it have built-in OAuth?

It protects the /mcp HTTP endpoint with separate client authorization instead of relying only on the Yandex key in environment variables.

Discussion

No questions or reviews yet.

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
Russian stack

A read-only MCP server for Yandex Wordstat statistics: top phrases, dynamics, regions, with OAuth sign-in for ChatGPT

MCP serverExtended access

Yandex Wordstat MCP Server by khanton

Yandex Wordstat MCP Server

Russian stack

A compact TypeScript MCP server for Yandex Wordstat via the Yandex Search API: top queries, dynamics and regions

MCP serverExtended access1Repository stars

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

README in short

There is no README. This description is based on the code: go.mod references the official modelcontextprotocol/go-sdk, main.go registers three tools (top, dynamics, region tree) and starts an HTTP server with an OAuth-protected handler on /mcp and a health check on /healthz, while oauth.go implements authorization code with PKCE and in-memory client and token storage.

README badge

Report a problem