Shturman: Direct MCP with a hard red line

Shturman Direct MCP

12 dependency-free Yandex Direct tools: a plan-then-confirm write flow, with campaign resume and delete simply not implemented

  • 0 ★ on the repository
  • Last commit
  • MIT
MCP serverEditors’ pick

Broad access

Why this level

  • direct_apply actually changes a live account with real money
  • Creates Audience geo-segments and Metrica goals that affect future campaigns
All reasons and checks
Russian stack

seer22/shturman-direct-mcp

Install

Manual install

git clone https://github.com/seer22/shturman-direct-mcp.git

Zero dependencies: only the Python 3.11+ standard library, no npm install or pip install.

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • direct_apply actually changes a live account with real money
  • Creates Audience geo-segments and Metrica goals that affect future campaigns

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

What it does

Built on the plain Python standard library, the server offers just 12 tools instead of the 111 to 155 typical for this niche: a status check, reads with the API-unit cost checked before the call, planning a change that returns only an identifier, applying a plan by that identifier with a mandatory confirmation phrase, reports, a local 14-point audit mirroring Direct's own official checklist, attaching media to an ad, Wordstat via the Yandex Cloud API, reading Metrica and creating missing goals, and reading and creating Audience geo-segments. Eleven methods (resuming, unarchiving and deleting campaigns, groups, ads and keywords) are not implemented at all, not behind a flag but absent entirely. Every write runs in two phases: direct_plan describes the change and sends nothing, direct_apply executes the plan strictly by identifier with an exact confirmation phrase and a mandatory read-back afterward.

Who it is for. For people who want to manage Yandex Direct statistics, reports and careful edits through an agent, but are not ready to trust it with starting serving or deleting campaigns.

Good fit when

  • You need a local account audit against Direct's own official checklist, with a source cited for each check
  • You need to create an Audience geo-segment from circles or pull Wordstat data before planning a campaign
  • You want protection against irreversible actions built into the server itself, not only into the client

Not a fit when

  • You need to resume paused campaigns, ads or keywords via MCP: that method does not exist here and will not be added
  • You need to delete or unarchive objects through the agent: also deliberately absent
  • You need broad API v5 coverage in one server: this ships 12 tools, not a hundred-plus

Example request

Run the official audit checklist against my account and show which checks it deliberately skips

MCP

Transport
stdio
Authentication
API key

Environment variables

YANDEX_DIRECT_TOKEN required, secret
Yandex Direct OAuth token

Limitations

Yandex Direct has had no sandbox since July 2026; every write hits the live account with real money. Eleven red-line methods (resume, unarchive and delete for campaigns, groups, ads and keywords) are deliberately unimplemented and cannot be turned on through configuration. A plan lives one hour; a stale one is refused and a new one must be made.

How to disable. Remove the yandex-direct block from your MCP client config and stop the server process.

FAQ

Can the server resume a paused campaign?

No, resume, unarchive and delete for campaigns, groups, ads and keywords are deliberately unimplemented; that is the red line, not a setting.

What stops the model from applying a plan by accident?

direct_apply only accepts a plan id and requires the exact confirmation phrase verbatim, and a mandatory read-back checks the real outcome afterward, since a green API response proves nothing here.

Discussion

No questions or reviews yet.

Russian stack

A Python MCP server with 48 Yandex Direct tools and Wordstat frequency lookup, switchable between sandbox and production

MCP serverBroad access1Repository stars
Russian stack

An MCP server for Yandex Direct, Metrica, Audiences and Wordstat with read-only mode and change confirmation

MCP serverBroad access51Repository stars
Russian stack

A fork of a popular Yandex Direct MCP server that defaults to read-only, with explicit flags for writes and finance

MCP serverBroad access
Russian stack

20 Yandex Direct tools where every edit shows the plan by default and needs confirm=True to actually send anything

MCP serverBroad access
Russian stack

A single-file, dependency-free Node.js Direct API v5 MCP server with a universal direct_call tool and a read-only mode

MCP serverBroad access

README in short

The README explains why yet another Direct server exists: 36 documented cases where the API answers success but does something else, a pre-known API-unit cost of an error, and a deliberate refusal to implement resume, unarchive and delete as a hard red line, citing that Google's own Ads MCP ships no writes at all and Meta creates campaigns paused only. It gives a table of 12 tools and 14 knowledge resources, a section on the two-phase write with a one-hour plan lifetime, and a section on exactly what gets written to disk as debug cassettes.

README badge

Report a problem