mymcpserv
0
The Modern Control Protocol (MCP) Server is a scalable server implementation supporting multiple AI providers with features like streaming responses, conversation management, and advanced monitoring. It is designed for effective conversation handling and integrates various tools for data persistence and caching.
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