Servidor MCP de preguntas secuenciales
Un servidor especializado que permite a los LLM (Grandes Modelos de Lenguaje) recopilar información específica mediante preguntas secuenciales. Este proyecto implementa el estándar MCP (Protocolo de Control de Modelos) para una integración fluida con los clientes LLM.
Estado del proyecto
🎉 Versión 1.0.0 lanzada 🎉
El servidor MCP de preguntas secuenciales ya está completo y listo para su implementación en producción. Todas las funciones planificadas se han implementado, probado y documentado.
Related MCP server: Vibe-Coder MCP Server
Características
Motor de preguntas secuenciales : genera preguntas de seguimiento contextualmente apropiadas basadas en respuestas anteriores
Compatibilidad con el protocolo MCP : implementación completa de la especificación MCP para la integración con LLM
API robusta : API RESTful con validación integral y manejo de errores
Integración de bases de datos vectoriales : almacenamiento y recuperación eficientes de patrones de preguntas
Monitoreo integral : métricas de rendimiento y observabilidad con Prometheus y Grafana
Implementación lista para producción : configuración de implementación de Kubernetes con soporte para múltiples entornos
Alta disponibilidad : escalador automático de pods horizontales y presupuesto de interrupción de pods para confiabilidad de producción
Seguridad : Políticas de red para restringir el tráfico y proteger la aplicación
Documentación
Empezando
Prerrequisitos
Python 3.10+
Docker y Docker Compose (para desarrollo local)
Clúster de Kubernetes (para implementación de producción)
PostgreSQL 15.4+
Acceso a una instancia de Qdrant
Inicio rápido
La forma más fácil de comenzar es utilizar nuestro script de inicialización:
Este script hará lo siguiente:
Comprueba si Docker se está ejecutando
Inicie todos los contenedores necesarios con Docker Compose
Ejecutar migraciones de bases de datos automáticamente
Proporcionar información sobre cómo acceder a la aplicación
La aplicación estará disponible en http://localhost:8001
Desarrollo local
Clonar el repositorio
git clone https://github.com/your-organization/sequential-questioning.git cd sequential-questioningInstalar dependencias
pip install -e ".[dev]"Configurar variables de entorno
cp .env.example .env # Edit .env file with your configurationEjecutar el servidor de desarrollo
uvicorn app.main:app --reload
Implementación de Docker
Configuración de la base de datos
Si está iniciando la aplicación manualmente, no olvide ejecutar las migraciones de la base de datos:
Implementación de Kubernetes
Entorno de desarrollo
kubectl apply -k k8s/overlays/devEntorno de ensayo
kubectl apply -k k8s/overlays/stagingEntorno de producción
kubectl apply -k k8s/overlays/prod
Consulte el plan de implementación final y el manual de ejecución operativa para obtener instrucciones detalladas.
Escucha
Acceda a los paneles de control de Prometheus y Grafana para realizar la monitorización:
Canalización de CI/CD
Canalización de CI/CD automatizada con GitHub Actions:
Integración continua: análisis de errores, verificación de tipos y pruebas
Implementación continua: implementaciones automatizadas para desarrollo, ensayo y producción
Verificación de implementación: controles automatizados posteriores a la implementación
Pruebas
Ejecute el conjunto de pruebas:
Ejecutar pruebas de rendimiento:
Solución de problemas
Tablas de base de datos no creadas
Si la aplicación se está ejecutando pero las tablas de la base de datos no existen:
Asegúrese de que el contenedor de la base de datos se esté ejecutando
Ejecute las migraciones de base de datos manualmente:
export DATABASE_URL="postgresql://postgres:postgres@localhost:5432/postgres" bash scripts/run_migrations.sh
Compatibilidad de versiones de Pydantic
Si encuentra el error pydantic.errors.PydanticImportError: BaseSettings has been moved to the pydantic-settings package , asegúrese de lo siguiente:
El paquete
pydantic-settingsestá incluido en sus dependenciasEstás importando
BaseSettingsdesdepydantic_settingsen lugar de hacerlo directamente desdepydantic
Este proyecto utiliza Pydantic v2.x que movió BaseSettings a un paquete separado.
Contribuyendo
¡Agradecemos sus contribuciones! Consulte las normas en CONTRIBUTING.md .
Licencia
Contacto
Para obtener ayuda o realizar consultas, comuníquese con support@example.com