Yandex Direct MCP with launch policies
yamcp (Yandex Direct MCP Server)
A Yandex Direct MCP server for agencies: reports, campaign audits and safe campaign creation under fixed business policies
- 2 ★ on the repository
- Last commit
- MIT
Broad access
Why this level
- Creates new ad campaigns with a real client budget
- The agency OAuth token grants access to real Yandex Direct data and actions
Install
- Works in
- Services
Manual install
claude mcp add --scope user --transport stdio --env "YD_TOKEN=$YD_TOKEN" --env "YD_MODE=report" yandex-direct -- /absolute/path/to/yamcp/.venv/bin/python -m yadirect_mcpRequires installing into a Python 3.11 venv first.
Access and checks
How we reviewBroad accessThe tool can change data, run commands or handle secrets.
- Creates new ad campaigns with a real client budget
- The agency OAuth token grants access to real Yandex Direct data and actions
This is third-party code. Review the repository files before installing.
What it does
The server runs in two modes via the YD_MODE variable. Report mode returns offline Yandex Direct reports with async waiting and context-saving: the full dump is saved to a TSV file, and only a row preview goes back to the model. Campaign_setup mode lets it assemble and write a new campaign under one of several named policies: B2B services, local business or e-commerce, separately for new and already-running accounts. A policy fixes the budget, UTM scheme, measurement profile and which strategy is chosen depending on available history. Before writing, the MCP client requests consent via elicitation for a specific SHA-256 plan, and after writing the server checks actual budgets and settings of created campaigns against that plan.
Who it is for. For agencies and contractors running several client Yandex Direct accounts who want to launch campaigns under one fixed set of rules.
Good fit when
- You need regular offline client reports without blowing up model context
- You need to launch new campaigns under one agreed budget and tracking policy
- You need an audit of existing campaigns against a business profile
Not a fit when
- You need a Unified Performance, display or mobile campaign: the server does not create those
- You need to edit or delete existing objects: the server only reads them
- You need remote HTTP access: the server only runs over local stdio
Example request
Build a Search plus network campaign plan for a new local business with a 30,000 ruble monthly budget and show the plan before writing itMCP
- Transport
- stdio
- Authentication
- API key
Environment variables
YD_TOKENrequired, secret- OAuth token with Yandex Direct API access
YD_MODE- Server mode: report or campaign_setup, defaults to report
YD_ALLOWED_LOGINS- Comma-separated list of allowed client logins
YD_OUT_DIR- Directory for full TSV reports
Limitations
Does not edit or delete existing campaigns, groups, ads or keywords: bid adjustments and retargeting conditions are read but not set. Does not create Unified Performance, display or mobile campaigns. No direct Yandex Metrica access: a separate token with metrika:read is needed. Not an official Yandex product. The sandbox has been disabled since July 2026, so testing is only possible on a dedicated draft campaign.
How to disable. Run claude mcp remove yandex-direct in Claude Code or remove the server from your MCP client config.
FAQ
Can the server launch a campaign on its own?
No, writing a campaign requires consent via elicitation on the MCP client side, and it only starts serving after manual activation in the Direct interface following moderation.
Do I need a separate Metrica token?
Yes, the Direct token does not grant Metrica API access; you need a separate token with metrika:read, though goal conversions are still available via direct_report with the goals parameter.
Discussion
No questions or reviews yet.
Related
All Yandex Direct toolsAn MCP server for Yandex Direct, Metrica, Audiences and Wordstat with read-only mode and change confirmation
Yandex Direct MCP server in Ruby
yandex-direct-mcp
A dependency-free, pure Ruby MCP server with 30 tools for Yandex Direct campaigns, ad groups, ads, keywords and reports
Dependency-free Node MCP for Yandex Direct
yandex-direct-mcp
A single-file, dependency-free Node.js Direct API v5 MCP server with a universal direct_call tool and a read-only mode
An MCP server for Yandex Direct, Metrika, Wordstat and Webmaster: campaigns, ads, bids, reports and keyword research from chat
Yandex Direct MCP with dry-run by default
Yandex Direct MCP Server
20 Yandex Direct tools where every edit shows the plan by default and needs confirm=True to actually send anything
Yandex Direct MCP
yandex-direct-mcp
A Claude Code and Codex plugin for Yandex Direct: a 147-tool MCP server, OAuth, and skills for ad copy and stats analysis
Comparison with similar tools
Cards that share the main search query, and how they differ.
| Tool | Official | Authentication | Repository stars | Main difference |
|---|---|---|---|---|
| Yandex Direct MCP with launch policies (this card) | no | API key | 2 | |
| Yandex Direct MCP server (npm) | no | API key | 4 | 20 tools, money in rubles |
| Bun-based Yandex Direct MCP with Unified Performance and Click.ru proxy | no | key is optional | 0 | Click.ru proxy |
| Yandex Direct MCP with dry-run by default | no | API key | 0 | 20 tools, edits with dry-run by default |
README in short
The README carefully logs the history of campaign-launch policy changes by date, an environment-variable table, Windows and Linux install steps, and connections to Claude Code, OpenAI Codex, Hermes Agent and ZCode. It separately covers technical decisions: stable report names, Reports API waiting, model context savings via row previews, and a full list of limitations and common-error diagnostics.