mcpField
M
Mutagen (mutagen.ru), unofficial

Mutagen (mutagen.ru), unofficial

本地服务
github.com商业与营销02 周前更新

关于 Mutagen (mutagen.ru), unofficial

Mutagen (mutagen.ru), unofficial 是面向 SEO 研究和内容规划的非官方 Mutagen SEO API MCP 服务,提供 Wordstat 频率、竞争度、关键词分组及相关工作流。付费调用前可查看费用估算并设置支出上限;同一软件包还包含 CLI 和类型化 Node.js 库。

主要功能

  1. 01Wordstat 频率与关键词长尾
  2. 02竞争度检查和 SEO 报告
  3. 03关键词聚类与语义核心构建
  4. 04费用估算与支出上限
  5. 05CLI 和类型化 Node.js 库

适用场景

  1. 01在预算内构建语义关键词核心
  2. 02比较搜索频率和竞争度
  3. 03为页面规划整理关键词分组
  4. 04导出关键词研究结果用于定时工作流

MCP 相关

将 Mutagen SEO API 操作作为工具和引导式提示词提供给 MCP 客户端,支持 stdio 和 Streamable HTTP。付费调用前可估算费用,并设置进程级支出上限。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"svorobiev-ru-mutagen-ru": {
"command": "npx",
"args": [
"-y",
"mutagen-ru-mcp"
],
"env": {
"MUTAGEN_API_KEY": "<MUTAGEN_API_KEY>",
"MUTAGEN_BUDGET_RUB": "<MUTAGEN_BUDGET_RUB>",
"MUTAGEN_AUTO_APPROVE_RUB": "<MUTAGEN_AUTO_APPROVE_RUB>",
"MUTAGEN_FREE_ONLY": "<MUTAGEN_FREE_ONLY>",
"MUTAGEN_TOOLS": "<MUTAGEN_TOOLS>"
}
}
}
}
启动命令npx -y mutagen-ru-mcp
需要配置的环境变量
MUTAGEN_API_KEY密钥Mutagen API key from https://mutagen.ru/?api_config
MUTAGEN_BUDGET_RUBSpending limit per session, RUB
MUTAGEN_AUTO_APPROVE_RUBCalls up to this sum run without confirmation, RUB
MUTAGEN_FREE_ONLY1 refuses every paid call
MUTAGEN_TOOLSTool groups: basic,parser,serp,scenarios,text (default all)

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmmutagen-ru-mcp0.1.0

工具

22

收录的工具列表 · 更新于 2 周前

此工具无需参数。

详细介绍

mutagen-ru-mcp

npm CI License: MIT Node

非官方项目,与 Мутагeн 无关。数据归 Мутагeн(mutagen.ru)所有。

Русский · English

面向神经网络的 Мутагeн。mutagen-ru-mcp 是 Мутагeн 的 MCP 服务:Claude Code、Claude Desktop、Codex、Cursor、VS Code、Windsurf 及其他 MCP 客户端可获取 Wordstat 搜索频率、长尾词、竞争情况、Mega-tool 报告和现成方案,例如“花 20 ₽ 建立关键词核心”“将短语分配到各个页面”“提供 Direct 否定关键词”。每次付费调用前,Agent 都会看到费用估算,支出上限则由你设定。

面向代码的 Мутагeн。同一个软件包还提供 CLI mutagen-ru 和 Node.js 类型化库。你可以在 GitHub Actions 或 cron 中按计划重新构建关键词核心,导出为 CSV、XLSX 和 JSON,存入数据库,并每周创建包含新短语的 pull request。缓存、任务日志和预算限额在 MCP、CLI 和库中均采用相同的工作方式。

目录

快速开始

需要 Node.js 22.12 或更高版本。

1. API 密钥
  1. 在 mutagen.ru 注册(这是项目作者的合作链接;普通注册链接为 https://mutagen.ru)。
  2. 在账户中获取密钥:https://mutagen.ru/?api_config。同时启用“仅允许从 ip 连接”——API 仅支持 HTTP,参见限制。
  3. 充值。Wordstat 解析器和竞争情况检查会从余额扣费(每次请求起价 0,02 ₽)。Mega-tool 报告的 API 仅限订阅用户使用:价格方案。
2. 检查
export MUTAGEN_API_KEY=ваш_ключ
npx -y -p mutagen-ru-mcp mutagen-ru balance

余额查询免费。如果收到响应,说明密钥有效。

MCP 服务的启动方式为:npx -y mutagen-ru-mcp。通常由客户端自行启动,下面的命令已经写入配置。

3. 连接到神经网络

所有示例中的 MUTAGEN_BUDGET_RUB 都是 MCP 服务整个进程的卢布支出上限(直到客户端重启服务为止)。不设置时,上限为 50 ₽。

Claude Code
claude mcp add --env MUTAGEN_API_KEY=ваш_ключ --env MUTAGEN_BUDGET_RUB=50 \
  --transport stdio --scope user mutagen -- npx -y mutagen-ru-mcp

--scope user 会在所有项目中连接该服务。检查方式:claude mcp get mutagen。

Claude Desktop

文件 claude_desktop_config.json(macOS:~/Library/Application Support/Claude/,Windows:%APPDATA%\Claude\):

{
  "mcpServers": {
    "mutagen": {
      "command": "npx",
      "args": ["-y", "mutagen-ru-mcp"],
      "env": {
        "MUTAGEN_API_KEY": "ваш_ключ",
        "MUTAGEN_BUDGET_RUB": "50"
      }
    }
  }
}

修改后,请重启 Claude Desktop。

Codex

~/.codex/config.toml:

[mcp_servers.mutagen]
command = "npx"
args = ["-y", "mutagen-ru-mcp"]
startup_timeout_sec = 30   # первый запуск npx скачивает пакет
tool_timeout_sec = 120

[mcp_servers.mutagen.env]
MUTAGEN_API_KEY = "ваш_ключ"
MUTAGEN_BUDGET_RUB = "50"

若不想将密钥保存在文件中,请将 env 表替换为 env_vars = ["MUTAGEN_API_KEY"]:Codex 会从你的环境中传递该变量。也可以通过一条命令添加同一服务:codex mcp add mutagen --env MUTAGEN_API_KEY=ваш_ключ -- npx -y mutagen-ru-mcp。

Cursor

项目中的 .cursor/mcp.json,或适用于所有项目的 ~/.cursor/mcp.json:

{
  "mcpServers": {
    "mutagen": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "mutagen-ru-mcp"],
      "env": {
        "MUTAGEN_API_KEY": "${env:MUTAGEN_API_KEY}",
        "MUTAGEN_BUDGET_RUB": "50"
      }
    }
  }
}

${env:MUTAGEN_API_KEY} 会从环境中读取密钥,因此可以将该文件提交到 git。

VS Code

.vscode/mcp.json。VS Code 会在首次启动时询问密钥,并将其保存在安全存储中:

{
  "inputs": [
    {
      "type": "promptString",
      "id": "mutagen-key",
      "description": "Ключ API Мутагена (https://mutagen.ru/?api_config)",
      "password": true
    }
  ],
  "servers": {
    "mutagen": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "mutagen-ru-mcp"],
      "env": {
        "MUTAGEN_API_KEY": "${input:mutagen-key}",
        "MUTAGEN_BUDGET_RUB": "50"
      }
    }
  }
}
Windsurf

在 Cascade 面板中打开 mcp_config.json 文件:菜单 ... → MCPs → Open MCP config file。目前文件位于 ~/.config/devin/mcp_config.json(Windows:%APPDATA%\devin\mcp_config.json);在旧版 Windsurf 中,文件位于 ~/.codeium/windsurf/mcp_config.json。

{
  "mcpServers": {
    "mutagen": {
      "command": "npx",
      "args": ["-y", "mutagen-ru-mcp"],
      "env": {
        "MUTAGEN_API_KEY": "${env:MUTAGEN_API_KEY}",
        "MUTAGEN_BUDGET_RUB": "50"
      }
    }
  }
}

相同的配置文件也单独存放在 examples/clients 中。

HTTP 服务。 对于通过地址连接的客户端,可使用 Streamable HTTP:

MUTAGEN_API_KEY=ваш_ключ npx -y mutagen-ru-mcp --http --port 3333
# адрес для клиента: http://127.0.0.1:3333/mcp

如果监听的不是 localhost(--host 0.0.0.0),则必须设置令牌 MUTAGEN_MCP_HTTP_TOKEN:客户端会在 Authorization: Bearer ... 标头中传递令牌。对于带有 Origin 标头的浏览器请求,服务只接受来自 localhost 的请求;其他地址请用逗号分隔后列入 MUTAGEN_MCP_ALLOWED_ORIGINS。MUTAGEN_BUDGET_RUB 预算由进程的所有 HTTP 会话共享。

可以做什么

下面列出聊天中常见的请求、Agent 会调用的工具,以及最终结果。示例所选领域为拉伸天花板,Wordstat 地区为俄罗斯(225)。标注为“实时响应”的内容,是真实的 Mutagen 查询结果,来自 14.10.2026,已缩短为前几行。标注为“示例”的内容展示的是响应格式,数字仅为示意。

价格来自 14.10.2026 的实时检查:频率查询为每个词组和类型 0.02 ₽;“Wordstat 关键词”为 0.02 ₽(200 个词组)或 0.20 ₽(2000 个词组);竞争度查询为每个词组 0.30 ₽。Mega 工具报告不扣费,但需要订阅,并会消耗每日请求配额。

1. Собрать семантическое ядро для нового сайта или раздела

Собери семантическое ядро для раздела «натяжные потолки» по маркерам «натяжные потолки» и «потолки под ключ». Бюджет 15 рублей, регион Россия.

Агент: mutagen_build_core с dry_run: true → показывает смету → после вашего «да» тот же вызов без dry_run. Сценарий собирает хвосты маркеров, убирает дубли и явный мусор («скачать», «вакансии», «б/у» и т. п.), снимает точную частоту "!фраза" и группирует фразы в кластеры. MCP-prompt build-core ведет агента по этим шагам.

Смета — живой ответ --dry-run для двух маркеров:

ШагМетодЕдиницСумма
Хвосты маркеров (200 фраз)parser.get, wordstat_key_5020,04 ₽
Точная частотаparser.mass.new, wordstat_qs50010,00 ₽
Итого10,04 ₽

Если бюджет меньше сметы, план уменьшается до бюджета: при 1,5 ₽ сценарий честно пишет «план уменьшен: max_phrases 500 → 73». Результат — таблица и файл (пример):

ФразаБазовая частота"!Точная"КластерМаркер
натяжной потолок цена55 9261 011натяжной потолок ценанатяжные потолки
сколько стоит натяжной потолок18 6671 382сколько стоит натяжной потолокнатяжные потолки
…

Цена: по смете, не больше budget_rub. CLI: mutagen-ru core "натяжные потолки" "потолки под ключ" --budget 15 -o core.xlsx.

2. Расширить ядро хвостами и подсказками

Вот наше ядро (core.csv). Найди новые фразы, которых в нем еще нет, бюджет 5 рублей.

Агент: mutagen_expand_core (маркеры по умолчанию — главные фразы кластеров) или mutagen_wordstat_keywords по одной фразе. Живой ответ «Ключи Вордстата», 200 фраз, 0,02 ₽:

ФразаЧастотность
натяжной потолок1 073 667
потолок под натяжной потолок56 753
натяжной потолок цена55 926
установка натяжных потолков52 489
натяжные потолки фото40 119
натяжной потолок своими руками32 939
… еще 194 строки

С подпиской Мега-инструмента source: "serp" берет хвосты из базы Мутагена (report_keyword_tailings), без подписки — из Вордстата. source: "auto" выбирает сам. CLI: mutagen-ru keywords "натяжные потолки" --depth 200 -o tails.csv, mutagen-ru expand -i core.csv --budget 5.

3. Снять базовую и точную частоту, оценить конкуренцию

Сними базовую и точную частоту по этим четырем фразам. Потом проверь конкуренцию у двух самых частотных.

Агент: mutagen_frequency с types: ["wordstat_n", "wordstat_qs"], затем mutagen_competition. Живой ответ, 4 фразы × 2 вида = 0,16 ₽:

ФразаБазовая"!Точная"
натяжной потолок цена62 5291 011
установка натяжных потолков54 907593
натяжной потолок купить27 870694
сколько стоит натяжной потолок20 4221 382

Доступны все виды частотности Вордстата: базовая n, "фразовая" q, "!точная" qs, [порядок] no, "[порядок]" qo, "[!точный порядок]" qso. Конкуренция — шкала Мутагена 0–25 (ниже 5 — низкая), плюс частота в кавычках, число хвостов, ставки Директа и витальный сайт (пример):

ФразаКонкуренция (0–25)Частота "в кавычках"Хвосты
натяжной потолок цена124 800950

Цена: частота 0,02 ₽ × фраза × вид, конкуренция 0,30 ₽ × фраза, повтор той же фразы в течение 7 дней бесплатный. Конкуренция зависит от связи Мутагена с Яндекс Директом и может считаться очень долго, см. ограничения. CLI: mutagen-ru freq -t n,qs -i phrases.txt, mutagen-ru competition -i top.txt.

4. Кластеризовать фразы и разложить их по страницам

Разложи фразы из tails.csv по страницам: какие фразы вести на одну страницу.

Агент: mutagen_cluster. Три режима:

  • lexical — бесплатно и без обращения к API: группировка по общим словам с учетом словоформ (стеммер Snowball);
  • serp — по совпадению URL в топе выдачи, как кластеризация на сайте Мутагена; нужна подписка, 1 запрос квоты на фразу, до 300 фраз;
  • project — забрать готовые кластеры проекта «Избранного» по его id (бесплатно).

Живой ответ, lexical, 40 фраз, бесплатно (сокращено):

КластерФразаЧастота
натяжной потолок ценанатяжной потолок цена55 926
натяжной потолок ценастоимость натяжного потолка11 164
натяжной потолок ценанатяжной потолок цена за м24 421
точечные светильники для натяжного потолкаточечные светильники для натяжного потолка5 767
точечные светильники для натяжного потолкавстраиваемый светильник в натяжной потолок3 499
натяжные потолки скрытый карнизскрытый карниз в натяжном потолке3 650

Лексическая группировка грубая: фразы с одинаковыми словами она объединяет, даже если интент разный (в живом прогоне «светильники» и «монтаж» попали в кластер «цена»). Для раскладки по страницам точнее режим serp. CLI: mutagen-ru cluster -i tails.csv, mutagen-ru cluster --mode serp -i tails.csv.

5. Выбрать Title, H1 и Description по частотам

Предложи Title, H1 и Description для страницы цен на натяжные потолки по этим фразам.

Агент: mutagen_title_h1. Если у фраз уже есть частоты, это бесплатно. Если нет, сценарий снимет точную частоту: 0,02 ₽ за фразу. Живой ответ на 15 фраз кластера «цена»:

ЭлементТекстОбоснование
TitleНатяжной потолок цена — с установкой, за метрглавная фраза «натяжной потолок цена» (55 926) + хвосты фраз «потолок натяжной цена с установкой» (21 548) и «натяжной потолок цена за метр» (6 884)
H1Потолок натяжной цена с установкойвторая по частоте формулировка (21 548)
DescriptionНатяжной потолок цена: с установкой, за метр. Узнайте подробнее на сайте!главная фраза + те же уточнения + призыв

Слова не склоняются: уточнения берутся целыми фразами кластера или их хвостами в том виде, в каком они есть в Вордстате, поэтому заготовка не собирает слова разных фраз в одну неграмотную группу. Город добавляется через запятую. Это заготовка с обоснованием по частотам, а не готовый текст: ее правит редактор. Параметры brand и city добавляют бренд и город. CLI: mutagen-ru title -i price.csv --city Москва.

6. Найти фразы, по которым нет страницы

Какие запросы конкурентов из топа есть у них и нет у нашего сайта example.ru?

С подпиской агент вызовет mutagen_content_gap: ключи вашего домена и 5 конкурентов (их Мутаген находит сам, или задайте competitors), разница — фразы, по которым у вас нет страницы. Цена: 1 запрос квоты на домен. Пример:

ФразаЧастотаКонкурентовЛучшая позицияЛучший конкурент
натяжной потолок в ванной17 61032a.ru

Без подписки: выгрузите список фраз, под которые у вас уже есть страницы (pages.txt), и сравните его с ядром бесплатной локальной операцией:

mutagen-ru text compare -i pages.txt -i core.csv --implicit

Строки с only_b — фразы ядра без страницы. --implicit считает одинаковыми фразы, которые отличаются только формой слов или порядком.

7. Проверить позиции

На каких позициях example.ru по запросам про натяжные потолки?

Агент: mutagen_domain_report с report_keywords_organic (ключи и позиции домена) или mutagen_keyword_report с report_keyword_positions_organic (топ-50 по фразе). Нужна подписка, 1 запрос квоты. Пример (колонки отчета Мутагена):

keywordpositionregion_wsnpage
натяжные потолки под ключ73 100https://example.ru/catalog/

Честно: это позиции из базы Мутагена, которую он обновляет периодически, а не съем выдачи в реальном времени. В API нет инструмента, который проверит позицию прямо сейчас. Бесплатной альтернативы внутри Мутагена нет. Позиции своего сайта можно смотреть в Яндекс Вебмастере.

8. Подготовить ядро для Директа: минус-слова

Подготовь минус-слова для кампании по натяжным потолкам.

Агент: mutagen_minus_words (MCP-prompt direct-prep). По готовому списку фраз — бесплатно, по маркерам — сначала собирает «Ключи Вордстата» (0,02 ₽ за маркер). Живой ответ на 200 фраз, бесплатно:

-своими -руками -видео -фото -как -сделать -самостоятельно -авито
СловоКатегорияСпорноФразСумма частот
своими рукамиСвоими рукаминет965 594
фотоФото и видеонет345 175
работаРабота и вакансиида19 173
отзывыОтзывы и обсуждения (спорно)да17 130

Спорные слова в строку не попадают: решение за вами (include_disputed или --disputed добавит их). Ставки и прогноз Директа — mutagen_direct_bids, 0,02 ₽ за фразу, но сейчас этот сбор может идти очень долго, см. ограничения. CLI: mutagen-ru minus -i tails.csv, mutagen-ru minus "натяжные потолки" --budget 1.

9. Сравнить с конкурентами

Кто конкуренты example.ru в выдаче и по каким запросам они нас обходят?

Агент: mutagen_domain_report с report_domain_competitors (конкуренты по пересечению ключей), затем report_keywords_organic по конкуренту и mutagen_content_gap. Все это — отчеты Мега-инструмента: нужна подписка, 1 запрос квоты на отчет. Пример (колонки отчета Мутагена):

domainvisibilitydomain_organic_keywords
a.ru41,25 600

Без подписки: соберите ядро по маркерам, которые продвигает конкурент (mutagen_build_core), и сравните его со своим списком через mutagen_text с операцией compare.

10. Составить контент-план статей по ядру

Составь контент-план информационных статей по этим фразам.

Агент: mutagen_content_plan (MCP-prompt content-plan). По готовому списку — бесплатно: сценарий находит вопросы, группирует их и сортирует темы по сумме частот. По маркерам — сначала собирает фразы (с подпиской — хвосты-вопросы Мега-инструмента, без нее — Вордстат). Живой ответ на 200 фраз, бесплатно:

Тема статьиГлавный запросСумма частотВопросов
Как снять натяжной потолок?как снять натяжной потолок154 37226
Натяжной потолок сколько?натяжной потолок сколько55 7833
Чем отмыть натяжной потолок?чем отмыть натяжной потолок10 1982
Можно ли делать натяжной потолок?можно ли делать натяжной потолок2 3761
Что сначала обои или натяжной потолок?что сначала обои или натяжной потолок2 2821

Заголовки — черновые, их стоит переписать. Для выбранных тем агент может вызвать mutagen_title_h1. CLI: mutagen-ru plan -i tails.csv -o plan.xlsx.

Подключение к своим проектам

Все примеры лежат в examples/. Для CLI в CI и cron есть два важных флага: --yes подтверждает смету без вопроса (без него неинтерактивный запуск дороже 1 ₽ завершится с кодом 3) и --budget N ограничивает траты одного запуска.

Сбор по расписанию: GitHub Actions

examples/github-actions/weekly-core.yml — раз в неделю собирает ядро и сохраняет XLSX и отчет о тратах как артефакт сборки. Ключ хранится в секрете репозитория MUTAGEN_API_KEY.

- run: npm install --global mutagen-ru-mcp
- run: mutagen-ru core "натяжные потолки" --budget 20 --yes -o out/core.xlsx
  env:
    MUTAGEN_API_KEY: ${{ secrets.MUTAGEN_API_KEY }}
    MUTAGEN_BUDGET_RUB: "20"
定时采集:cron

examples/cron/weekly-core.sh 将核心词表写入带日期的文件,crontab -e 的配置行见 examples/cron/crontab.txt:

0 6 * * 1  /path/to/weekly-core.sh >> /var/log/mutagen-core.log 2>&1
导出为 CSV、XLSX、JSON

任何 CLI 命令都支持 -o 文件.csv|.xlsx|.json|.ndjson,任何 MCP 工具都支持 save_as。MCP 文件只会写入 MUTAGEN_OUTPUT_DIR 目录(默认为 ./mutagen-results):相对路径的 save_as 以该目录为基准,指向目录外的路径(..、符号链接)会被拒绝。MCP 不会覆盖已有文件,而是将结果另存为「名称 (2).csv」;要替换文件,请使用 overwrite: true。仅在 stdio 模式下,MUTAGEN_ALLOW_ANY_OUTPUT_PATH=1 才允许使用任意路径。CSV 针对俄语版 Excel 进行了适配:分隔符为「;」,小数符号为逗号,带 BOM,并防止单元格中的公式注入。每个文件末尾都有一行「数据:Mutagen (mutagen.ru)」(XLSX 中为「来源」工作表):这是 Mutagen API 的使用条款要求。

mutagen-ru freq -t n,qs -i phrases.txt -o freq.xlsx
mutagen-ru keywords "натяжные потолки" --format json > tails.json
Google 表格

有两种可靠的方式:

  1. 一次性导入。 文件 → 导入 → 上传 → core.csv,分隔符类型选择「分号」。

  2. 自动导入。 IMPORTDATA 只能读取通过公开链接提供的逗号分隔 CSV 或 TSV。examples/google-sheets/to-sheets-csv.mjs 会将 CLI 的 JSON 导出转换为逗号分隔的 CSV。将其放到公开代码库或任何公开地址,然后粘贴到单元格中:

    =IMPORTDATA("https://raw.githubusercontent.com/SVorobiev-ru/REPO/main/semantic/core.sheets.csv")
    

    Google 表格会延迟并自动重新读取文件。无法通过这种方式读取私有代码库中的文件。

数据库

examples/db/to-sqlite.mjs 使用内置的 node:sqlite 将 JSON 导出写入 SQLite(Node 22.13+ 或 24),并记录采集日期。使用这张表可以轻松查看频率历史:

mutagen-ru core "натяжные потолки" --budget 20 --yes -o core.json
node examples/db/to-sqlite.mjs core.json semantic.db
Node 脚本

该库导出了 CLI 和 MCP 使用的相同功能:API 客户端(MutagenClient)、包含预算、缓存和日志的会话(MutagenSession)、工作流(buildCore、expandCore、聚类、否定词及其他)、本地短语处理和导出(writeTable)。完整示例见 examples/node/build-core.mjs:

import { BudgetError, buildCore, loadConfig, MutagenSession, writeTable } from "mutagen-ru-mcp";

const session = MutagenSession.fromConfig(loadConfig()); // ключ и бюджет из переменных окружения
const params = { seeds: ["натяжные потолки"], budgetRub: 15 };

let result;
try {
  result = await buildCore(session, params);
} catch (error) {
  if (!(error instanceof BudgetError) || error.kind !== "needs_confirmation") throw error;
  // Смета выше MUTAGEN_AUTO_APPROVE_RUB: подтверждаем ее токеном из ошибки.
  result = await buildCore(session, params, { confirmToken: error.confirmToken });
}
await writeTable(result.table, "core.xlsx");
每周更新核心词表并创建 PR 的 Agent

examples/github-actions/weekly-core-pr.yml:CLI 收集核心词表,免费的本地命令 mutagen-ru text compare 将其与上一次的 semantic/core.csv 进行比较,新短语会写入 semantic/new-phrases.txt,然后 peter-evans/create-pull-request@v8 创建一个包含更新后核心词表的 PR。您可以查看差异并决定采纳哪些内容。

为此,请在代码库设置中启用 Settings → Actions → General → Workflow permissions →「Allow GitHub Actions to create and approve pull requests」。

Инструменты MCP и команды CLI

22 инструмента MCP и 18 команд CLI. Группа — значение для MUTAGEN_TOOLS.

Инструмент MCPКоманда CLIЧто делаетЦенаГруппа
mutagen_balancebalanceБаланс аккаунтабесплатноbasic
mutagen_spendingspendingТраты и остаток бюджета, журнал платных вызововбесплатно, локальноbasic
mutagen_estimateestimateСмета плана вызововбесплатно, локальноbasic
mutagen_mass_tasksmass listМассовые задания парсерабесплатноbasic
mutagen_mass_resultmass get <id>Результат массового заданиябесплатноbasic
mutagen_project_keywordsprojects <id>Ключи и кластеры проекта «Избранного»бесплатноbasic
mutagen_frequencyfreqЧастотность Вордстата, 6 видов, регион0,02 ₽ × фраза × видparser
mutagen_wordstat_keywordskeywordsЛевая колонка Вордстата: 200 или 2000 фраз0,02 ₽ (200), 0,20 ₽ (2000)parser
mutagen_direct_bidsbidsСтавки и прогноз Яндекс Директа0,02 ₽ × фразаparser
mutagen_competitioncompetitionКонкуренция 0–25 и статистика фразы0,30 ₽ × фраза, повтор за 7 дней бесплатноparser
mutagen_keyword_reportreport keyword <отчет> <фраза>Отчеты по фразе: статистика, хвосты, вопросы, вариации, LSI, топ-50, рекламаподписка, 1 запрос квотыserp
mutagen_domain_reportreport domain <отчет> <домен>Отчеты по сайту: ключи, рост и падение, страницы, конкуренты, рекламаподписка, 1 запрос квотыserp
mutagen_page_reportreport page <отчет> <URL>Отчеты по странице: ключи, конкуренты, упущенные ключиподписка, 1 запрос квотыserp
mutagen_serp_reportreport raw <отчет>Любой отчет mutagen.serp.report с фильтрамиподписка, 1 запрос квотыserp
mutagen_build_corecoreСемантическое ядро по маркерампо смете, не больше бюджетаscenarios
mutagen_expand_coreexpandНовые фразы для готового ядрапо смете, не больше бюджетаscenarios
mutagen_clusterclusterКластеры: лексически, по выдаче, из «Избранного»бесплатно; по выдаче — подписка, 1 запрос квоты на фразуscenarios
mutagen_title_h1titleTitle, H1, Description кластерабесплатно с частотами, иначе 0,02 ₽ × фразаscenarios
mutagen_content_gapgapФразы конкурентов, которых нет у сайтаподписка, 1 запрос квоты на доменscenarios
mutagen_minus_wordsminusМинус-слова для Директапо фразам бесплатно, по маркерам по сметеscenarios
mutagen_content_planplanКонтент-план из вопросовпо фразам бесплатно, по маркерам по сметеscenarios
mutagen_texttext <операция>Дубли и неявные дубли, словарь, комбинатор, сравнение списков, фильтр, вопросы, подсчетбесплатно, без APItext

У платных инструментов MCP есть dry_run (только смета), confirm_token (подтверждение сметы), force_refresh (не брать из кэша), save_as и overwrite (сохранить в файл в MUTAGEN_OUTPUT_DIR, заменить существующий), fields и limit (сократить ответ). В CLI им соответствуют --dry-run, --yes, --refresh, -o, --limit. Справка по каждой команде: mutagen-ru <команда> --help.

Еще MCP-сервер отдает:

  • ресурсы mutagen://reference/reports (отчеты и колонки Мега-инструмента), mutagen://reference/regions (регионы), mutagen://reference/prices (цены методов и дата проверки);
  • prompts build-core, expand-core, direct-prep, content-plan — готовые сценарии для агента.

Коды выхода CLI: 0 — успех, 1 — ошибка API, 2 — неверные аргументы, 3 — нужно подтверждение сметы (--yes), 4 — превышен бюджет или включен режим «только бесплатное», 130 — прервано.

Как экономить

  • Смета до трат. --dry-run в CLI и dry_run: true в MCP показывают план и цену без обращения к API. mutagen_estimate и mutagen-ru estimate считают смету любого плана: mutagen-ru estimate --freq 500 -t n,qs --competition 50 → 35,00 ₽.
  • Лимит бюджета. MUTAGEN_BUDGET_RUB (по умолчанию 50 ₽) — жесткий предел трат на один запуск CLI или на весь процесс MCP-сервера: все его сессии, в том числе HTTP, тратят один общий бюджет до перезапуска. Вызов, который в него не помещается, отклоняется до обращения к API. --budget N в CLI ограничивает один запуск. Сценарии с бюджетом уменьшают план так, чтобы в него уложиться.
  • Порог подтверждения. Вызовы до MUTAGEN_AUTO_APPROVE_RUB (по умолчанию 1 ₽) идут без вопросов. Дороже — CLI спрашивает «Продолжить?» или ждет --yes, а MCP возвращает смету и confirm_token. Если клиент умеет спрашивать человека через свой интерфейс (elicitation), подтверждение спрашивается у вас.
  • Режим «только бесплатное». MUTAGEN_FREE_ONLY=1 или --free-only: любой платный вызов отклоняется, бесплатные (баланс, массовые задания, локальная обработка) работают.
  • Кэш. Готовые частоты и конкуренция хранятся 7 дней, отчеты Мега-инструмента — 1 день (MUTAGEN_CACHE_TTL_*_DAYS). Повторный запрос из кэша бесплатный. Баланс и статусы задач не кэшируются. Обойти кэш: --refresh или force_refresh, отключить: --no-cache или MUTAGEN_NO_CACHE=1.
  • Журнал и бесплатные повторы. Каждая платная задача пишется в журнал. Если ответ потерялся или задача еще считается, повтор того же вызова подхватывает уже оплаченную задачу и не платит второй раз. MCP ждет результат около 45 секунд, потом отвечает processing; повторите вызов позже — это бесплатно. Новую платную задачу вместо зависшей создает --new-task или new_task: true.
  • Меньше инструментов — меньше контекста. Описания и схемы всех 22 инструментов занимают около 34 тыс. символов контекста агента. MUTAGEN_TOOLS оставляет только нужные группы: например, basic,parser,text — около 14 тыс. символов. Группы: basic, parser, serp, scenarios, text.
  • Большие результаты — в файл. MCP отдает агенту сводку и первые строки, полный результат — в файл save_as. fields и limit убирают лишние колонки и строки, например 30 колонок прогноза Директа.
  • Своя обработка бесплатна. Дубли, неявные дубли, словарь, фильтр по словам, лексическая кластеризация, минус-слова и контент-план по готовому списку работают локально, без ключа и без денег.

Настройки

Все настройки — переменные окружения. Пример — .env.example.

ПеременнаяПо умолчаниюЧто задает
MUTAGEN_API_KEY—Ключ API. Без него работают только локальные операции
MUTAGEN_BUDGET_RUB50Предел трат, ₽: на запуск CLI или на процесс MCP-сервера (общий для всех сессий)
MUTAGEN_AUTO_APPROVE_RUB1До этой суммы вызов идет без подтверждения, ₽
MUTAGEN_FREE_ONLY01 — отклонять любой платный вызов
MUTAGEN_TOOLSвсе группыГруппы инструментов MCP: basic,parser,serp,scenarios,text
MUTAGEN_OUTPUT_DIR./mutagen-resultsКуда MCP сохраняет файлы; save_as не выходит за этот каталог
MUTAGEN_ALLOW_ANY_OUTPUT_PATH01 — save_as может указывать любой путь; только для stdio, по HTTP не действует
MUTAGEN_MCP_WAIT_SECONDS45Сколько вызов MCP ждет задачу Мутагена, прежде чем ответить processing
MUTAGEN_MCP_HTTP_TOKEN—Bearer-токен для --http; обязателен, если --host не localhost
MUTAGEN_MCP_ALLOWED_ORIGINS—Браузерные Origin через запятую, которым кроме localhost разрешен --http; без них запросы с Origin отклоняются
MUTAGEN_CACHE_DIR~/.cache/mutagen-ru-mcpКаталог кэша (Windows: %LOCALAPPDATA%\mutagen-ru-mcp\cache)
MUTAGEN_STATE_DIR~/.local/state/mutagen-ru-mcpКаталог журнала задач (Windows: %LOCALAPPDATA%\mutagen-ru-mcp\state)
MUTAGEN_CACHE_TTL_FREQUENCY_DAYS7Срок кэша частот, дней
MUTAGEN_CACHE_TTL_COMPETITION_DAYS7Срок кэша конкуренции, дней
MUTAGEN_CACHE_TTL_REPORT_DAYS1Срок кэша отчетов, дней
MUTAGEN_NO_CACHE01 — не читать и не писать кэш
MUTAGEN_PRICES_JSON—Переопределить цены методов, если Мутаген их изменит
MUTAGEN_CONCURRENCY2Одновременных запросов к API
MUTAGEN_RPS3Запросов в секунду
MUTAGEN_BASE_URLhttp://api.mutagen.ru/jsonАдрес API

Ограничения и честные оговорки

  • API только по HTTP. HTTPS у api.mutagen.ru нет, ключ уходит по сети открытым текстом в адресе запроса. Включите в кабинете белый список IP («Разрешить подключение только с ip»): тогда украденный ключ не сработает с чужого адреса. В наших логах, ошибках и файлах ключ заменяется на ***.
  • Отчеты Мега-инструмента — только по подписке. Хвосты из базы, вопросы, LSI, позиции, ключи сайтов и страниц, конкуренты, кластеризация по выдаче и поиск пробелов без подписки возвращают «нужна подписка» (ошибка 111). Вместе с ошибкой агент получает подсказку, чем заменить отчет без подписки.
  • Лимиты подписки. Отчеты расходуют суточную квоту запросов, а строки в отчете и выгрузки за месяц ограничены тарифом. По сайту на 14.10.2026: «Простой» — 950 ₽ в месяц, 300 запросов в сутки, 20 000 строк в отчете; «Расширенный» — 1 250 ₽, 1 500 запросов; «Продвинутый» — 2 450 ₽, 6 000 запросов. Актуально — на странице тарифов. Когда квота кончается, Мутаген отвечает ошибкой 112.
  • Нет списка проектов «Избранного». Метода в API нет, хотя он описан в документации. Ключи проекта доступны по id, а id берется из адреса страницы проекта в кабинете (Избранное → проект). Создавать проекты и добавлять в них ключи через API нельзя.
  • Нет правой колонки Вордстата. «Ключи Вордстата» отдают только левую колонку: 200 или 2000 фраз.
  • Конкуренция и ставки Директа могут висеть. Оба сбора зависят от связи Мутагена с Яндекс Директом. В октябре 2026 года они считались больше 40 минут. Деньги списываются при постановке задачи; повторный опрос бесплатный, и повтор того же вызова подхватывает уже оплаченную задачу. Если задача висит больше 2 часов, ответ прямо говорит о вероятном сбое на стороне Мутагена или Директа и советует проверить кабинет или написать в поддержку. Конкуренция считается без учета региона — так и на сайте Мутагена.
  • Частоты Вордстата приблизительны и меняются. Это оценка Яндекса, она плавает от месяца к месяцу. Разные способы сбора дают разные числа: в живой проверке «натяжной потолок цена» в левой колонке Вордстата — 55 926, а отдельным запросом базовой частоты — 62 529. Сравнивайте фразы, собранные одним способом.
  • Позиции — из базы Мутагена. Это не съем выдачи в реальном времени: база обновляется периодически.
  • Подтверждение через агента — защита от случайности, а не от злого умысла. Если клиент MCP не умеет спрашивать человека, confirm_token получает сам агент и может подтвердить смету без вас. Жесткий предел — только MUTAGEN_BUDGET_RUB. Ставьте его таким, какой не жалко потерять.
  • Функций сайта, которых нет в API, у нас тоже нет. Мы не автоматизируем веб-интерфейс Мутагена: только официальный API и локальная обработка. Рейтинги сайтов, создание проектов, кластеризация на стороне Мутагена недоступны.

FAQ

Это официальный клиент Мутагена? Нет. Это независимый проект с открытым кодом, он не связан с Мутагеном. Данные принадлежат Мутагену, в каждом ответе и файле стоит пометка «Данные: Мутаген (mutagen.ru)».

Нужна ли подписка? Для частот, «Ключей Вордстата», конкуренции, ставок Директа и всех локальных операций — нет, хватит баланса. Подписка нужна для отчетов Мега-инструмента: хвостов из базы, позиций, ключей сайтов, конкурентов, кластеризации по выдаче.

Сколько стоит собрать ядро? Два маркера, по 200 хвостов, точная частота для 500 фраз — 10,04 ₽. Проверка конкуренции для топ-20 фраз добавит 6 ₽. Точную смету для своих параметров покажет --dry-run.

Что работает без ключа? mutagen_text и mutagen-ru text, лексическая кластеризация, минус-слова и контент-план по готовому списку фраз, Title и H1 по фразам с частотами. Они не обращаются к API.

Агент может потратить все деньги? Не больше MUTAGEN_BUDGET_RUB за запуск CLI или за время работы MCP-сервера. Каждый вызов дороже MUTAGEN_AUTO_APPROVE_RUB требует подтверждения. Для полной уверенности включите MUTAGEN_FREE_ONLY=1.

Конкуренция ответила processing. Деньги списаны? Да, при постановке задачи. Повторите тот же вызов позже: он найдет задачу в журнале и не заплатит второй раз.

Почему частоты отличаются от того, что я вижу в Вордстате? Вордстат показывает оценку, которая меняется, а разные виды частотности и способы сбора дают разные числа. См. ограничения.

Как подключить к клиенту, которого нет в списке? Любой MCP-клиент со stdio запускает сервер командой npx -y mutagen-ru-mcp с переменной MUTAGEN_API_KEY. Клиентам, которые подключаются по адресу, подойдет npx -y mutagen-ru-mcp --http.

Участие в проекте

Ошибки, идеи и новые методы API — в issues. Как запустить проект, тесты и стиль коммитов — в CONTRIBUTING.md. Об уязвимостях — по SECURITY.md, не в открытых issue. Пожалуйста, никогда не публикуйте свой ключ API в issue и логах.

Лицензия

MIT. Проект неофициальный и не связан с Мутагеном. «Мутаген» и mutagen.ru принадлежат их владельцам. Данные, полученные через API, принадлежат Мутагену; условия их использования — в документации API и пользовательском соглашении.

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。