MCP Client with OpenAI Integration
Un cliente Python que se conecta a un servidor MCP (Model Context Protocol) local y utiliza OpenAI para procesamiento de lenguaje natural.
Características
- 🤖 Integración con OpenAI para análisis de consultas en lenguaje natural
- 🔌 Conexión a servidor MCP local
- 🎯 Recomendación automática de herramientas MCP basada en consultas
- 💬 Interfaz interactiva con Rich para una mejor experiencia de usuario
- 📊 Visualización de resultados y explicaciones en lenguaje natural
Instalación
- Clona o descarga este proyecto
- Instala las dependencias:
pip install -r requirements.txt- Configura las variables de entorno:
cp .env.example .envEdita el archivo .env con tus configuraciones:
# OpenAI API Configuration
OPENAI_API_KEY=tu_clave_api_de_openai_aqui
# MCP Server Configuration
MCP_SERVER_URL=http://localhost:3000/local/mcp
MCP_MANIFEST_URL=http://localhost:3000/local/manifest.json
# Optional: Custom model configuration
OPENAI_MODEL=gpt-4
OPENAI_TEMPERATURE=0.7Uso
Modo Interactivo
Ejecuta la aplicación en modo interactivo:
python main.pyModo de Consulta Única
Procesa una sola consulta:
python main.py -q "¿Qué herramientas están disponibles?"Ver Manifest
Muestra el manifest del servidor MCP:
python main.py --show-manifestListar Herramientas
Lista todas las herramientas disponibles:
python main.py --list-toolsComandos Disponibles
En el modo interactivo, puedes usar los siguientes comandos:
help- Muestra la ayudatools- Lista las herramientas MCP disponiblesmanifest- Muestra el manifest del servidorquitoexit- Sale de la aplicación- Cualquier otro texto - Consulta en lenguaje natural (será procesada por OpenAI)
Flujo de Trabajo
- Consulta del Usuario: Escribe una consulta en lenguaje natural
- Análisis con OpenAI: El sistema analiza la consulta y recomienda una herramienta MCP
- Ejecución: Se ejecuta la herramienta recomendada con los parámetros sugeridos
- Explicación: OpenAI explica el resultado en lenguaje natural
- Sugerencias: Se proporcionan acciones de seguimiento sugeridas
Estructura del Proyecto
├── main.py # Aplicación principal
├── mcp_client.py # Cliente MCP
├── openai_client.py # Cliente OpenAI
├── config.py # Configuración
├── requirements.txt # Dependencias
└── README.md # DocumentaciónConfiguración del Servidor MCP
Asegúrate de que tu servidor MCP esté ejecutándose en:
- Endpoint:
http://localhost:3000/local/mcp - Manifest:
http://localhost:3000/local/manifest.json
Dependencias
openai- Cliente de OpenAIrequests- Cliente HTTPrich- Interfaz de usuario enriquecidaclick- CLI frameworkpydantic- Validación de datoshttpx- Cliente HTTP asíncronopython-dotenv- Manejo de variables de entorno
Ejemplos de Uso
Consulta Simple
Usuario: "¿Qué archivos hay en mi directorio?"
Sistema: Recomienda herramienta de listado de archivos
Resultado: Lista de archivos con explicación en lenguaje naturalConsulta Compleja
Usuario: "Busca todos los archivos Python que contengan la palabra 'async'"
Sistema: Analiza la consulta, recomienda herramienta de búsqueda
Resultado: Archivos encontrados con explicación y sugerencias de seguimientoSolución de Problemas
Error de Conexión MCP
- Verifica que el servidor MCP esté ejecutándose
- Comprueba las URLs en la configuración
- Revisa los logs del servidor MCP
Error de OpenAI
- Verifica tu clave API de OpenAI
- Comprueba que tengas créditos disponibles
- Revisa la configuración del modelo
Dependencias Faltantes
pip install -r requirements.txtContribuciones
Las contribuciones son bienvenidas. Por favor:
- Fork el proyecto
- Crea una rama para tu feature
- Commit tus cambios
- Push a la rama
- Abre un Pull Request
Licencia
Este proyecto está bajo la Licencia MIT.
