MCP Deploy Framework
One-command deployment for MCP servers. Generate Docker Compose configurations, validate manifests, and perform health checks for Model Context Protocol (MCP) servers.
Quick Start
# Install
pip install meridian-mcp-deploy # Coming soon - or clone this repo
# Validate a manifest
meridian-mcp-deploy validate manifests/filesystem-server.yaml
# Generate Docker Compose configuration
meridian-mcp-deploy generate manifests/filesystem-server.yaml manifests/playwright-server.yaml -o docker-compose.yml
# Run health check
meridian-mcp-deploy health manifests/filesystem-server.yaml
Features
- 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)
Installation
# From source
git clone https://github.com/meridian-mind/mcp-deploy.git
cd mcp-deploy-framework
pip install -r requirements.txt
# Or via pip (coming soon)
pip install meridian-mcp-deploy
Usage
1. Validate a Manifest
mcp-deploy validate manifests/filesystem-server.yaml
Output:
✓ Manifest 'filesystem-server' v1.0.0 is valid
Runtime: python
Description: MCP filesystem server for file operations
2. Generate Docker Compose
mcp-deploy generate manifests/filesystem-server.yaml -o docker-compose.yml
Output:
✓ Parsed manifest: filesystem-server
✓ Generated Docker Compose configuration: docker-compose.yml
Services: filesystem-server
3. Perform Health Check
mcp-deploy health manifests/filesystem-server.yaml --retries 3
Output:
Performing health check for filesystem-server...
✓ Health check passed: HTTP 200 OK
Example Manifests
Filesystem Server
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: 10
Playwright Server
name: playwright-server
version: "1.0.0"
runtime: node
port: 3000
description: MCP server for browser automation
health_check:
type: http
endpoint: /health
timeout: 15
CLI Commands
| 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-mcp-deploy list <manifests...> |
List parsed manifest details |
Project Structure
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
Roadmap
- 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)
Contributing
- Fork the repository
- Create a feature branch (
git checkout -b feature/my-feature) - Add tests for new functionality
- Submit a pull request
License
MIT License - See LICENSE file for details.
Community
- 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
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
meridian_mcp_deploy-1.0.1.tar.gz
(16.0 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file meridian_mcp_deploy-1.0.1.tar.gz.
File metadata
- Download URL: meridian_mcp_deploy-1.0.1.tar.gz
- Upload date:
- Size: 16.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
169fd9c4e6c2196caa4bc72d0a0156cebf70938b7cc8eb869d376e08e2c55f6b
|
|
| MD5 |
7664623735b5739ed53879097a7fb9e3
|
|
| BLAKE2b-256 |
5f72bc33794a1606bb37412763787ce81ba5075279d83c173030eb38f7ce9ce4
|
File details
Details for the file meridian_mcp_deploy-1.0.1-py3-none-any.whl.
File metadata
- Download URL: meridian_mcp_deploy-1.0.1-py3-none-any.whl
- Upload date:
- Size: 17.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ab2b320bcceebf32ea7813cc9be0b28f7463888ea27eb113494576320d093dc8
|
|
| MD5 |
ff656ecb25a06af5c1685d833bcb33c5
|
|
| BLAKE2b-256 |
23de721f580095d77081f9b964b843c4edd8d6ecfbc29717db8fec0296f0b9a0
|