Development Environment
БесплатноНе проверенProvides a Docker-based development environment with Python and Node.js MCP servers, enabling file operations, SQL queries, Redis caching, and debugging for bui
Описание
Provides a Docker-based development environment with Python and Node.js MCP servers, enabling file operations, SQL queries, Redis caching, and debugging for building and testing MCP servers.
README
A comprehensive Docker-based development environment for building and testing Model Context Protocol (MCP) servers.
🎯 What's Included
Core Services:
- Python MCP Server (Port 8000) - Full-featured implementation with debugging
- Node.js MCP Server (Port 3000) - Alternative implementation
- PostgreSQL (Port 5432) - Database with sample data
- Redis (Port 6379) - Caching layer
- Nginx File Server (Port 8080) - Static file serving with CORS
Development Features:
- Hot reloading for both Python and Node.js
- Built-in debugger support (Python: 5678, Node.js: 9229)
- Comprehensive logging and monitoring
- Pre-configured testing frameworks
- Sample data and schemas
- Code quality tools (linting, formatting, type checking)
🚀 Quick Start
- Setup the environment:
# Make the setup script executable and run it
chmod +x setup.sh
./setup.sh
- Verify everything is working:
# Check service status
docker-compose ps
# Test endpoints
curl http://localhost:8080/health # File server
curl http://localhost:8000/health # Python MCP server
curl http://localhost:3000/health # Node.js MCP server
- Start developing:
# Edit the Python MCP server
vim src/main.py
# View logs in real-time
docker-compose logs -f mcp-server
# Run tests
docker-compose exec mcp-server python -m pytest
🔧 Key Features of the MCP Servers
Available Tools:
write_file- Write content to filesexecute_sql- Run database queriescache_set/get- Redis cache operationslist_directory- Browse file systemanalyze_data- Basic data analysis on CSV files
Resources:
- File system access to
/datadirectory - Database table schemas and sample data
- Configuration files and documentation
Sample Usage:
# The Python server provides tools for:
await mcp_server.call_tool("write_file", {
"path": "analysis.txt",
"content": "Sample analysis results"
})
await mcp_server.call_tool("execute_sql", {
"query": "SELECT * FROM users WHERE department = $1",
"parameters": ["Engineering"]
})
🐛 Debugging Setup
Python (VSCode):
{
"name": "Python: Remote Attach",
"type": "python",
"request": "attach",
"connect": {"host": "localhost", "port": 5678},
"pathMappings": [
{"localRoot": "${workspaceFolder}/src", "remoteRoot": "/app/src"}
]
}
Node.js (Chrome DevTools):
- Open
chrome://inspect - Connect to
localhost:9229
📊 Monitoring & Logs
# View all service logs
docker-compose logs -f
# Monitor specific service
docker-compose logs -f mcp-server
# Check resource usage
docker stats
# Database operations
docker-compose exec postgres psql -U mcp_user -d mcp_dev
# Redis operations
docker-compose exec redis redis-cli
🛠️ Development Workflow
The environment supports both transport methods:
- stdio (default) - For direct MCP client integration
- HTTP/WebSocket - For web-based development and testing
You can easily switch between implementations or run both simultaneously for comparison and testing.
🗂️ Project Structure
mcp/
├── src/ # Python MCP server source
│ └── main.py # Main Python server implementation
├── src-node/ # Node.js MCP server source
│ └── server.js # Main Node.js server implementation
├── db/ # Database initialization scripts
│ ├── init.sql # Schema and tables
│ └── sample_data.sql # Sample data
├── data/ # Data files (mounted to containers)
├── static/ # Static files served by Nginx
├── tests/ # Test suites
├── .vscode/ # VSCode debug configuration
├── docker-compose.yml # Service definitions
├── python.Dockerfile # Python server container
├── node.Dockerfile # Node.js server container
├── nginx.conf # Nginx configuration
├── setup.sh # Setup and management script
└── README.md # This file
🔧 Management Commands
The setup.sh script provides convenient management:
./setup.sh setup # Initial setup and start (default)
./setup.sh start # Start services
./setup.sh stop # Stop services
./setup.sh restart # Restart services
./setup.sh status # Show service status
./setup.sh logs # Show service logs
./setup.sh clean # Remove everything (with confirmation)
./setup.sh help # Show help
🧪 Testing
Both Python and Node.js servers include comprehensive test suites:
# Run Python tests
docker-compose exec mcp-server python -m pytest tests/ -v
# Run Node.js tests
docker-compose exec mcp-server-node npm test
# Run tests with coverage
docker-compose exec mcp-server python -m pytest tests/ --cov=src
🔍 Database Schema
The PostgreSQL database includes several sample tables:
users- User accounts with departments and rolesproducts- Product catalog with categories and inventoryorders- Order history with status trackingorder_items- Order line itemsanalytics_events- Event tracking dataapp_config- Application configuration
📡 API Endpoints
File Server (Port 8080):
GET /health- Health checkGET /data/- Browse data directoryGET /static/- Browse static filesGET /api/docs- API documentation
Python MCP Server (Port 8000):
GET /health- Health check- MCP protocol via stdio transport
Node.js MCP Server (Port 3000):
GET /health- Health check- MCP protocol via stdio transport
🚨 Troubleshooting
Services not starting:
- Check Docker is running:
docker info - Check port conflicts:
netstat -tulpn | grep :8000 - View startup logs:
docker-compose logs
Database connection issues:
# Test database connectivity
docker-compose exec postgres pg_isready -U mcp_user
# Connect to database manually
docker-compose exec postgres psql -U mcp_user -d mcp_dev
Redis connection issues:
# Test Redis connectivity
docker-compose exec redis redis-cli ping
Debug not working:
- Ensure debug ports (5678, 9229) are not in use
- Check firewall settings
- Verify VSCode debug configuration matches container setup
🤝 Contributing
- Fork the repository
- Make changes in your environment
- Test thoroughly with provided test suites
- Submit a pull request
📄 License
This project is provided as-is for development and testing purposes.
This environment gives you a complete MCP development platform with real databases, caching, file systems, and debugging tools - perfect for building and testing production-ready MCP servers!
Установка Development Environment
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/donbungle/mcp-serverFAQ
Development Environment MCP бесплатный?
Да, Development Environment MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Development Environment?
Нет, Development Environment работает без API-ключей и переменных окружения.
Development Environment — hosted или self-hosted?
Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.
Как установить Development Environment в Claude Desktop, Claude Code или Cursor?
Открой Development Environment на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
wenb1n-dev/SmartDB_MCP
A universal database MCP server supporting simultaneous connections to multiple databases. It provides tools for database operations, health analysis, SQL optim
автор: wenb1n-devPostgres Server
This server enables interaction with PostgreSQL databases through the Model Context Protocol, optimized for the AWS Bedrock AgentCore Runtime. It provides tools
автор: madhurprashPostgres
Query your database in natural language
автор: AnthropicPostgreSQL
Read-only database access with schema inspection.
автор: modelcontextprotocolCompare Development Environment with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории data
