Enables containerized deployment of the Sequential Questioning server through Docker Compose for local development environments
Provides automated CI/CD pipeline for linting, testing, and deploying the Sequential Questioning server to various environments
Offers visualization dashboards for monitoring the Sequential Questioning server's performance metrics
Supports production-ready deployment with multi-environment support, horizontal scaling, and high availability features
Provides database integration for persistent storage of Sequential Questioning data
Enables comprehensive monitoring and metrics collection for the Sequential Questioning server
Provides data validation and settings management for the Sequential Questioning server
Offers testing framework integration for running the test suite for the Sequential Questioning server
Serves as the primary programming language for implementing the Sequential Questioning server
Sequential Questioning MCP Server
A specialized server that enables LLMs (Large Language Models) to gather specific information through sequential questioning. This project implements the MCP (Model Control Protocol) standard for seamless integration with LLM clients.
Project Status
🎉 Version 1.0.0 Released 🎉
The Sequential Questioning MCP Server is now complete and ready for production deployment. All planned features have been implemented, tested, and documented.
Features
Sequential Questioning Engine: Generates contextually appropriate follow-up questions based on previous responses
MCP Protocol Support: Full implementation of the MCP specification for integration with LLMs
Robust API: RESTful API with comprehensive validation and error handling
Vector Database Integration: Efficient storage and retrieval of question patterns
Comprehensive Monitoring: Performance metrics and observability with Prometheus and Grafana
Production-Ready Deployment: Kubernetes deployment configuration with multi-environment support
High Availability: Horizontal Pod Autoscaler and Pod Disruption Budget for production reliability
Security: Network policies to restrict traffic and secure the application
Documentation
Getting Started
Prerequisites
Python 3.10+
Docker and Docker Compose (for local development)
Kubernetes cluster (for production deployment)
PostgreSQL 15.4+
Access to a Qdrant instance
Quick Start
The easiest way to get started is to use our initialization script:
This script will:
Check if Docker is running
Start all necessary containers with Docker Compose
Run database migrations automatically
Provide information on how to access the application
The application will be available at http://localhost:8001
Local Development
Clone the repository
git clone https://github.com/your-organization/sequential-questioning.git cd sequential-questioningInstall dependencies
pip install -e ".[dev]"Set up environment variables
cp .env.example .env # Edit .env file with your configurationRun the development server
uvicorn app.main:app --reload
Docker Deployment
Database Setup
If you're starting the application manually, don't forget to run the database migrations:
Kubernetes Deployment
Development Environment
kubectl apply -k k8s/overlays/devStaging Environment
kubectl apply -k k8s/overlays/stagingProduction Environment
kubectl apply -k k8s/overlays/prod
See the Final Deployment Plan and Operational Runbook for detailed instructions.
Monitoring
Access Prometheus and Grafana dashboards for monitoring:
CI/CD Pipeline
Automated CI/CD pipeline with GitHub Actions:
Continuous Integration: Linting, type checking, and testing
Continuous Deployment: Automated deployments to dev, staging, and production
Deployment Verification: Automated checks post-deployment
Testing
Run the test suite:
Run performance tests:
Troubleshooting
Database Tables Not Created
If the application is running but the database tables don't exist:
Make sure the database container is running
Run the database migrations manually:
export DATABASE_URL="postgresql://postgres:postgres@localhost:5432/postgres" bash scripts/run_migrations.sh
Pydantic Version Compatibility
If you encounter the error pydantic.errors.PydanticImportError: BaseSettings has been moved to the pydantic-settings package
, ensure that:
The
pydantic-settings
package is included in your dependenciesYou're importing
BaseSettings
frompydantic_settings
instead of directly frompydantic
This project uses Pydantic v2.x which moved BaseSettings
to a separate package.
Contributing
Contributions are welcome! Please see CONTRIBUTING.md for guidelines.
License
Contact
For support or inquiries, contact support@example.com
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
A specialized server that enables LLMs to gather specific information through sequential questioning, implementing the MCP standard for seamless integration with LLM clients.
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol (MCP) server that enables LLMs to interact directly the documents that they have on-disk through agentic RAG and hybrid search in LanceDB. Ask LLMs questions about the dataset as a whole or about specific documents.Last updated -171MIT License
- AsecurityFlicenseAqualityAn MCP server that implements a structured workflow for LLM-based coding, guiding development through feature clarification, documentation generation, phased implementation, and progress tracking.Last updated -103916
- AsecurityAlicenseAqualityAn MCP server that enables LLMs to interact with Moodle platforms to manage courses, students, assignments, and quizzes through natural language commands.Last updated -717MIT License
- -securityFlicense-qualityA customized MCP server that enables integration between LLM applications and documentation sources, providing AI-assisted access to LangGraph and Model Context Protocol documentation.Last updated -1