Hippycampus
Convierte cualquier endpoint REST de Swagger/OpenAPI con definición yaml/json en un servidor MCP con integración automática de Langchain/Langflow.
Documentación
Hippycampus
Un servidor CLI y MCP basado en LangChain que soporta la carga dinámica de especificaciones OpenAPI e integración con Langflow.
Requisitos previos
- Python 3.12.9
- Gestor de paquetes UV
- Clave API de Google AI Studio
- Langflow (para la creación visual de flujos de trabajo)
Instalación
# Install UV if you haven't already
curl -LsSf https://astral.sh/uv/install.sh | sh
# Create and activate virtual environment
uv venv
source .venv/bin/activate # On Windows use: .venv\Scripts\activate
# Install hippycampus and its dependencies
uv pip install -e .
# Install langflow
uv pip install langflow
Configuración
Clave API de Google AI Studio
- Visita Google AI Studio
- Haz clic en "Create API Key" en la esquina superior derecha
- Copia la clave generada y establécela como variable de entorno:
export GOOGLE_API_KEY='your-api-key-here'
Ejecución de las aplicaciones
Modo CLI (sin servidor MCP)
uv run hippycampus-cli
Modo servidor MCP (SSE)
uv run hippycampus-server --transport sse --port 8000
Servidor Langflow
Asegúrate de que el servidor MCP esté en ejecución antes de iniciar Langflow.
- Establece la variable de entorno de la ruta de componentes:
# Get your current working directory
pwd
# Use the output to set the components path
export LANGFLOW_COMPONENTS_PATH="/output/from/pwd/langflow/components"
- Inicia el servidor Langflow (añade --dev para el modo de desarrollo):
uv run langflow run
- Abre tu navegador y navega a
http://localhost:7860
Uso de componentes personalizados en Langflow
-
En la interfaz de Langflow, localiza los componentes personalizados:
- OpenApi Service: Para cargar especificaciones OpenAPI
- Hippycampus MCP Server: Para conectarse al servidor MCP a través de SSE
-
Configura los componentes:
- OpenApi Service: Usa
https://raw.githubusercontent.com/APIs-guru/unofficial_openapi_specs/master/xkcd.com/1.0.0/openapi.yamlpara pruebas - MCP Server: Usa
http://localhost:8000/sse
- OpenApi Service: Usa
Consulta la Demo de Screencast para obtener una guía visual. Screencast Demo
Ten en cuenta que los archivos swagger oficiales de XKCD contienen un error y especifican el campo comic_id como un número en lugar de un entero; hay una versión corregida en la carpeta de pruebas.
Solución de problemas
- Errores de autenticación: Verifica que
GOOGLE_API_KEYesté configurado correctamente - Componentes faltantes en Langflow: Verifica que
LANGFLOW_COMPONENTS_PATHapunte al directorio correcto - Problemas de conexión: Asegúrate de que el servidor MCP esté en ejecución antes de conectarte a través de Langflow
- Si los componentes no aparecen en Langflow, intenta reiniciar el servidor de Langflow
- Usa la CLI para depurar problemas de openapi_builder/spec_parser y de interacción con el agente antes de ejecutar en MCP/Langflow.
Licencia
Licencia MIT
Copyright (c) 2024 Ray Cromwell
Se concede permiso, de forma gratuita, a cualquier persona que obtenga una copia de este software y de los archivos de documentación asociados (el "Software"), para tratar el Software sin restricciones, incluidos, sin limitación, los derechos de usar, copiar, modificar, fusionar, publicar, distribuir, sublicenciar y/o vender copias del Software, y para permitir a las personas a quienes se les proporcione el Software que lo hagan, sujeto a las siguientes condiciones:
El aviso de copyright anterior y este aviso de permiso deberán incluirse en todas las copias o partes sustanciales del Software.
EL SOFTWARE SE PROPORCIONA "TAL CUAL", SIN GARANTÍA DE NINGÚN TIPO, EXPRESA O IMPLÍCITA, INCLUYENDO PERO NO LIMITADO A LAS GARANTÍAS DE COMERCIABILIDAD, IDONEIDAD PARA UN FIN PARTICULAR Y NO INFRACCIÓN. EN NINGÚN CASO LOS AUTORES O TITULARES DE LOS DERECHOS DE AUTOR SERÁN RESPONSABLES DE CUALQUIER RECLAMO, DAÑO U OTRA RESPONSABILIDAD, YA SEA EN UNA ACCIÓN DE CONTRATO, AGRAVIO O DE OTRO MODO, QUE SURJA DE, O EN CONEXIÓN CON, EL SOFTWARE O EL USO U OTROS TRATOS EN EL SOFTWARE.