MCP контекстное раздувание: реальные затраты и практическое решение для пользователей Claude Code

Пользователь Reddit, запускавший 9 серверов MCP в Claude Code в течение четырех месяцев, подробно описал скрытые затраты и снижение производительности, с которыми столкнулся, а также конкретное решение. Пост обязателен к прочтению для всех, кто использует MCP в продакшене.
Математика
С 9 серверами (файловая система, GitHub, Stripe, Linear, Notion, Postgres, Sentry, AWS и кастомный), предоставляющими в общей сложности 142 инструмента, холодный старт потребляет 38k токенов системного промпта + схем инструментов на каждом шаге. При 200 шагах в день это 7,6 млн входных токенов в день. По ценам Sonnet (~$15/M выходных, ~$3/M входных) это составляет ~$23/день или ~$700/месяц только за определение инструментов MCP — до начала реальной работы. Кэш помогает только при одинаковых префиксах; смена одного MCP-сервера инвалидирует его.
Что ломается
- Выбор инструмента ухудшается: С 142 инструментами в контексте Клод начал выбирать неправильный инструмент для очевидных запросов (например, использовал
linear_search_issues, когда его просили прочитать файл). - Медленное перечисление: Серверы с большими схемами, такие как AWS, занимают 4–6 секунд для вывода списка инструментов.
- Тихое распространение ошибок: Один плохо описанный инструмент может испортить ранжирование для всех связанных запросов.
Решение: Паттерн шлюза с BM25
Пользователь перешел на паттерн шлюза, используя Ratel — открытую библиотеку на Rust с ранжированием BM25, работающую в том же процессе. Теперь Клод видит только три инструмента: search_tools, invoke_tool и auth. Все остальное ранжируется по запросу. Результаты:
- Холодный старт снизился с 38k до ~4k токенов.
- Выбор неправильного инструмента почти устранен, потому что модель видит только топ-5, отсортированных по запросу.
- Настройка заняла 10 минут (одна команда для импорта в Claude Code).
Автор отмечает, что большинство стартапов по "оптимизации MCP" — это просто BM25-поиск под видом инновации. Описания инструментов короткие, структурированные и полные совпадений ключевых слов — не нужны ни векторная БД, ни LLM в цикле. BM25 по плоской проекции названия + описания дает 90% результата детерминистически за микросекунды, офлайн.
Ключевой урок: "заменить" лучше, чем "предложить". Если ваш шлюз дает модели 5 инструментов вместо 142, математика работает. Если он предлагает 5 вместе с 142, модель все равно загружает 142, и вы ничего не сэкономили.
📖 Источник: r/ClaudeAI
👀 Смотрите также

Открытая система "Второй мозг", построенная на основе кода Claude для управления задачами
Открытая система под названием Kipi System использует Claude Code для отслеживания открытых тем, составления последующих действий и управления задачами, получая данные из календаря, электронной почты, CRM и социальных лент. Она генерирует ежедневный HTML-файл с заранее подготовленными действиями, отсортированными по сложности.

Рукузу: Перенос 200 000 строк кода графовой базы данных с C++ на Rust с помощью систематического тестирования
Проект Rukuzu описывает рабочий процесс переноса встроенной графовой базы данных kuzu на языке C++ объемом 200 000 строк на Rust, используя пользовательскую команду Claude Code для одновременного поддержания обеих версий и проверки корректности через 2 700+ тестов.

Сервер Kubeez MCP подключает Claude к более чем 70 медиа-моделям ИИ.
Kubeez выпустил MCP-сервер, который подключает Claude к более чем 70 AI-моделям для генерации изображений, видео, музыки и голоса. Сервер поддерживает аутентификацию OAuth и обеспечивает асинхронную генерацию, при которой Claude опрашивает статус и возвращает CDN-ссылки.

Почему ИИ-агенты для кода выдают мусор после 20 итераций: слепота к контексту
Глубокий аудит API-логов показывает, что Cursor и Claude Code не глупеют — они задыхаются в раздутых контекстных окнах, заполненных шумом, что приводит к разрушению архитектуры.