Modern Control Protocol (MCP) Server
by eagurin
A modern, scalable MCP server implementation designed for managing AI interactions. It offers multi-provider support, conversation management, and robust monitoring capabilities.
View on GitHub
Last updated: N/A
Modern Control Protocol (MCP) Server
A modern, scalable MCP server implementation with support for multiple AI providers, advanced monitoring, and robust conversation management.
Features
- Multi-provider AI support (OpenAI, Anthropic, Google AI, Azure)
- Real-time streaming responses
- Conversation management and history
- Function calling and tool usage
- Vector database integration
- Semantic caching
- Prometheus metrics and Grafana dashboards
- Rate limiting and error handling
- PostgreSQL for data persistence
- Redis for caching
- Elasticsearch for search
- Docker containerization
Quick Start
- Clone the repository
- Copy environment template:
cp .env.example .env
- Update environment variables in
.env
- Start services with Docker Compose:
docker-compose up -d
API Documentation
Once running, visit:
- API Documentation: http://localhost:8000/docs
- ReDoc Documentation: http://localhost:8000/redoc
Monitoring
- Prometheus metrics: http://localhost:9090
- Grafana dashboards: http://localhost:3000
Development
Prerequisites
- Python 3.9+
- PostgreSQL
- Redis
- Elasticsearch
- Docker & Docker Compose
Local Setup
-
Create virtual environment:
python -m venv venv source venv/bin/activate # Linux/Mac # or .\venv\Scripts\activate # Windows
-
Install dependencies:
pip install -r requirements.txt
-
Run development server:
uvicorn app.main:app --reload
Testing
Run tests with:
pytest
Architecture
The MCP server is built with a microservices architecture:
- FastAPI for the REST API
- PostgreSQL for data persistence
- Redis for caching and rate limiting
- Elasticsearch for search functionality
- Qdrant for vector storage
- Prometheus and Grafana for monitoring
API Endpoints
/api/v1/mcp/prompts
: Prompt management/api/v1/mcp/conversations
: Conversation handling/api/v1/mcp/conversations/{id}/complete
: AI completions/metrics
: Prometheus metrics/health
: Health check
License
MIT License