Skip to content
haraldalder-vibemoggerPublic

About

Срезает расход токенов на MCP на 75–98%. Билдер кодового SDK для Claude + пресеты + скилл-харвестер. Всё на русском 🥗

Resources

Stars

18 stars

Watchers

0 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🥗 mcp-diet — посади свои MCP-серверы на диету

Набор скиллов для Claude, который конвертирует любой MCP-сервер в «кодовый SDK»: вместо того чтобы грузить схемы всех тулов в контекст модели на каждый запрос, Claude пишет обычный код, который вызывает те же тулы. Паттерн описан в engineering-блоге Anthropic «Code execution with MCP» (в их примере экономия — со 150 000 токенов до 2 000, т.е. 98,7%).

Работает в Claude Code и в Cowork / claude.ai (нужна включённая функция code execution / «выполнение кода и создание файлов»).

Что внутри

Компонент Что делает
skills/mcp-to-code Билдер. Подключается к любому MCP-серверу, выгружает схемы тулов и генерирует python-пакет mcp_sdk/<server>/ с обёртками + считает экономию токенов
skills/mcp-to-code/presets Топ-10 серверов для вайбкода с готовыми командами подключения: GitHub, Supabase, Playwright, Context7, Notion, Figma, Stripe, Sentry, Linear, Mixpanel
skills/skill-harvester Харвестер. Сохраняет рабочий код из сессии как переиспользуемый скилл — агент постепенно строит себе toolbox
examples/everything-demo Живой пример: что получается на выходе билдера
dist/*.zip Готовые ZIP скиллов для загрузки в claude.ai / Cowork

Почему это экономит токены

При прямом подключении MCP большинство клиентов кладут схемы всех тулов в контекст на каждый запрос. 40 тулов ≈ десятки тысяч токенов, даже если ты спросил «привет». Плюс каждый промежуточный результат (например, здоровенный JSON из Mixpanel) дважды прокачивается через модель: на выходе одного тула и на входе следующего.

С кодовым SDK:

  1. Модель читает только INDEX.md — одна строка на тул.
  2. Полную схему открывает только для тула, который реально нужен.
  3. Данные между вызовами живут в переменных python-скрипта, а не в контексте.
  4. Циклы/фильтры/ретраи выполняются кодом, а не цепочкой «tool call → ответ → tool call».

Точка окупаемости по замерам сообщества — примерно от 6 тулов на сервере. Если у сервера 2–3 тула — оставь его как есть, диета не нужна.

Установка

Вариант А: Claude Code

git clone https://github.com/haraldalder-vibemogger/mcp-diet
# скиллы проекта:
mkdir -p .claude/skills && cp -r mcp-diet/skills/* .claude/skills/
# или глобально для всех проектов:
mkdir -p ~/.claude/skills && cp -r mcp-diet/skills/* ~/.claude/skills/

Перезапусти сессию Claude Code — скиллы подхватятся автоматически.

Вариант Б: Cowork / claude.ai

  1. Скачай dist/mcp-to-code.zip и dist/skill-harvester.zip (или собери сам: ZIP, внутри которого лежит папка скилла со SKILL.md).
  2. В приложении: Customize → Skills → «+» → загрузить ZIP (в вебе: Настройки → Возможности). Включи скилл тумблером.
  3. Убедись, что включено «Выполнение кода и создание файлов» (Code execution). Скиллы, включённые в аккаунте claude.ai, автоматически доступны и в Cowork.

Вариант В: без установки вообще

Кинь Клоду папку/архив репозитория и напиши: «Прочитай skills/mcp-to-code/SKILL.md и оптимизируй мой Mixpanel MCP по этой инструкции». Работает везде, где есть code execution.

Быстрый старт: Mixpanel за 3 шага

Скажи Клоду:

Используй скилл mcp-to-code и сконвертируй Mixpanel MCP в кодовый SDK

Под капотом произойдёт:

pip install mcp
python3 scripts/introspect.py --name mixpanel \
    --cmd "npx -y mcp-remote https://mcp.mixpanel.com/mcp"   # откроется OAuth в браузере
python3 scripts/gen_wrappers.py tools_mixpanel.json --out ./mcp_sdk

На выходе — пакет mcp_sdk/mixpanel/, отчёт «во сколько токенов обходились схемы vs сколько стало» (заскринь и кинь в комменты 😉) и блок правил в CLAUDE.md проекта. После этого прямое MCP-подключение Mixpanel в клиенте можно отключить.

Дальше Claude работает так:

from mcp_sdk.mixpanel import tools as mp
events = mp.query_events(...)            # имена тулов — в mcp_sdk/mixpanel/INDEX.md
signups = [e for e in events if e["name"] == "signup"]   # фильтрация В КОДЕ, не в контексте
print(len(signups))                       # в модель уходит одна цифра, а не весь JSON

Требования

  • python 3.10+ и пакет mcp: pip install mcp (в песочнице Claude — pip install mcp --break-system-packages)
  • node 18+ — только для stdio-серверов и OAuth через mcp-remote
  • Ничего из этого не нужно ставить руками заранее: скилл сам поставит и сам скажет, чего не хватает

Авторизация: важное про OAuth и песочницы

Где запускаешь OAuth-серверы (Mixpanel, Notion, Figma...) Серверы с токеном (GitHub PAT, Stripe key...)
Claude Code на твоей машине ✅ работает (браузер откроется) ✅ работает
Cowork / claude.ai (облачная песочница) ❌ браузер не откроется ✅ работает через --url + --header

Обходной путь для OAuth в облаке: запусти introspect.py локально у себя (это один файл без зависимостей кроме mcp), получи tools_<server>.json и загрузи его Клоду — генерация и дальнейшая работа секретов не требуют. Либо используй Claude Code.

Секреты никогда не сохраняются в файлы. В config.json попадают только имена env-переменных. Перед запуском: export MY_TOKEN=....

Пресеты: топ-10 MCP для вайбкода

В skills/mcp-to-code/presets/*.json — готовые команды подключения для: GitHub · Supabase · Playwright · Context7 · Notion · Figma · Stripe · Sentry · Linear · Mixpanel.

⚠️ Эндпоинты и пакеты у вендоров меняются. Если пресет не завёлся — открой ссылку docs из этого же файла, возьми актуальное подключение, поправь пресет у себя и пришли PR, чтобы починилось у всех. Так этот репозиторий и поддерживается.

Свой сервер добавить просто: скопируй любой пресет, поменяй name, introspect_cmd и docs.

skill-harvester: вторая передача

Когда Claude решил тебе нетривиальную задачу кодом — скажи «сохрани как скилл». Он выделит переиспользуемое ядро, уберёт секреты, оформит SKILL.md по стандарту и скажет, как установить (Claude Code / claude.ai). Через месяц у тебя личная библиотека навыков вместо повторного изобретения велосипедов (и повторной оплаты токенов за них).

Безопасность — прочитай, это важно

  • Сгенерированные обёртки вызывают реальные тулы реальных сервисов. Тул delete_project удалит проект по-настоящему. Скилл по умолчанию тестирует только read-only тулы, но ответственность за write-операции — на тебе.
  • Code execution означает исполнение кода. Ревьюй, что запускаешь, особенно чужие форки этого репозитория.
  • Данные из твоих сервисов через MCP попадают в контекст модели — читай политики своего AI-провайдера и вендора (например, Mixpanel прямо предупреждает об этом в доке).

Траблшутинг (сначала сюда, потом в issues)

Симптом Лечение
ImportError: streamablehttp_client Версии библиотеки mcp переименовали клиент. Скрипты в репо совместимы с обеими — обнови файлы скилла до свежих из репозитория
Переменная окружения X пуста export X=твой_токен в той же сессии терминала и перезапусти
Таймаут при интроспекции OAuth-сервера Ты в облачной песочнице — см. раздел «Авторизация»
npm error SELF_SIGNED_CERT в песочнице npm config set strict-ssl false (только в песочнице, не на своей машине)
Cannot uninstall PyJWT при pip install mcp pip install mcp --break-system-packages --ignore-installed PyJWT
Тул возвращает ошибку авторизации, хотя интроспекция прошла Токен протух или у него нет нужных скоупов — перевыпусти
В tools.py нет тула, который есть в доке сервиса Сервер отдаёт тулы в зависимости от прав. Перелогинься с нужными скоупами и перегенерируй
Хочу перегенерировать после обновления сервера Просто запусти шаги 1–2 заново — генерация детерминированная, локальные правки в mcp_sdk не делай

FAQ

Это замена MCP? Нет. MCP остаётся транспортом (подключение, авторизация, discovery) — мы убираем только прямую экспозицию схем в контекст модели.

Почему python, а не TypeScript как в блоге Anthropic? Python-рантайм гарантированно есть и в Claude Code, и в песочнице Cowork/claude.ai. Паттерн тот же.

Стоит ли конвертировать сервер с 3 тулами? Нет, окупается примерно от 6 тулов.

Можно несколько серверов? Да, они складываются в один пакет mcp_sdk/ и живут рядом. Кросс-серверные сценарии (взять из Mixpanel → записать в Notion) — главный профит: данные идут напрямую в коде, минуя контекст.

Поддержка

Вопросы и баги — только через GitHub Issues (перед этим — «Траблшутинг» выше). Личные сообщения автору с вопросами по установке телепортируются в /dev/null 🙂 PR с новыми пресетами и починкой протухших эндпоинтов — самый ценный вклад.

Лицензия

MIT. Делай что хочешь, ссылка на источник приветствуется.


Сделано для подписчиков ika.explains. Идея паттерна — Anthropic Engineering, реализация — наша.

About

Срезает расход токенов на MCP на 75–98%. Билдер кодового SDK для Claude + пресеты + скилл-харвестер. Всё на русском 🥗

Resources

Stars

18 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages