Borrowing it
Nothing to install: this file belongs to axisrow/yandex-direct-mcp-plugin. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/axisrow/yandex-direct-mcp-plugin/main/CLAUDE.mdgit clone --depth 1 https://github.com/axisrow/yandex-direct-mcp-pluginWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/instructions/axisrow/yandex-direct-mcp-plugin/claude-md)<a href="https://agentmods.dev/instructions/axisrow/yandex-direct-mcp-plugin/claude-md"><img src="https://agentmods.dev/badge/instructions/axisrow/yandex-direct-mcp-plugin/claude-md/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/instructions/axisrow/yandex-direct-mcp-plugin/claude-md"><img src="https://agentmods.dev/badge/instructions/axisrow/yandex-direct-mcp-plugin/claude-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.02587 | $0.02587 |
| Opus 5.5 | $0.01035 | $0.01035 |
| Sonnet 5.5 | $0.00517 | $0.00517 |
| Haiku 4.5 | $0.00259 | $0.00259 |
Grade B, and why
yandex-direct-mcp-plugin CLAUDE.md scanned grade B with 3 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 12d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Reads agent configuration directoriesmediumAgent snooping
.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.
- Auth (simplest first): set `YANDEX_DIRECT_TOKEN` in `~/.claude/settings.json` env, or run `auth_login`/`auth_setup` (saved to `~/.direct-cli/auth.json`). `direct-cli` resolves explicit env creds before the active profi Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
- **MCP never calls Yandex.Direct directly** — always through `direct`, even to work around a missing/broken CLI feature. No `urllib`, raw HTTP, or `tapi-yandex-direct` imports. File upstream issues in `axisrow/direct-cl Runs shell commandslowCapability
Expected in a hook, worth knowing in a rule or an instructions file.
Three modes: **cassettes** (default `pytest`, recorded in `tests/recordings/`, no network), **mocks** (`-m mocks`, patch `subprocess.run` for unreproducible edges), **integration** (`-m integration`, live token). Cassett How it starts
The opening of the file, as written. The whole thing — 142 lines — stays where its author put it; the contents beside it link to each section on GitHub.
CLAUDE.md
Claude Code plugin for managing Yandex.Direct advertising campaigns. Wraps the direct Python CLI via an MCP server (FastMCP, stdio); auth delegated to direct auth profiles. Status: Implemented.
Architecture
MCP (server/main.py) → direct CLI → tapi-yandex-direct → Yandex.Direct API
- MCP never calls Yandex.Direct directly — always through
direct, even to work around a missing/broken CLI feature. Nourllib, raw HTTP, ortapi-yandex-directimports. File upstream issues inaxisrow/direct-cliand wait for the release. directis the only execution/transport boundary. WSDL/Reports spec wins when CLI convenience names drift.- Machine-readable parity source:
server/contract.py(PUBLIC_CONTRACT,TRANSPORT_BLOCKED_OPERATIONS,RENAMED_TOOL_MIGRATION). server/cli/runner.py—DirectCliRunnersubprocess wrapper.server/tools/*.py— 149 default tools across 42 modules, one module per service; the contract reserves 23 additional tools for opt-in bundles loaded byserver/optional_tools.pyas their implementation modules land.server/tools/helpers.py— shared validation (parse_ids,check_batch_limit).
Commands
| Task | Command |
|---|---|
| Install | pip install -e ".[dev]" (add ,docs for Sphinx) |
| All tests (cassettes, no token) | pytest |
| Single test | pytest tests/test_campaigns.py::test_campaigns_list -v |
| Mock edge-case tests | pytest -m mocks |
Integration tests (needs .env + a direct auth profile) |
pytest -m integration |
| Record cassettes | pytest --record |
| Sanitize / audit cassettes | python -m tests.sanitize · python -m tests.audit |
| Lint / format | ruff check . · ruff format . |
| Type check | mypy . |
| Run server locally | python3 server/main.py |
| Build docs | cd docs && make html |
Environment
- Python ≥ 3.11, no Node.js. Deps:
mcp,direct-cli. Build config:pyproject.toml(PEP 621). - Auth (simplest first): set
YANDEX_DIRECT_TOKENin~/.claude/settings.jsonenv, or runauth_login/auth_setup(saved to~/.direct-cli/auth.json).direct-cliresolves explicit env creds before the active profile. - Creds:
YANDEX_DIRECT_TOKEN,YANDEX_DIRECT_LOGIN,YANDEX_DIRECT_CLI_PATH. Finance/master tokens are env-only:YANDEX_DIRECT_FINANCE_TOKEN,YANDEX_DIRECT_MASTER_TOKEN. - Optional registration (
server/optional_tools.py, default = none):YANDEX_DIRECT_OPTIONAL_TOOLSacceptsbrowser,trackingparams, a comma-separated combination, orall. The import gate runs before tool-surface filtering, so profiles/groups can subtract tools after their bundle is loaded; surface allow-lists do not load bundles by themselves. - Browser read deployment:
YANDEX_DIRECT_BROWSER_PROFILE_DIRandYANDEX_DIRECT_BROWSER_CHROME_PROFILEselect the Chrome profile;YANDEX_DIRECT_BROWSER_HEADFUL=1shows the browser. These are server env settings, not MCP tool parameters. - Tool-surface selection (
server/config.py, default = all 149 registered tools):YANDEX_DIRECT_TOOL_PROFILE(full|core|analytics|campaign-editor),YANDEX_DIRECT_ENABLED_GROUPS/_DISABLED_GROUPS(service / action / product-area /financial),YANDEX_DIRECT_ENABLED_TOOLS/_DISABLED_TOOLS.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 12d ago Changed 2173c3ed9cde
- 1mo ago Changed · +18 lines · +258 tokens per session 447b294a500e
- 1mo ago First seen · 124 lines · 2,329 tokens per session scan B bc631eb071b4
yandex-direct-mcp-plugin CLAUDE.md is an instructions file published in the GitHub repository axisrow/yandex-direct-mcp-plugin (13 stars, last pushed 13d ago), licensed MIT. It adds 2,587 tokens to every session, about $0.0103 per session on Opus 5.5. A static security scan graded it B with 3 findings (reads agent configuration directories, makes network calls, runs shell commands). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other instructions, from other repositories
vscode buildNext.instructions.md
Working notes and architecture documentation for the new esbuild-based build system in build/next. Use when making changes to the new build pipeline (transpile/bundle commands, NLS plugin, source-map handling, resource copying, or self-hosting watch tasks).
next.js AGENTS.md
AGENTS.md instructions for vercel/next.js, covering next.js development guide, codebase structure, monorepo overview, core package: packages/next and other important packages.
vscode oss-third-party-notices.instructions.md
Instructions for microsoft/vscode, covering vs code oss third-party-notices pipeline, architecture, pipeline flow in ci, cache eligibility and rollout and applying the notice (cutover).
langchain AGENTS.md
AGENTS.md instructions for langchain-ai/langchain, covering global development guidelines for the langchain monorepo, corridor security analysis, project architecture and context, monorepo structure and development tools & commands.
vscode copilot-instructions.md
Copilot instructions for microsoft/vscode, covering vs code copilot instructions, project overview, root folders, core architecture (src/ folder) and built-in extensions (extensions/ folder).
deno copilot-instructions.md
Copilot instructions for denoland/deno, covering deno development guide for github copilot, network access, high level overview, key directories and key files to understand first.