OpenAI集成MCP客户端

一个Python客户端,连接本地MCP服务器并利用OpenAI进行自然语言处理。

  • by DanielVera987
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 DanielVera987/python-client-mcp

使用说明

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

  1. Clona o descarga este proyecto
  2. Instala las dependencias:
pip install -r requirements.txt
  1. Configura las variables de entorno:
cp .env.example .env

Edita 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.7

Uso

Modo Interactivo

Ejecuta la aplicación en modo interactivo:

python main.py

Modo 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-manifest

Listar Herramientas

Lista todas las herramientas disponibles:

python main.py --list-tools

Comandos Disponibles

En el modo interactivo, puedes usar los siguientes comandos:

  • help - Muestra la ayuda
  • tools - Lista las herramientas MCP disponibles
  • manifest - Muestra el manifest del servidor
  • quit o exit - Sale de la aplicación
  • Cualquier otro texto - Consulta en lenguaje natural (será procesada por OpenAI)

Flujo de Trabajo

  1. Consulta del Usuario: Escribe una consulta en lenguaje natural
  2. Análisis con OpenAI: El sistema analiza la consulta y recomienda una herramienta MCP
  3. Ejecución: Se ejecuta la herramienta recomendada con los parámetros sugeridos
  4. Explicación: OpenAI explica el resultado en lenguaje natural
  5. 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ón

Configuració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 OpenAI
  • requests - Cliente HTTP
  • rich - Interfaz de usuario enriquecida
  • click - CLI framework
  • pydantic - Validación de datos
  • httpx - Cliente HTTP asíncrono
  • python-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 natural

Consulta 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 seguimiento

Solució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.txt

Contribuciones

Las contribuciones son bienvenidas. Por favor:

  1. Fork el proyecto
  2. Crea una rama para tu feature
  3. Commit tus cambios
  4. Push a la rama
  5. Abre un Pull Request

Licencia

Este proyecto está bajo la Licencia MIT.