Сервер MCP позволяет Claude создавать и запускать пользовательские инструменты в режиме реального времени

Разработчик создал MCP-сервер, который позволяет Claude создавать, обновлять и запускать новые инструменты во время выполнения без необходимости повторного развертывания. В отличие от стандартных MCP-конфигураций, где инструменты фиксированы на момент развертывания, эта система обеспечивает динамическое создание инструментов.
Основная архитектура
Сервер реализует пять основных MCP-инструментов:
- Список инструментов — возвращает доступные инструменты
- Получить инструмент — получает полное определение инструмента, включая код
- Создать инструмент — сохраняет новый инструмент в реестре базы данных
- Обновить инструмент — изменяет существующий инструмент
- Запустить инструмент — выполняет любой сохраненный инструмент по имени
Процесс выполнения инструментов
Мета-инструмент "Запустить инструмент" работает следующим образом:
- Ищет запрошенный инструмент в таблице MySQL
- Извлекает его код
- Передает параметры в качестве контекста
- Запускает его в подпроцессе Deno с ограниченными разрешениями
- Возвращает результат
Реализация песочницы
Разработчик оценил Node VM, isolated-vm и Docker перед выбором Deno для песочницы. Deno был выбран потому что:
- Чистая модель разрешений с детальным контролем сети/файловой системы/подпроцессов
- Нативная поддержка npm
- Встроенный TypeScript
- ~50 мс холодный старт против 500+ мс у Docker
Песочница использует эти флаги: --allow-net --deny-read --deny-write --deny-run --deny-ffi. Это позволяет коду инструментов выполнять HTTP-запросы и использовать npm-пакеты, но предотвращает доступ к файловой системе или создание процессов.
Формат кода инструментов
Код инструментов — это JavaScript/TypeScript, который получает объект контекста для параметров. Пример из источника:
const response = await fetch(`https://api.example.com/${context.city}`);
const data = await response.json();
return { temp: data.temp, conditions: data.weather[0].description };
Возможность саморасширения
Система обеспечивает цикл саморасширения: Claude определяет, что ему нужна возможность → создает инструмент → использует его немедленно → обновляет его, если результат неверный. Это позволяет системе становиться более способной со временем без вмешательства разработчика.
Реализация построена на n8n в качестве MCP-сервера с MySQL для хранения инструментов и работает в производственной среде уже несколько месяцев.
📖 Read the full source: r/ClaudeAI
👀 Смотрите также

Локальный конвейер перевода книг использует модели Qwen 32B и Mistral 24B с контекстуальной системой RAG
Разработчик создал полностью автоматизированный конвейер перевода книг из PDF в ePub с использованием восьми скриптов на Python, Marker для извлечения PDF, Qwen 32B для перевода с глобальным глоссарием и Mistral 24B для стилевой правки.

Tatu: Открытый слой безопасности для Claude, блокирующий секреты и деструктивные команды в блоках кода
Tatu — это система перехвата с открытым исходным кодом, которая в реальном времени перехватывает действия Claude Code, чтобы блокировать утечку секретов, помечать персональные данные и отклонять деструктивные команды до их выполнения. Установка осуществляется через pip/pipx командой 'tatu-hook init' для включения режима аудита.

Quiver: Графический интерфейс для управления и синхронизации навыков Claude Code
Quiver — это бесплатный инструмент с открытым исходным кодом и графическим интерфейсом, который предоставляет веб-интерфейс для управления навыками Claude Code. Он позволяет пользователям просматривать локальные навыки и плагины из маркетплейса, редактировать файлы SKILL.md, синхронизировать данные через Git и устанавливать навыки без использования терминала.

Фабрика агентов: Плагин Claude Code для создания постоянных команд AI-субагентов
Agent-factory — это плагин Claude Code, который создает постоянные команды под-агентов с различными личностями и файловой памятью. Он формирует 2-5 агентов на проект через диалоговое интервью, где каждый агент выполняет определенные роли, такие как ревью кода, отслеживание технического долга или стратегия.