Sistema de orquestación de agentes MCP
Una implementación en Python de un sistema de orquestación de agentes basado en estados utilizando el Protocolo de Contexto de Modelo (MCP).
¿Qué es MCP?
El Protocolo de Contexto de Modelo (MCP) permite que las aplicaciones proporcionen contexto para los LLM de forma estandarizada, separando la necesidad de proporcionar contexto de la interacción real con el LLM. Con MCP, se pueden crear servidores que exponen:
- Recursos : Fuentes de datos que proporcionan información a los LLM
- Herramientas : Funciones que permiten a los LLM realizar acciones
- Indicaciones : Plantillas reutilizables para interacciones LLM
Instalación
Prerrequisitos
- Python 3.10 o superior
- MCP Python SDK 1.2.0 o superior
Configuración de su entorno
Uso de uv (recomendado)
Usando pip
Clonar o descargar archivos del proyecto
Coloque los archivos del proyecto en su directorio:
orchestrator.py
: el servidor MCP principal que implementa la máquina de estadosorchestrator_client.py
- Cliente que demuestra el flujo de orquestaciónrequirements.txt
- Dependencias del proyecto.gitignore
- Archivo ignorado de Git
Estructura del proyecto
orchestrator.py
: el servidor MCP principal que implementa la máquina de estadosorchestrator_client.py
- Cliente que demuestra el flujo de orquestaciónrequirements.txt
- Dependencias del proyecto
Ejecución del sistema de orquestación
- Inicie el servidor de orquestación directamente para realizar pruebas:
- En una terminal separada, ejecute el cliente para ver la orquestación en acción:
Integración con Claude para escritorio
1. Instalar Claude para escritorio
Asegúrate de tener instalado Claude para escritorio. Puedes descargar la última versión desde el sitio web de Anthropic .
2. Configurar Claude para escritorio
- Abra el archivo de configuración de Claude for Desktop:macOS/Linux:Ventanas:
- Agregue la configuración del servidor del orquestador:Reemplace la ruta con la ruta absoluta a su archivo orchestrator.py.
- Guarde el archivo de configuración y reinicie Claude for Desktop.
3. Uso del orquestador en Claude
Una vez configurado, podrás:
- Abrir Claude para escritorio
- Haga clic en el icono del servidor MCP en la barra lateral
- Seleccione "agente-orquestador" de la lista de servidores disponibles
- Comience a interactuar con el sistema de orquestación
Claude podrá:
- Transición entre diferentes estados del agente
- Almacenar y recuperar información de la base de conocimientos
- Mantener el contexto de la conversación a lo largo de las transiciones de estado
- Acceda a indicaciones específicas del estado
Estados del agente
El sistema de orquestación implementa una máquina de estados con los siguientes estados:
- IDLE : Esperando instrucciones
- PLANIFICACIÓN : Crear un plan estructurado para una tarea
- INVESTIGACIÓN : Recopilar información necesaria para una tarea.
- EJECUTAR : Llevar a cabo acciones planificadas
- REVISIÓN : Evaluación de resultados y determinación de próximos pasos
- ERROR : Manejo de errores o situaciones inesperadas
Personalización del sistema
Añadiendo nuevos estados
- Agregue el estado a la enumeración
AgentState
enorchestrator.py
- Crear una función de aviso para el nuevo estado
- Actualizar la lógica de transición en
_get_available_transitions()
- Agregar controladores para el nuevo estado en las funciones de acceso a recursos
Creación de herramientas personalizadas
Agregue nuevas herramientas creando funciones decoradas con @mcp.tool()
:
Desarrollo y pruebas
Uso de la CLI de MCP
La CLI de MCP proporciona herramientas para el desarrollo y las pruebas:
Pruebas manuales con Python
Recursos
Licencia
Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
Un sistema de orquestación de agentes basado en estados que permite transiciones entre diferentes estados (INACTIVO, PLANIFICANDO, INVESTIGANDO, EJECUTANDO, REVISANDO, ERROR) mientras mantiene el contexto de la conversación y proporciona indicaciones específicas para cada estado.
Related MCP Servers
- -securityAlicense-qualityA server for task orchestration and coordination, facilitating task management with dependencies, multi-instance collaboration, and persistent task tracking.Last updated -717JavaScriptMIT License
- -securityAlicense-qualityA 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 -313MIT License
- -securityFlicense-qualityA 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
- -securityAlicense-qualityAn 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 -5TypeScriptMIT License