Skip to main content
Glama

MCP Agent Orchestration System

by aviz85

Система оркестровки агента MCP

Реализация на Python системы оркестровки агентов на основе состояний с использованием протокола контекста модели (MCP).

Что такое МКП?

Протокол контекста модели (MCP) позволяет приложениям предоставлять контекст для LLM стандартизированным способом, отделяя заботы предоставления контекста от фактического взаимодействия LLM. С помощью MCP вы можете создавать серверы, которые предоставляют:

  • Ресурсы : источники данных, предоставляющие информацию магистрам права
  • Инструменты : функции, позволяющие LLM выполнять действия.
  • Подсказки : шаблоны многократного использования для взаимодействия с LLM

Установка

Предпосылки

  • Python 3.10 или выше
  • MCP Python SDK 1.2.0 или выше

Настройка вашей среды

Использование УФ (рекомендуется)
# Install uv curl -LsSf https://astral.sh/uv/install.sh | sh # Create a new directory for our project uv init mcp-agents-orchestra cd mcp-agents-orchestra # Create virtual environment and activate it uv venv source .venv/bin/activate # On Unix/macOS .venv\Scripts\activate # On Windows # Install dependencies uv add "mcp[cli]" httpx
Использование пипа
# Create a new directory for our project mkdir mcp-agents-orchestra cd mcp-agents-orchestra # Create a virtual environment python -m venv venv source venv/bin/activate # On Unix/macOS venv\Scripts\activate # On Windows # Install dependencies pip install "mcp[cli]" httpx

Клонировать или загрузить файлы проекта

Поместите файлы проекта в свой каталог:

  • orchestrator.py — основной сервер MCP, реализующий конечный автомат
  • orchestrator_client.py — Клиент, демонстрирующий процесс оркестровки
  • requirements.txt — Зависимости для проекта
  • .gitignore — файл игнорирования Git

Структура проекта

  • orchestrator.py — основной сервер MCP, реализующий конечный автомат
  • orchestrator_client.py — Клиент, демонстрирующий процесс оркестровки
  • requirements.txt — Зависимости для проекта

Запуск системы оркестровки

  1. Запустите сервер оркестровки напрямую для тестирования:
python orchestrator.py
  1. В отдельном терминале запустите клиент, чтобы увидеть оркестровку в действии:
python orchestrator_client.py

Интеграция с Claude для рабочего стола

1. Установите Claude для рабочего стола

Убедитесь, что у вас установлен Claude for Desktop. Вы можете загрузить последнюю версию с сайта Anthropic .

2. Настройте Claude для рабочего стола

  1. Откройте файл конфигурации Claude for Desktop:macOS/Linux:
    # Create or edit the configuration file code ~/Library/Application\ Support/Claude/claude_desktop_config.json
    Окна:
    # Path may vary depending on your Windows version code %APPDATA%\Claude\claude_desktop_config.json
  2. Добавьте конфигурацию сервера оркестратора:
    { "mcpServers": { "agent-orchestrator": { "command": "python", "args": [ "/ABSOLUTE/PATH/TO/YOUR/PROJECT/orchestrator.py" ] } } }
    Замените путь на абсолютный путь к вашему файлу orchestrator.py.
  3. Сохраните файл конфигурации и перезапустите Claude for Desktop.

3. Использование Orchestrator в Claude

После настройки вы сможете:

  1. Открыть Claude для рабочего стола
  2. Нажмите на значок сервера MCP на боковой панели.
  3. Выберите «agent-orchestrator» из списка доступных серверов.
  4. Начните взаимодействовать с системой оркестровки

Клод сможет:

  • Переход между различными состояниями агента
  • Хранить и извлекать информацию из базы знаний
  • Поддерживайте контекст разговора при переходах между состояниями
  • Доступ к подсказкам, специфичным для штата

Агентские Штаты

Система оркестровки реализует конечный автомат со следующими состояниями:

  • IDLE : Ожидание инструкций
  • ПЛАНИРОВАНИЕ : Создание структурированного плана для задачи
  • ИССЛЕДОВАНИЕ : Сбор информации, необходимой для выполнения задачи
  • ИСПОЛНЕНИЕ : Выполнение запланированных действий.
  • ОБЗОР : Оценка результатов и определение следующих шагов
  • ОШИБКА : Обработка ошибок или непредвиденных ситуаций

Настройка системы

Добавление новых штатов

  1. Добавьте состояние в перечисление AgentState в orchestrator.py
  2. Создайте функцию подсказки для нового состояния
  3. Обновите логику перехода в _get_available_transitions()
  4. Добавить обработчики для нового состояния в функции доступа к ресурсам

Создание пользовательских инструментов

Добавьте новые инструменты, создав функции, декорированные @mcp.tool() :

@mcp.tool() def my_custom_tool(arg1: str, arg2: int, ctx: Context) -> str: """Description of what this tool does Args: arg1: Description of arg1 arg2: Description of arg2 """ # Implementation here return "Result"

Разработка и тестирование

Использование MCP CLI

MCP CLI предоставляет инструменты для разработки и тестирования:

# Install MCP CLI if you haven't already pip install "mcp[cli]" # Test your server with the MCP Inspector mcp dev orchestrator.py # Install in Claude Desktop mcp install orchestrator.py

Ручное тестирование с помощью Python

from mcp import ClientSession, StdioServerParameters from mcp.client.stdio import stdio_client async with stdio_client(StdioServerParameters(command="python", args=["orchestrator.py"])) as (read, write): async with ClientSession(read, write) as session: await session.initialize() # Test state transitions await session.call_tool("transition_state", arguments={"new_state": "PLANNING"})

Ресурсы

Лицензия

Данный проект лицензирован по лицензии MIT — подробности см. в файле LICENSE.

-
security - not tested
F
license - not found
-
quality - not tested

local-only server

The server can only run on the client's local machine because it depends on local resources.

Система оркестровки агентов на основе состояний, которая позволяет переходить между различными состояниями (ПРОСТОЯЩИЙ, ПЛАНИРОВАНИЕ, ИССЛЕДОВАНИЕ, ВЫПОЛНЕНИЕ, ПРОСМОТР, ОШИБКА), сохраняя при этом контекст разговора и предоставляя подсказки, специфичные для состояния.

  1. Что такое МКП?
    1. Установка
      1. Предпосылки
      2. Настройка вашей среды
      3. Клонировать или загрузить файлы проекта
    2. Структура проекта
      1. Запуск системы оркестровки
        1. Интеграция с Claude для рабочего стола
          1. Установите Claude для рабочего стола
          2. Настройте Claude для рабочего стола
          3. Использование Orchestrator в Claude
        2. Агентские Штаты
          1. Настройка системы
            1. Добавление новых штатов
            2. Создание пользовательских инструментов
          2. Разработка и тестирование
            1. Использование MCP CLI
            2. Ручное тестирование с помощью Python
          3. Ресурсы
            1. Лицензия

              Related MCP Servers

              • -
                security
                A
                license
                -
                quality
                A server for task orchestration and coordination, facilitating task management with dependencies, multi-instance collaboration, and persistent task tracking.
                Last updated -
                7
                17
                JavaScript
                MIT License
              • -
                security
                A
                license
                -
                quality
                A Model Context Protocol server that enables AI agents to interact with ClickUp workspaces, allowing task creation, management, and workspace organization through natural language commands.
                Last updated -
                313
                MIT License
              • -
                security
                F
                license
                -
                quality
                A Model Context Protocol server that enables role-based context management for AI agents, allowing users to establish specific instructions, maintain partitioned memory, and adapt tone for different agent roles in their system.
                Last updated -
                TypeScript
              • -
                security
                A
                license
                -
                quality
                An MCP server that extends AI agents' context window by providing tools to store, retrieve, and search memories, allowing agents to maintain history and context across long interactions.
                Last updated -
                5
                TypeScript
                MIT License

              View all related MCP servers

              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/aviz85/mcp-agents-orchestra'

              If you have feedback or need assistance with the MCP directory API, please join our Discord server