MCP Coding Assistant с поддержкой OpenAI и других поставщиков LLM
Мощная реконструкция Claude Code на Python с улучшенной визуализацией в реальном времени, управлением затратами и возможностями сервера Model Context Protocol (MCP). Этот инструмент предоставляет интерфейс на естественном языке для задач разработки программного обеспечения с поддержкой нескольких поставщиков LLM.
Основные характеристики
Поддержка нескольких поставщиков: работает с OpenAI, Anthropic и другими поставщиками LLM
Интеграция протокола контекста модели:
Запуск в качестве сервера MCP для использования с Claude Desktop и другими клиентами
Подключитесь к любому серверу MCP с помощью встроенного клиента MCP
Многоагентная синхронизация для решения сложных проблем
Визуализация инструмента в реальном времени: отслеживайте ход выполнения инструмента и результаты в реальном времени.
Управление расходами: отслеживайте использование токенов и расходы с помощью бюджетного контроля.
Комплексный набор инструментов: операции с файлами, поиск, выполнение команд и многое другое
Улучшенный пользовательский интерфейс: богатый интерфейс терминала с индикаторами хода выполнения и подсветкой синтаксиса
Оптимизация контекста: интеллектуальное сжатие разговоров и управление памятью
Координация агентов: специализированные агенты с разными ролями могут совместно работать над задачами.
Related MCP server: MCP Server Demo
Установка
Клонировать этот репозиторий
Установить зависимости:
pip install -r requirements.txtСоздайте файл
.envс вашими ключами API:
# Choose one or more providers
OPENAI_API_KEY=your_openai_api_key_here
ANTHROPIC_API_KEY=your_anthropic_api_key_here
# Optional model selection
OPENAI_MODEL=gpt-4o
ANTHROPIC_MODEL=claude-3-opus-20240229Использование
Режим CLI
Запустите CLI с поставщиком по умолчанию (определяется по доступным ключам API):
python claude.py chatУкажите поставщика и модель:
python claude.py chat --provider openai --model gpt-4oУстановите лимит бюджета для управления расходами:
python claude.py chat --budget 5.00Режим сервера MCP
Запуск в качестве сервера Model Context Protocol:
python claude.py serveНачните в режиме разработки с помощью MCP Inspector:
python claude.py serve --devНастройте хост и порт:
python claude.py serve --host 0.0.0.0 --port 8000Укажите дополнительные зависимости:
python claude.py serve --dependencies pandas numpyЗагрузить переменные среды из файла:
python claude.py serve --env-file .envРежим клиента MCP
Подключитесь к серверу MCP, используя Claude в качестве механизма рассуждений:
python claude.py mcp-client path/to/server.pyУкажите модель Клода:
python claude.py mcp-client path/to/server.py --model claude-3-5-sonnet-20241022Попробуйте включенный пример сервера:
# In terminal 1 - start the server
python examples/echo_server.py
# In terminal 2 - connect with the client
python claude.py mcp-client examples/echo_server.pyМногоагентный режим MCP
Запустите многоагентный клиент с синхронизированными агентами:
python claude.py mcp-multi-agent path/to/server.pyИспользуйте пользовательский файл конфигурации агента:
python claude.py mcp-multi-agent path/to/server.py --config examples/agents_config.jsonПример с эхо-сервером:
# In terminal 1 - start the server
python examples/echo_server.py
# In terminal 2 - launch the multi-agent client
python claude.py mcp-multi-agent examples/echo_server.py --config examples/agents_config.jsonДоступные инструменты
Вид: Чтение файлов с дополнительными ограничениями строк
Редактировать: изменить файлы с точной заменой текста
Заменить: создать или перезаписать файлы
GlobTool: Поиск файлов по шаблону
GrepTool: Поиск содержимого файла с использованием регулярных выражений
LS: Список содержимого каталога
Bash: выполнение команд оболочки
Команды чата
/help: Показать доступные команды
/compact: Сжать историю разговоров для сохранения токенов
/version: Показать информацию о версии
/providers: Список доступных поставщиков LLM
/cost: Показать информацию о стоимости и использовании
/budget [сумма]: Установить лимит бюджета
/quit, /exit: Выход из приложения.
Архитектура
Claude Code Python Edition построен на основе модульной архитектуры:
/claude_code/
/lib/
/providers/ # LLM provider implementations
/tools/ # Tool implementations
/context/ # Context management
/ui/ # UI components
/monitoring/ # Cost tracking & metrics
/commands/ # CLI commands
/config/ # Configuration management
/util/ # Utility functions
claude.py # Main CLI entry point
mcp_server.py # Model Context Protocol serverИспользование с протоколом контекста модели
Использование Claude Code в качестве MCP-сервера
После запуска сервера MCP вы можете подключиться к нему с помощью Claude Desktop или других клиентов, совместимых с MCP:
Установите и запустите сервер MCP:
python claude.py serveОткройте страницу конфигурации в вашем браузере:
http://localhost:8000Следуйте инструкциям по настройке Claude Desktop, включая:
Скопируйте конфигурацию JSON
Загрузите автоматически настроенный файл JSON
Пошаговые инструкции по настройке
Использование Claude Code в качестве MCP-клиента
Чтобы подключиться к любому серверу MCP с помощью Claude Code:
Убедитесь, что ваш ключ API Anthropic находится в файле среды или .env.
Запустите сервер MCP, к которому вы хотите подключиться.
Подключитесь с помощью клиента MCP:
python claude.py mcp-client path/to/server.pyВведите запросы в интерактивном интерфейсе чата
Использование многоагентного режима
Для сложных задач многоагентный режим позволяет нескольким специализированным агентам сотрудничать:
Создайте файл конфигурации агента или используйте предоставленный пример.
Запустите свой MCP-сервер
Запустите многоагентный клиент:
python claude.py mcp-multi-agent path/to/server.py --config examples/agents_config.jsonИспользуйте командный интерфейс для взаимодействия с несколькими агентами:
Введите сообщение для трансляции всем агентам
Используйте
/talk Agent_Name messageдля прямого общенияИспользуйте
/agentsчтобы увидеть всех доступных агентов.Используйте
/historyдля просмотра истории разговоров.
Внося вклад
Форк репозитория
Создать ветку функций
Внедрите свои изменения с помощью тестов
Отправить запрос на извлечение
Лицензия
Массачусетский технологический институт
Благодарности
Этот проект вдохновлен инструментом Claude Code CLI от Anthropic, переработанным на Python с дополнительными функциями для улучшенной видимости, управления затратами и возможностями сервера MCP.# OpenAI Code Assistant
Мощный помощник по кодированию на основе командной строки и API, использующий API OpenAI с вызовом функций и потоковой передачей.
Функции
Интерактивный CLI для помощи в кодировании
Веб-API для интеграции с другими приложениями
Реализация сервера Model Context Protocol (MCP)
Поддержка репликации для высокой доступности
Архитектура на основе инструментов для расширяемости
Обучение с подкреплением для оптимизации инструментов
Веб-клиент для взаимодействия через браузер
Установка
Клонировать репозиторий
Установить зависимости:
pip install -r requirements.txtУстановите свой ключ API OpenAI:
export OPENAI_API_KEY=your_api_key
Использование
Режим CLI
Запустите помощника в интерактивном режиме CLI:
python cli.pyПараметры:
--model,-m: Укажите модель для использования (по умолчанию: gpt-4o)--temperature,-t: Установить температуру для генерации ответа (по умолчанию: 0)--verbose,-v: Включить подробный вывод с дополнительной информацией--enable-rl/--disable-rl: Включить/отключить обучение с подкреплением для оптимизации инструмента--rl-update: вручную запустить обновление модели RL
Режим API-сервера
Запустите помощник как API-сервер:
python cli.py serveПараметры:
--host: Адрес хоста для привязки (по умолчанию: 127.0.0.1)--port,-p: Порт для прослушивания (по умолчанию: 8000)--workers,-w: Количество рабочих процессов (по умолчанию: 1)--enable-replication: Включить репликацию между экземплярами--primary/--secondary: Является ли этот экземпляр первичным или вторичным--peer: Экземпляры одноранговых узлов для репликации (хост:порт), можно указать несколько раз
Режим сервера MCP
Запустите помощник как сервер Model Context Protocol (MCP):
python cli.py mcp-serveПараметры:
--host: Адрес хоста для привязки (по умолчанию: 127.0.0.1)--port,-p: Порт для прослушивания (по умолчанию: 8000)--dev: Включить режим разработки с дополнительным протоколированием--dependencies: Дополнительные зависимости Python для установки--env-file: Путь к файлу .env с переменными среды
Режим клиента MCP
Подключитесь к серверу MCP, используя помощника в качестве механизма рассуждений:
python cli.py mcp-client path/to/server.pyПараметры:
--model,-m: Модель, используемая для рассуждений (по умолчанию: gpt-4o)--host: Адрес хоста для сервера MCP (по умолчанию: 127.0.0.1)--port,-p: Порт для сервера MCP (по умолчанию: 8000)
Скрипт развертывания
Для более простого развертывания используйте предоставленный скрипт:
./deploy.sh --host 0.0.0.0 --port 8000 --workers 4Чтобы включить репликацию:
# Primary instance
./deploy.sh --enable-replication --port 8000
# Secondary instance
./deploy.sh --enable-replication --secondary --port 8001 --peer 127.0.0.1:8000Веб-клиент
Чтобы использовать веб-клиент, откройте web-client.html в браузере. Убедитесь, что сервер API запущен.
Конечные точки API
Стандартные конечные точки API
POST /conversation: Создать новый разговорPOST /conversation/{conversation_id}/message: Отправить сообщение в беседуPOST /conversation/{conversation_id}/message/stream: Потоковая передача ответа на сообщениеGET /conversation/{conversation_id}: Получить детали разговораDELETE /conversation/{conversation_id}: Удалить беседуGET /health: Конечная точка проверки работоспособности
Конечные точки протокола MCP
GET /: Проверка работоспособности (протокол MCP)POST /context: Получить контекст для шаблона подсказкиGET /prompts: Список доступных шаблонов подсказокGET /prompts/{prompt_id}: Получить определенный шаблон подсказкиPOST /prompts: Создать новый шаблон подсказкиPUT /prompts/{prompt_id}: обновить существующий шаблон приглашенияDELETE /prompts/{prompt_id}: Удалить шаблон подсказки
Репликация
Система репликации позволяет запускать несколько экземпляров помощника с синхронизированным состоянием. Это обеспечивает:
Высокая доступность
Балансировка нагрузки
Отказоустойчивость
Чтобы настроить репликацию:
Запустите первичный экземпляр с помощью
--enable-replicationЗапустите вторичные экземпляры с помощью
--enable-replication --secondary --peer [primary-host:port]
Инструменты
Помощник включает в себя различные инструменты:
Погода: Получите текущую погоду для определенного местоположения.
Вид: Чтение файлов из файловой системы
Редактировать: Редактировать файлы
Заменить: Записать файлы
Bash: выполнение команд bash
GlobTool: Сопоставление файлов с шаблоном
GrepTool: Поиск контента
LS: Список содержимого каталога
JinaSearch: поиск в Интернете с использованием Jina.ai.
JinaFactCheck: проверка фактов с помощью Jina.ai
JinaReadURL: чтение и обобщение веб-страниц
Команды CLI
/help: Показать справочное сообщение/compact: Сжать разговор, чтобы уменьшить использование токенов./status: Показать использование токена и информацию о сеансе/config: Показать текущие настройки конфигурации/rl-status: Показать статус оптимизатора инструмента RL (если включен)/rl-update: Обновить модель RL вручную (если включено)/rl-stats: Показать статистику использования инструмента (если включено)
This server cannot be installed
Maintenance
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/arthurcolle/openai-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
