Yandex Search API v2 MCP server
yandex-search-mcp
A self-hosted MCP for Yandex Search API v2: web, image and generative search across all six Yandex indexes
Low risk
We rate an entry low when it mostly gives the agent instructions and reference material.
Why this level
- All three tools only read public search results via the official API
Install
In your terminal, with SkillFoxx CLI
npx skillfoxx add mcp/oleg-cat-yandex-search-mcpDetects the agents on your machine, checks the risk and pins the version.
Other ways to install
Assembled automatically, review before installing.
Run in a terminal
claude mcp add --transport stdio --env 'YANDEX_SEARCH_API_KEY=<your YANDEX_SEARCH_API_KEY>' --env 'YANDEX_FOLDER_ID=<your YANDEX_FOLDER_ID>' --env YANDEX_MCP_DEFAULT_SEARCH_TYPE=ru --env YANDEX_MCP_TIMEOUT_WEB=15 --env YANDEX_MCP_TIMEOUT_GEN=120 --env YANDEX_MCP_LOG_LEVEL=INFO --env YANDEX_MCP_TRANSPORT=stdio --env YANDEX_MCP_HOST=127.0.0.1 --env YANDEX_MCP_PORT=8000 yandex-search-mcp -- uvx yandex-search-mcpOr add to the file .mcp.json, in the project
{
"mcpServers": {
"yandex-search-mcp": {
"command": "uvx",
"args": [
"yandex-search-mcp"
],
"env": {
"YANDEX_SEARCH_API_KEY": "<your YANDEX_SEARCH_API_KEY>",
"YANDEX_FOLDER_ID": "<your YANDEX_FOLDER_ID>",
"YANDEX_MCP_DEFAULT_SEARCH_TYPE": "ru",
"YANDEX_MCP_TIMEOUT_WEB": "15",
"YANDEX_MCP_TIMEOUT_GEN": "120",
"YANDEX_MCP_LOG_LEVEL": "INFO",
"YANDEX_MCP_TRANSPORT": "stdio",
"YANDEX_MCP_HOST": "127.0.0.1",
"YANDEX_MCP_PORT": "8000"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
YANDEX_SEARCH_API_KEYsecret, required- Api-Key (scope yc.search-api.execute)
YANDEX_FOLDER_IDsecret, required- Folder ID (role search-api.editor)
YANDEX_SEARCH_API_KEY_FILEsecret, optional- Alternative: path to a file with the key (Docker/K8s secrets)
YANDEX_MCP_ENABLED_TOOLSoptional- Tool whitelist, space- or comma-separated, e.g. "yandex_web_search"
YANDEX_MCP_DISABLED_TOOLSoptional- Tool blacklist, applied after the whitelist, e.g. "yandex_gen_search"
YANDEX_MCP_DEFAULT_REGIONoptional- Default geo-id (225 = Russia, 213 = Moscow)
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
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": {
"yandex-search-mcp": {
"command": "uvx",
"args": [
"yandex-search-mcp"
],
"env": {
"YANDEX_SEARCH_API_KEY": "<your YANDEX_SEARCH_API_KEY>",
"YANDEX_FOLDER_ID": "<your YANDEX_FOLDER_ID>",
"YANDEX_MCP_DEFAULT_SEARCH_TYPE": "ru",
"YANDEX_MCP_TIMEOUT_WEB": "15",
"YANDEX_MCP_TIMEOUT_GEN": "120",
"YANDEX_MCP_LOG_LEVEL": "INFO",
"YANDEX_MCP_TRANSPORT": "stdio",
"YANDEX_MCP_HOST": "127.0.0.1",
"YANDEX_MCP_PORT": "8000"
}
}
}
}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_SEARCH_API_KEYsecret, required- Api-Key (scope yc.search-api.execute)
YANDEX_FOLDER_IDsecret, required- Folder ID (role search-api.editor)
YANDEX_SEARCH_API_KEY_FILEsecret, optional- Alternative: path to a file with the key (Docker/K8s secrets)
YANDEX_MCP_ENABLED_TOOLSoptional- Tool whitelist, space- or comma-separated, e.g. "yandex_web_search"
YANDEX_MCP_DISABLED_TOOLSoptional- Tool blacklist, applied after the whitelist, e.g. "yandex_gen_search"
YANDEX_MCP_DEFAULT_REGIONoptional- Default geo-id (225 = Russia, 213 = Moscow)
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
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":"yandex-search-mcp","type":"stdio","command":"uvx","args":["yandex-search-mcp"],"env":{"YANDEX_SEARCH_API_KEY":"<your YANDEX_SEARCH_API_KEY>","YANDEX_FOLDER_ID":"<your YANDEX_FOLDER_ID>","YANDEX_MCP_DEFAULT_SEARCH_TYPE":"ru","YANDEX_MCP_TIMEOUT_WEB":"15","YANDEX_MCP_TIMEOUT_GEN":"120","YANDEX_MCP_LOG_LEVEL":"INFO","YANDEX_MCP_TRANSPORT":"stdio","YANDEX_MCP_HOST":"127.0.0.1","YANDEX_MCP_PORT":"8000"}}'Or add to the file .vscode/mcp.json, in the project
{
"servers": {
"yandex-search-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"yandex-search-mcp"
],
"env": {
"YANDEX_SEARCH_API_KEY": "<your YANDEX_SEARCH_API_KEY>",
"YANDEX_FOLDER_ID": "<your YANDEX_FOLDER_ID>",
"YANDEX_MCP_DEFAULT_SEARCH_TYPE": "ru",
"YANDEX_MCP_TIMEOUT_WEB": "15",
"YANDEX_MCP_TIMEOUT_GEN": "120",
"YANDEX_MCP_LOG_LEVEL": "INFO",
"YANDEX_MCP_TRANSPORT": "stdio",
"YANDEX_MCP_HOST": "127.0.0.1",
"YANDEX_MCP_PORT": "8000"
}
}
}
}If the file already exists, add the server inside the servers key.
Keys and settings
YANDEX_SEARCH_API_KEYsecret, required- Api-Key (scope yc.search-api.execute)
YANDEX_FOLDER_IDsecret, required- Folder ID (role search-api.editor)
YANDEX_SEARCH_API_KEY_FILEsecret, optional- Alternative: path to a file with the key (Docker/K8s secrets)
YANDEX_MCP_ENABLED_TOOLSoptional- Tool whitelist, space- or comma-separated, e.g. "yandex_web_search"
YANDEX_MCP_DISABLED_TOOLSoptional- Tool blacklist, applied after the whitelist, e.g. "yandex_gen_search"
YANDEX_MCP_DEFAULT_REGIONoptional- Default geo-id (225 = Russia, 213 = Moscow)
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 yandex-search-mcp --env 'YANDEX_SEARCH_API_KEY=<your YANDEX_SEARCH_API_KEY>' --env 'YANDEX_FOLDER_ID=<your YANDEX_FOLDER_ID>' --env YANDEX_MCP_DEFAULT_SEARCH_TYPE=ru --env YANDEX_MCP_TIMEOUT_WEB=15 --env YANDEX_MCP_TIMEOUT_GEN=120 --env YANDEX_MCP_LOG_LEVEL=INFO --env YANDEX_MCP_TRANSPORT=stdio --env YANDEX_MCP_HOST=127.0.0.1 --env YANDEX_MCP_PORT=8000 -- uvx yandex-search-mcpOr add to the file ~/.codex/config.toml, for all projects
[mcp_servers.yandex-search-mcp]
command = "uvx"
args = ["yandex-search-mcp"]
env = { YANDEX_SEARCH_API_KEY = "<your YANDEX_SEARCH_API_KEY>", YANDEX_FOLDER_ID = "<your YANDEX_FOLDER_ID>", YANDEX_MCP_DEFAULT_SEARCH_TYPE = "ru", YANDEX_MCP_TIMEOUT_WEB = "15", YANDEX_MCP_TIMEOUT_GEN = "120", YANDEX_MCP_LOG_LEVEL = "INFO", YANDEX_MCP_TRANSPORT = "stdio", YANDEX_MCP_HOST = "127.0.0.1", YANDEX_MCP_PORT = "8000" }If the file already exists, append the block to the end.
Keys and settings
YANDEX_SEARCH_API_KEYsecret, required- Api-Key (scope yc.search-api.execute)
YANDEX_FOLDER_IDsecret, required- Folder ID (role search-api.editor)
YANDEX_SEARCH_API_KEY_FILEsecret, optional- Alternative: path to a file with the key (Docker/K8s secrets)
YANDEX_MCP_ENABLED_TOOLSoptional- Tool whitelist, space- or comma-separated, e.g. "yandex_web_search"
YANDEX_MCP_DISABLED_TOOLSoptional- Tool blacklist, applied after the whitelist, e.g. "yandex_gen_search"
YANDEX_MCP_DEFAULT_REGIONoptional- Default geo-id (225 = Russia, 213 = Moscow)
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
gemini mcp add -s user -e 'YANDEX_SEARCH_API_KEY=<your YANDEX_SEARCH_API_KEY>' -e 'YANDEX_FOLDER_ID=<your YANDEX_FOLDER_ID>' -e YANDEX_MCP_DEFAULT_SEARCH_TYPE=ru -e YANDEX_MCP_TIMEOUT_WEB=15 -e YANDEX_MCP_TIMEOUT_GEN=120 -e YANDEX_MCP_LOG_LEVEL=INFO -e YANDEX_MCP_TRANSPORT=stdio -e YANDEX_MCP_HOST=127.0.0.1 -e YANDEX_MCP_PORT=8000 yandex-search-mcp uvx yandex-search-mcpOr add to the file ~/.gemini/settings.json, for all projects
{
"mcpServers": {
"yandex-search-mcp": {
"command": "uvx",
"args": [
"yandex-search-mcp"
],
"env": {
"YANDEX_SEARCH_API_KEY": "<your YANDEX_SEARCH_API_KEY>",
"YANDEX_FOLDER_ID": "<your YANDEX_FOLDER_ID>",
"YANDEX_MCP_DEFAULT_SEARCH_TYPE": "ru",
"YANDEX_MCP_TIMEOUT_WEB": "15",
"YANDEX_MCP_TIMEOUT_GEN": "120",
"YANDEX_MCP_LOG_LEVEL": "INFO",
"YANDEX_MCP_TRANSPORT": "stdio",
"YANDEX_MCP_HOST": "127.0.0.1",
"YANDEX_MCP_PORT": "8000"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
YANDEX_SEARCH_API_KEYsecret, required- Api-Key (scope yc.search-api.execute)
YANDEX_FOLDER_IDsecret, required- Folder ID (role search-api.editor)
YANDEX_SEARCH_API_KEY_FILEsecret, optional- Alternative: path to a file with the key (Docker/K8s secrets)
YANDEX_MCP_ENABLED_TOOLSoptional- Tool whitelist, space- or comma-separated, e.g. "yandex_web_search"
YANDEX_MCP_DISABLED_TOOLSoptional- Tool blacklist, applied after the whitelist, e.g. "yandex_gen_search"
YANDEX_MCP_DEFAULT_REGIONoptional- Default geo-id (225 = Russia, 213 = Moscow)
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": {
"yandex-search-mcp": {
"command": "uvx",
"args": [
"yandex-search-mcp"
],
"env": {
"YANDEX_SEARCH_API_KEY": "<your YANDEX_SEARCH_API_KEY>",
"YANDEX_FOLDER_ID": "<your YANDEX_FOLDER_ID>",
"YANDEX_MCP_DEFAULT_SEARCH_TYPE": "ru",
"YANDEX_MCP_TIMEOUT_WEB": "15",
"YANDEX_MCP_TIMEOUT_GEN": "120",
"YANDEX_MCP_LOG_LEVEL": "INFO",
"YANDEX_MCP_TRANSPORT": "stdio",
"YANDEX_MCP_HOST": "127.0.0.1",
"YANDEX_MCP_PORT": "8000"
}
}
}
}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_SEARCH_API_KEYsecret, required- Api-Key (scope yc.search-api.execute)
YANDEX_FOLDER_IDsecret, required- Folder ID (role search-api.editor)
YANDEX_SEARCH_API_KEY_FILEsecret, optional- Alternative: path to a file with the key (Docker/K8s secrets)
YANDEX_MCP_ENABLED_TOOLSoptional- Tool whitelist, space- or comma-separated, e.g. "yandex_web_search"
YANDEX_MCP_DISABLED_TOOLSoptional- Tool blacklist, applied after the whitelist, e.g. "yandex_gen_search"
YANDEX_MCP_DEFAULT_REGIONoptional- Default geo-id (225 = Russia, 213 = Moscow)
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": {
"yandex-search-mcp": {
"command": "uvx",
"args": [
"yandex-search-mcp"
],
"env": {
"YANDEX_SEARCH_API_KEY": "<your YANDEX_SEARCH_API_KEY>",
"YANDEX_FOLDER_ID": "<your YANDEX_FOLDER_ID>",
"YANDEX_MCP_DEFAULT_SEARCH_TYPE": "ru",
"YANDEX_MCP_TIMEOUT_WEB": "15",
"YANDEX_MCP_TIMEOUT_GEN": "120",
"YANDEX_MCP_LOG_LEVEL": "INFO",
"YANDEX_MCP_TRANSPORT": "stdio",
"YANDEX_MCP_HOST": "127.0.0.1",
"YANDEX_MCP_PORT": "8000"
}
}
}
}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_SEARCH_API_KEYsecret, required- Api-Key (scope yc.search-api.execute)
YANDEX_FOLDER_IDsecret, required- Folder ID (role search-api.editor)
YANDEX_SEARCH_API_KEY_FILEsecret, optional- Alternative: path to a file with the key (Docker/K8s secrets)
YANDEX_MCP_ENABLED_TOOLSoptional- Tool whitelist, space- or comma-separated, e.g. "yandex_web_search"
YANDEX_MCP_DISABLED_TOOLSoptional- Tool blacklist, applied after the whitelist, e.g. "yandex_gen_search"
YANDEX_MCP_DEFAULT_REGIONoptional- Default geo-id (225 = Russia, 213 = Moscow)
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": {
"yandex-search-mcp": {
"command": "uvx",
"args": [
"yandex-search-mcp"
],
"env": {
"YANDEX_SEARCH_API_KEY": "<your YANDEX_SEARCH_API_KEY>",
"YANDEX_FOLDER_ID": "<your YANDEX_FOLDER_ID>",
"YANDEX_MCP_DEFAULT_SEARCH_TYPE": "ru",
"YANDEX_MCP_TIMEOUT_WEB": "15",
"YANDEX_MCP_TIMEOUT_GEN": "120",
"YANDEX_MCP_LOG_LEVEL": "INFO",
"YANDEX_MCP_TRANSPORT": "stdio",
"YANDEX_MCP_HOST": "127.0.0.1",
"YANDEX_MCP_PORT": "8000"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
YANDEX_SEARCH_API_KEYsecret, required- Api-Key (scope yc.search-api.execute)
YANDEX_FOLDER_IDsecret, required- Folder ID (role search-api.editor)
YANDEX_SEARCH_API_KEY_FILEsecret, optional- Alternative: path to a file with the key (Docker/K8s secrets)
YANDEX_MCP_ENABLED_TOOLSoptional- Tool whitelist, space- or comma-separated, e.g. "yandex_web_search"
YANDEX_MCP_DISABLED_TOOLSoptional- Tool blacklist, applied after the whitelist, e.g. "yandex_gen_search"
YANDEX_MCP_DEFAULT_REGIONoptional- Default geo-id (225 = Russia, 213 = Moscow)
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": {
"yandex-search-mcp": {
"type": "local",
"command": [
"uvx",
"yandex-search-mcp"
],
"environment": {
"YANDEX_SEARCH_API_KEY": "<your YANDEX_SEARCH_API_KEY>",
"YANDEX_FOLDER_ID": "<your YANDEX_FOLDER_ID>",
"YANDEX_MCP_DEFAULT_SEARCH_TYPE": "ru",
"YANDEX_MCP_TIMEOUT_WEB": "15",
"YANDEX_MCP_TIMEOUT_GEN": "120",
"YANDEX_MCP_LOG_LEVEL": "INFO",
"YANDEX_MCP_TRANSPORT": "stdio",
"YANDEX_MCP_HOST": "127.0.0.1",
"YANDEX_MCP_PORT": "8000"
}
}
}
}If the file already exists, add the server inside the mcp key.
Keys and settings
YANDEX_SEARCH_API_KEYsecret, required- Api-Key (scope yc.search-api.execute)
YANDEX_FOLDER_IDsecret, required- Folder ID (role search-api.editor)
YANDEX_SEARCH_API_KEY_FILEsecret, optional- Alternative: path to a file with the key (Docker/K8s secrets)
YANDEX_MCP_ENABLED_TOOLSoptional- Tool whitelist, space- or comma-separated, e.g. "yandex_web_search"
YANDEX_MCP_DISABLED_TOOLSoptional- Tool blacklist, applied after the whitelist, e.g. "yandex_gen_search"
YANDEX_MCP_DEFAULT_REGIONoptional- Default geo-id (225 = Russia, 213 = Moscow)
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": {
"yandex-search-mcp": {
"command": "uvx",
"args": [
"yandex-search-mcp"
],
"env": {
"YANDEX_SEARCH_API_KEY": "<your YANDEX_SEARCH_API_KEY>",
"YANDEX_FOLDER_ID": "<your YANDEX_FOLDER_ID>",
"YANDEX_MCP_DEFAULT_SEARCH_TYPE": "ru",
"YANDEX_MCP_TIMEOUT_WEB": "15",
"YANDEX_MCP_TIMEOUT_GEN": "120",
"YANDEX_MCP_LOG_LEVEL": "INFO",
"YANDEX_MCP_TRANSPORT": "stdio",
"YANDEX_MCP_HOST": "127.0.0.1",
"YANDEX_MCP_PORT": "8000"
}
}
}
}If the file already exists, add the server inside the context_servers key.
Keys and settings
YANDEX_SEARCH_API_KEYsecret, required- Api-Key (scope yc.search-api.execute)
YANDEX_FOLDER_IDsecret, required- Folder ID (role search-api.editor)
YANDEX_SEARCH_API_KEY_FILEsecret, optional- Alternative: path to a file with the key (Docker/K8s secrets)
YANDEX_MCP_ENABLED_TOOLSoptional- Tool whitelist, space- or comma-separated, e.g. "yandex_web_search"
YANDEX_MCP_DISABLED_TOOLSoptional- Tool blacklist, applied after the whitelist, e.g. "yandex_gen_search"
YANDEX_MCP_DEFAULT_REGIONoptional- Default geo-id (225 = Russia, 213 = Moscow)
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": {
"yandex-search-mcp": {
"command": "uvx",
"args": [
"yandex-search-mcp"
],
"env": {
"YANDEX_SEARCH_API_KEY": "<your YANDEX_SEARCH_API_KEY>",
"YANDEX_FOLDER_ID": "<your YANDEX_FOLDER_ID>",
"YANDEX_MCP_DEFAULT_SEARCH_TYPE": "ru",
"YANDEX_MCP_TIMEOUT_WEB": "15",
"YANDEX_MCP_TIMEOUT_GEN": "120",
"YANDEX_MCP_LOG_LEVEL": "INFO",
"YANDEX_MCP_TRANSPORT": "stdio",
"YANDEX_MCP_HOST": "127.0.0.1",
"YANDEX_MCP_PORT": "8000"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
YANDEX_SEARCH_API_KEYsecret, required- Api-Key (scope yc.search-api.execute)
YANDEX_FOLDER_IDsecret, required- Folder ID (role search-api.editor)
YANDEX_SEARCH_API_KEY_FILEsecret, optional- Alternative: path to a file with the key (Docker/K8s secrets)
YANDEX_MCP_ENABLED_TOOLSoptional- Tool whitelist, space- or comma-separated, e.g. "yandex_web_search"
YANDEX_MCP_DISABLED_TOOLSoptional- Tool blacklist, applied after the whitelist, e.g. "yandex_gen_search"
YANDEX_MCP_DEFAULT_REGIONoptional- Default geo-id (225 = Russia, 213 = Moscow)
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Clone oleg-cat/yandex-search-mcp, install dependencies via venv and pip install -e ., get an API key and Folder ID in Yandex Cloud, then connect with claude mcp add yandex-search -e YANDEX_SEARCH_API_KEY=key -e YANDEX_FOLDER_ID=folder -- /absolute/path/.venv/bin/python -m yandex_search_mcp.
Other ways from the author
claude mcp add yandex-search -e YANDEX_SEARCH_API_KEY=<key> -e YANDEX_FOLDER_ID=<folder> -- /abs/path/to/yandex-search-mcp/.venv/bin/python -m yandex_search_mcpCommand from the README, uses the absolute path to the venv python.
This is third-party code. Review the repository files before installing.
What it does
A Python server provides three typed tools: yandex_web_search for classic web search with site, host, date operators and minus words, yandex_image_search with format, size, orientation and color filters, and yandex_gen_search for one AI-synthesized answer with cited sources. All six Yandex indexes are supported: ru, com, tr, kk, be, uz. The author wrote the server from scratch to replace the official yandex/yandex-search-mcp-server, calling it a Turkish-market demo with fragile XML parsing and a json.loads hack on generative search. Here XML is parsed with defusedxml against live API fixtures, there are retries with exponential backoff on 429 and 5xx, a unified error contract, and tests confirm the API key never leaks into logs.
Who it is for. For developers who want reliable, typed access to Yandex search, including an AI answer with sources, from Claude Code, Codex or opencode.
Good fit when
- You need the official Yandex Search API v2, not SERP scraping
- You need generative search with explicit source citations, not just a document list
- You work with Russian-language search and need all six Yandex indexes
Not a fit when
- You lack a Yandex Cloud service account: without the API key and Folder ID the server will not start
- You need instant generative search answers: the quota is 1 request per second, and responses take tens of seconds
Example request
Find recent news about the taxi law over the last two weeks and give a short answer with source citationsLimitations
The package is not published to PyPI; install by cloning and pip install -e. Default quotas are 10 RPS and 10,000 per hour for web and image search, 1 RPS and 1,000 per hour for generative search; the server does not work around them, it only retries on 429 and 5xx. A Yandex Cloud service-account key with yc.search-api.execute scope and the search-api.editor role is required.
How to disable. Remove the server with claude mcp remove yandex-search or codex mcp remove yandex-search, or delete the entry from your config.
MCP
- Transport
- stdio
- Authentication
- API key
| Environment variables | |
|---|---|
| YANDEX_SEARCH_API_KEY required, secret | Yandex Cloud service-account Api-Key with yc.search-api.execute scope |
| YANDEX_FOLDER_ID required | Yandex Cloud folder ID with the search-api.editor role |
| YANDEX_MCP_ENABLED_TOOLS | Space-separated allowlist of enabled tools, defaults to all |
Security check
- All three tools only read public search results via the official API
README in short
The README explains in detail the differences from the official Yandex server, covers getting an API key and Folder ID in Yandex Cloud, venv install, configs for Claude Code, Codex CLI, opencode and Docker, full parameter tables for all three tools, a quota table, and a troubleshooting section for common auth and limit errors.
FAQ
How is this better than the official Yandex server?
The author points to the official server's tr/en-only regions, fragile regex-based XML parsing, and a nonexistent dependency pin; this one is tested against live fixtures and supports all 6 indexes.
Why is generative search so slow?
The quota is 1 request per second, and the answer itself takes tens of seconds to generate; the default timeout is 120 seconds.
Related
CLI, skill and Python library for browser control: the agent clicks, fills forms and reads pages over CDP
A skill that gathers the last 30 days of discussion on a topic from Reddit, X, YouTube, HN, Polymarket and GitHub into one brief
The Chrome DevTools team's official MCP server: the agent drives a live Chrome, reads network and console, and records performance traces
A fast Rust CLI for agent browser automation: accessibility snapshots with element refs, an MCP server and skills