Skip to main content
Glama
webkoth
by webkoth

yandex-mcp

一个 MCP 服务器,将 Yandex WebmasterYandex DirectYandex Metrika API 作为工具开放给 AI 助手(Claude Desktop、Claude Code、Cursor 等)。

它可以让 AI 助手直接用自然语言操作你的 Yandex SEO、广告和分析数据——检查搜索查询、管理索引和站点地图、申请重新抓取、运行诊断、在写入保护下管理 Direct 广告系列,以及提取流量 / 转化 / 广告统计——而你无需登录 Yandex Web 界面。

  • 125 个工具:Webmaster 52 个,Direct 46 个,Metrika 25 个,项目管理 2 个。

  • 6 个 MCP 提示(prompts)——基于 autostrategies 作战手册(playbook)构建的即用型工作流(广告系列审计、每周报告、广告系列上线、预算扩量、SEO 审计、学习检查),该作战手册也作为 yandex://playbook MCP 资源开放。

  • 单服务器、多项目:一个 stdio 进程内支持多个 Yandex 账户/令牌。

  • TypeScript / Node ≥ 22,基于 @modelcontextprotocol/sdkzod 构建。

工作原理

src/index.ts 启动一个 McpServer,并注册来自 src/webmaster/src/direct/ 的所有工具组。所有请求都通过 src/client.ts——一个按项目定制的 HTTP 客户端——完成,它会:

  • 附加 Authorization: OAuth <token> 请求头(Direct 使用 Bearer);

  • 将 Webmaster 请求路由到 api.webmaster.yandex.net,将 Direct 请求路由到 api.direct.yandex.com/json/v5(若启用了 direct.sandbox,则路由到 Direct Sandbox);

  • 解析并缓存 Webmaster 的 user_id,并在路径中注入 host_id

  • 在遇到网络错误 / 429 时进行指数退避重试,并处理 204 No Content

  • 展现 Direct 相关响应体中的 {"error": {...}},并跟踪 Units 配额请求头。

Related MCP server: Yandex Wordstat MCP

前提条件

  • Node.js ≥ 22。

  • 拥有 Webmaster 和/或 Metrika API 访问权限的 Yandex OAuth 令牌。

获取 OAuth 令牌

  1. Yandex OAuth 控制台 注册一个应用,并授予 Webmaster(webmaster:hostinfowebmaster:verify)和/或 Metrika(metrika:read / metrika:write)权限范围。

  2. 通过 OAuth 流程 获取你账户对应的令牌。

注意:

  • Direct 需要自己专属的应用权限范围,并在应用注册之后向 Direct 提交访问申请(заявка)并获得批准——现有的 Webmaster/Metrika 令牌如果不重新签发,则无法用于 Direct。在访问申请获批之前,请使用 Direct Sandbox(在项目配置中设置 direct.sandbox: true)。

  • Webmaster 的 OAuth 令牌有效期为 6 个月,过期后必须重新签发。

设置

npm install
cp .env.example .env      # then put your token in .env
npm run build

.env:

YANDEX_OAUTH_TOKEN=your_oauth_token_here

运行

npm start          # runs dist/index.js (requires build)
npm run dev        # tsx watch mode against src/index.ts

该服务器通过 stdio 提供 MCP 服务,因此通常由 MCP 客户端启动,而非手动启动。

多项目配置

服务器可以提供服务给多个项目,每个项目都有各自的 Yandex 登录名/令牌。将 projects.example.json 复制为 projects.json(已加入 .gitignore)并填入内容,或将 YANDEX_PROJECTS_CONFIG 指向其他路径。如果不存在配置文件但设置了 YANDEX_OAUTH_TOKEN,则使用名为 default 的单个项目。

使用 yandex_set_active_project 切换活动项目,用 yandex_projects_list 查看项目,或向任意 Direct / Metrika 工具传入 project。Metrika 工具也会遵循项目配置中的 default_counter

按项目的 Direct 设置:sandbox(路由到 Direct Sandbox)、client_login(代理账户)以及 limits——写入工具强制执行的最大预算/出价变更百分比。

连接到 MCP 客户端

令牌从 YANDEX_OAUTH_TOKEN 环境变量读取。

Claude Desktop / Cursor

添加到 MCP 服务器配置(claude_desktop_config.json 或等效文件)中:

{
  "mcpServers": {
    "yandex": {
      "command": "node",
      "args": ["/absolute/path/to/yandex/dist/index.js"],
      "env": {
        "YANDEX_OAUTH_TOKEN": "your_oauth_token_here"
      }
    }
  }
}

Claude Code

claude mcp add yandex --env YANDEX_OAUTH_TOKEN=your_token -- node /absolute/path/to/yandex/dist/index.js

工具

Webmaster(52)

分组

工具

用户

user_get

站点

hosts_listhost_get2, host_add, host_deletehost_deletion, host_delete

验证

verification_start, verification_status, verification_owners

摘要

summary_get, summary_sqi_history

搜索查询

search_queries_popular, search_queries_all_history, search_queries_history, query_analytics

索引

indexing_history, indexing_samples, indexing_archive_create, indexing_archive_status

搜索结果中的网址

search_urls_in_search_history, search_urls_in_search_samples, search_urls_events_history, search_urls_events_samples

重要网址

important_urls_list, important_urls_history

站点地图

sitemaps_list, sitemaps_get, sitemaps_user_list, sitemaps_user_get, sitemaps_add, sitemaps_delete

重新抓取

recrawl_submit, recrawl_status, recrawl_list, recrawl_quota, recrawl_sitemap_quota, recrawl_sitemap_submit

诊断

diagnostics_get

链接

links_external_samples, links_external_history, links_internal_samples, links_internal_history

Pro 导出

pro_regions, pro_limits, pro_dates, pro_export_start, pro_export_status

Feeds(商品数据源)

feeds_add, feeds_add_status, feeds_batch_add, feeds_list, feeds_batch_delete, feeds_change_regions

所有工具名均以 yandex_webmaster_ 为前缀。

Direct(43)

分组

工具

读取

campaigns_get, adgroups_get, ads_get, keywords_get, bids_get, bidmodifiers_get, sitelinks_get, adextensions_get, adimages_get, retargetinglists_get, audiencetargets_get, feeds_get, creatives_get, smartadtargets_get, dynamictextadtargets_get, negativekeywordsharedsets_get, vcards_get, leads_get, turbopages_get, businesses_get, agencyclients_get, advideos_get, dictionaries_get(24h 缓存)、clients_get, changes_check, units

写入(受保护)

campaigns_manage, adgroups_manage, ads_manage, keywords_manage, bids_set, bidmodifiers_manage, sitelinks_manage, adextensions_manage, adimages_manage, retargetinglists_manage, audiencetargets_manage, feeds_manage, smartadtargets_manage, dynamictextadtargets_manage, negativekeywordsharedsets_manage, vcards_manage, advideos_manage, clients_manage

研究

keywords_research

报告

report

所有工具名均以 yandex_direct_ 为前缀。写入工具会预览差异,除非设置 confirm: true,并执行分项目的预算/出价变更限制(可用 force: true 覆盖)。在项目中设置 direct.sandbox: true 可将调用路由至 Direct Sandbox。写入结果包含单条目汇总——Direct 会在成功的 HTTP 响应中上报部分失败,因此请检查 partial_failure

项目管理(2)

yandex_projects_listyandex_set_active_project——参见多项目配置

Metrika(22)

分组

工具

管理

counters_list, counter_get, goals_list, segments_list, filters_list

目标(受保护写入)

goal_add, goal_update, goal_delete

离线转化

offline_conversions_upload(受保护)、offline_conversions_uploadings

支出导入

expenses_upload(受保护;非 Yandex 广告支出)、expenses_uploadings

CRM 导入

crm_orders_upload(受保护;通过 CDP 上传订单/收入)、calls_upload(受保护)、calls_uploadings

Logs API(原始数据)

logs_evaluate, logs_request_create, logs_requests, logs_download(截断的 TSV)、logs_clean

报告(Stat)

stat_data, stat_bytime, stat_drilldown, stat_comparison, stat_comparison_drilldown

所有工具名均以 yandex_metrika_ 为前缀。统计工具接受用于广告报告的 direct_client_loginsym:ad: 指标——Direct 花费与站内行为数据连接)以及 extra_params 用于其他任何查询参数。

报告工具对应的是 Metrika 报告 API。指标与维度使用 ym:s:(会话数)和 ym:pv:(页面浏览量)命名空间,例如 metrics: "ym:s:visits,ym:s:users,ym:s:bounceRate"dimensions: "ym:s:date,ym:s:lastTrafficSource"。日期支持 YYYY-MM-DD 或相对关键字(todayyesterday7daysAgo)。若省略 counter_id/ids,将默认使用项目里设置的 default_counter

Project layout

src/
  index.ts            # entry point: boots the MCP server, registers all tools
  client.ts           # per-project HTTP client (auth schemes, base URLs, retries, Direct transport)
  projects.ts         # project registry: per-project tokens, Direct config, limits
  server-tools.ts     # project management tools (list / set active)
  webmaster/          # 14 modules, 51 Webmaster tools
  metrika/            # management + Reporting API — 10 Metrika tools
  direct/             # read, guarded write, reports — 14 Direct tools

Scripts

命令

描述

npm run build

将 TypeScript 编译到 dist/ 目录

npm run dev

使用 tsx 监听模式从源码运行

npm test

运行单元测试套件(tsx --test

npm start

运行构建后的服务器

npm run clean

删除 dist/ 目录

许可证

MIT © Minas Sarkisyan

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    B
    quality
    B
    maintenance
    MCP server for managing Yandex Direct advertising, Yandex Metrica analytics, Wordstat keyword research, and Yandex Webmaster SEO tools, with self-configuring OAuth; provides 153 tools for complete ad and search workflows from AI assistants.
    100
    19
    1
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Enables querying Yandex Wordstat search statistics, including frequency, related queries, seasonality, and regional distribution, through natural language in AI clients.
    5
    120
    4
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables interaction with Yandex advertising and analytics APIs (Direct, Metrika, Audience, Webmaster, AdMetrica) through MCP tools, resources, and prompts for campaign management and data retrieval.
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables AI assistants to manage Yandex Direct advertising campaigns, ads, keywords, and reports via natural language using the Yandex Direct API v5.
    2
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • MCP for Yandex Direct: manage ad campaigns & analytics from Claude or ChatGPT

  • Read-only Yandex Metrika MCP. Query visits, sources, geo, devices and more in plain language.

  • SEO research, audits, backlinks, GSC, and content workflow tools for AI agents.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/webkoth/yandex-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server