
Yandex Direct MCP
io.github.stufentlyPublished by GitHub account stufentlyv2.2.1Updated Oct 24, 2026
MCP server for Yandex Direct API v5 — campaigns, ads, keywords, reports
Overview
Local MCP server for Yandex Direct API v5 that lets an assistant read and change campaigns, ad groups, ads, keywords, bids, extensions and reports.
- What you can do
- Read, create, update, delete, archive, suspend and resume campaigns and ad groups
- Manage ads, including moderation requests
- Manage keywords and set keyword or automatic bids and bid modifiers
- Manage sitelinks and vCards
- Create reports and fetch dictionaries and client lists
- When to use it
- Use it when an assistant should work directly on a Yandex Direct advertising account: auditing or restructuring campaigns, adjusting keywords and bids, or pulling performance reports. Try it against the sandbox first before pointing it at a live account.
- Requirements
- Runs as a local Node.js process started from source (clone the repository, install dependencies, run the package entry file); the npm package is published but the README says to run from source. Needs an OAuth token in YANDEX_DIRECT_TOKEN; YANDEX_DIRECT_CLIENT_LOGIN for agency accounts and YANDEX_DIRECT_SANDBOX to route calls to the sandbox. Network access to the Yandex Direct API.
Installation
In SourceWeft
- Open Yandex Direct MCP in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
yandex-direct-mcp
MCP server for Yandex Direct API v5 — campaigns, ad groups, ads, keywords, bids, bid modifiers, sitelinks, vCards, and reports. 43 tools.
Write access, no dry-run. Unlike the other servers in this monorepo, this one changes live advertising data: it can create, update, delete and archive campaigns and ads, and set bids (in micro-units — a factor-of-1,000,000 mistake is a real risk). There is no confirmation step and no dry-run mode. Point it at the sandbox (
YANDEX_DIRECT_SANDBOX=true) until you trust the workflow.
Installation
This package is published as @stufently/yandex-direct-mcp; unscoped yandex-*-mcp
names on the public registry belong to an unrelated publisher (see the note in the
root README). Nothing is on the scope yet, so run it from source:
Configuration
Tools
Irreversible tools need confirm: true
Fourteen tools cannot be undone through this API, and this is the one server where a mistaken
call spends real money. They refuse unless the call carries confirm: true:
Called without it, the tool returns an error result and sends nothing to the Direct API — no entity touched, no bid moved, no API units spent:
confirm is optional in the JSON schema on purpose: a missing confirmation has to come back as
that explanation, not as a schema validation error a model cannot act on. Only a literal true
counts — "true", 1 and "yes" are refused, because a guess at the protocol is not a decision
to spend money. All fourteen carry destructiveHint: true in their MCP annotations, so clients
that surface tool risk can show it before the call.
add_*, archive_*/unarchive_*, suspend_*/resume_* and moderate_ads are deliberately
left unguarded. Each has an inverse in this same server (or, for moderate_ads, leaves the
entity itself untouched), so they are changes rather than losses. Guarding every write would
train callers to pass confirm: true by reflex — which is exactly what would defeat it on the
fourteen calls that matter.
Bids are expressed in micros (×10⁶). Set YANDEX_DIRECT_SANDBOX=true while experimenting.
Known limitations
- The API path is hard-coded to
/json/v5, so the unified performance campaigns endpoint (v501) is unreachable. - The
Unitsresponse header (points consumed / remaining) is not surfaced, so a client cannot see how much of its quota a call cost.
License
MIT
Source: packages/yandex-direct-mcp/README.md at commit bdd6c64
Tools
0Version history
2- v2.2.1LatestOct 16, 2026
- v2.2.0Oct 15, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts