One-command deployment for MCP servers. Generate Docker Compose configurations, validate manifests, and perform health checks for Model Context Protocol (MCP) servers.
# Install
pip install meridian-meridian-mcp-deploy # Coming soon - or clone this repo
# Validate a manifest
meridian-meridian-mcp-deploy validate manifests/filesystem-server.yaml
# Generate Docker Compose configuration
meridian-meridian-mcp-deploy generate manifests/filesystem-server.yaml manifests/playwright-server.yaml -o docker-compose.yml
# Run health check
meridian-meridian-mcp-deploy health manifests/filesystem-server.yaml- Manifest Validation: YAML schema validation for MCP server definitions
- Docker Compose Generation: Auto-generate optimized container configurations
- Health Check System: HTTP, TCP, and stdio protocol support with retries
- Dependency Resolution: Python import → apt package mapping (Phase 2)
- Connectivity Validator: Test server connectivity before deployment (Phase 2)
# From source
git clone https://github.com/meridian-mind/meridian-mcp-deploy.git
cd meridian-mcp-deploy-framework
pip install -r requirements.txt
# Or via pip (coming soon)
pip install meridian-meridian-mcp-deploymeridian-meridian-mcp-deploy validate manifests/filesystem-server.yamlOutput:
✓ Manifest 'filesystem-server' v1.0.0 is valid
Runtime: python
Description: MCP filesystem server for file operations
meridian-meridian-mcp-deploy generate manifests/filesystem-server.yaml -o docker-compose.ymlOutput:
✓ Parsed manifest: filesystem-server
✓ Generated Docker Compose configuration: docker-compose.yml
Services: filesystem-server
meridian-meridian-mcp-deploy health manifests/filesystem-server.yaml --retries 3Output:
Performing health check for filesystem-server...
✓ Health check passed: HTTP 200 OK
name: filesystem-server
version: "1.0.0"
runtime: python
port: 8080
description: MCP server for file system operations
health_check:
type: http
endpoint: /health
timeout: 10name: playwright-server
version: "1.0.0"
runtime: node
port: 3000
description: MCP server for browser automation
health_check:
type: http
endpoint: /health
timeout: 15| Command | Description |
|---|---|
meridian-mcp-deploy validate <manifest> |
Validate manifest YAML file |
meridian-mcp-deploy generate <manifests...> -o <output> |
Generate Docker Compose config |
meridian-mcp-deploy health <manifest> [--retries N] |
Perform health check |
meridian-meridian-mcp-deploy list <manifests...> |
List parsed manifest details |
meridian-mcp-deploy-framework/
├── src/
│ ├── cli.py # Command-line interface
│ ├── manifest_parser.py # YAML manifest parsing
│ ├── manifest_schema.py # JSON schema validation
│ ├── docker_compose_generator.py # Docker Compose generation
│ ├── health_check.py # Health check system
│ └── phase2/
│ ├── dependency_resolver.py # Import → apt mapping
│ └── mcp_connectivity_validator.py # Connectivity testing
├── manifests/ # Example manifests
├── tests/ # Test suite
├── docs/ # Documentation
└── scripts/ # Utility scripts
- Phase 1: Core CLI, manifest parser, Docker generator, health checks
- Phase 2: Dependency resolver, connectivity validator
- PyPI package publication
- Kubernetes manifest generation
- Multi-server orchestration
- Web UI for manifest editing
- Enterprise features (RBAC, audit logs)
- Fork the repository
- Create a feature branch (
git checkout -b feature/my-feature) - Add tests for new functionality
- Submit a pull request
MIT License - See LICENSE file for details.
- GitHub Issues: Report bugs and feature requests
- Discussions: Share ideas and ask questions
- MCP Discord: Join the Model Context Protocol community
Built for the MCP ecosystem • awesome-mcp-servers has 3,858+ stars