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

非公式プロジェクトであり、Mutagen とは無関係です。データの所有権は Mutagen(mutagen.ru)にあります。

ロシア語 · 英語

ニューラルネットワークのための Mutagen。mutagen-ru-mcp は Mutagen 用の MCP サーバーです。Claude Code、Claude Desktop、Codex、Cursor、VS Code、Windsurf などの MCP クライアントから、Wordstat の検索頻度、関連語句、競合状況、Mega-tool のレポート、そして「20 ₽でキーワード群を作成」「フレーズをページごとに分類」「Direct用の除外キーワードを提案」といったすぐに使えるシナリオを利用できます。有料の呼び出しを行う前に、エージェントが見積もりを提示し、支出上限はご自身で設定できます。

コードのための Mutagen。同じパッケージには、CLI の mutagen-ru と Node.js 用の型付きライブラリも含まれています。GitHub Actions や cron で定期的にキーワード群を再構築し、CSV、XLSX、JSON にエクスポートしてデータベースに保存したり、新しいフレーズを含むプルリクエストを毎週作成したりできます。キャッシュ、タスクログ、予算上限は、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 パーサーと競合状況の確認には残高から料金が差し引かれます(1リクエストあたり 0.02 ₽から)。API 経由で Mega-tool のレポートを利用するには、サブスクリプションが必要です:料金プラン。
2. 動作確認
export MUTAGEN_API_KEY=ваш_ключ
npx -y -p mutagen-ru-mcp mutagen-ru balance

残高は消費されません。応答が返ってくれば、キーは正常に動作しています。

MCP サーバーは npx -y mutagen-ru-mcp で起動します。通常はクライアントが自動で起動するため、以下のコマンドはすでに設定ファイルに記載されています。

3. AI への接続

すべての例で、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 が環境から変数を渡します。同じサーバーを 1 つのコマンドで追加するには、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

mcp_config.json は Cascade パネルから開けます:メニュー ... → 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 セッションで共有されます。

できること

以下では、チャットでの依頼例、エージェントが呼び出すツール、得られる結果を紹介します。例では、ニッチ市場をストレッチ天井、Wordstat の地域をロシア(225)としています。「実際の応答」と記載した箇所は、2026 年 10 月 14 日に Mutagen に送信したリクエストの実際の結果を、冒頭の数行に短縮したものです。「例」と記載した箇所では、表に応答の形式を示しています。数値は仮のものです。

料金は、2026 年 10 月 14 日に行った実測に基づいています:頻度は 1 フレーズ・1 種類あたり 0.02 ₽、「Wordstat キー」は 200 フレーズで 0.02 ₽、または 2000 フレーズで 0.20 ₽、競合度は 1 フレーズあたり 0.30 ₽ です。Mega ツールのレポートでは料金は発生しませんが、サブスクリプションが必要で、1 日あたりのリクエスト枠を消費します。

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.ru)」という行が追加されます(XLSX では「Источник」シート)。これは Mutagen API の利用規約で定められています。

mutagen-ru freq -t n,qs -i phrases.txt -o freq.xlsx
mutagen-ru keywords "натяжные потолки" --format json > tails.json
Google スプレッドシート

次の 2 つの方法があります。

  1. 一度だけ取り込む。 「ファイル」→「インポート」→「アップロード」を選択し、core.csv を指定します。区切り文字の種類は「セミコロン」にします。

  2. 自動で取り込む。 IMPORTDATA が読み取れるのは、公開リンク上のカンマ区切り CSV または TSV のみです。examples/google-sheets/to-sheets-csv.mjs は CLI の JSON エクスポートをカンマ区切り CSV に変換します。このファイルを公開リポジトリまたは任意の公開 URL に配置し、セルに次のように入力します。

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

    Google スプレッドシートは、時間をおいて自動的にファイルを再読み込みします。非公開リポジトリのファイルは、この方法では読み込めません。

データベース

examples/db/to-sqlite.mjs は、組み込みの node:sqlite(Node 22.13+ または 24)を使って、収集日とともに JSON エクスポートを SQLite に保存します。このテーブルを使って、検索頻度の履歴を簡単に確認できます。

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 を作成するエージェント

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 и пользовательском соглашении.

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。