A Model Context Protocol server that provides comprehensive resources, tools, and prompts for M/M/1 and M/M/c queuing system simulation and analysis.
New in v0.2.0: Full M/M/c support with comparison tools!
M/M/1 and M/M/c are fundamental queuing models in operations research:
- First M: Markovian (Poisson) arrivals
- Second M: Markovian (exponential) service times
- 1 or c: Number of servers (1 for M/M/1, c for M/M/c)
This MCP server enables LLMs like Claude to:
- Simulate both M/M/1 and M/M/c systems
- Compare separate queues vs pooled queue strategies
- Validate simulation parameters
- Calculate theoretical performance metrics
- Generate and execute SimPy simulations
- Analyze real-world scenarios (supermarkets, banks, etc.)
mm1://schema- Complete M/M/1 system schemamm1://parameters- Parameter definitions with constraintsmm1://metrics- Performance metrics catalogmm1://formulas- Theoretical formulasmm1://guidelines- Implementation best practicesmm1://examples- Pre-configured scenariosmm1://literature- References and citations
validate_config- Validate M/M/1 parameters and check stabilitycalculate_metrics- Compute theoretical performance metricsrun_simulation- Execute M/M/1 simulation (legacy)run_mmc_simulation- Execute M/M/c simulation (NEW!)compare_mm1_vs_mmc- Compare separate vs pooled queues (NEW!)analyze_cashier_problem- Supermarket scenario analysis (NEW!)compare_results- Analyze simulation accuracyrecommend_parameters- Suggest optimal configuration
generate_simulation_code- Create production-ready SimPy codeexplain_mm1_theory- Educational content on M/M/1 theoryanalyze_results- Interpret simulation outcomesdebug_simulation- Troubleshoot common issues
uvx mcp-server-mm1pip install mcp-server-mm1
mcp-server-mm1git clone https://github.com/yourusername/mcp-server-mm1.git
cd mcp-server-mm1
uv pip install -e .
mcp-server-mm1Add to your claude_desktop_config.json:
Location: ~/Library/Application Support/Claude/claude_desktop_config.json
Location: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"mm1-simulation": {
"command": "uvx",
"args": ["mcp-server-mm1"]
}
}
}Restart Claude Desktop and the server will be available!
User: Show me the M/M/1 queue schema
Claude uses: mm1://schema resource
User: Is Ξ»=5, ΞΌ=8 a valid M/M/1 configuration?
Claude uses: validate_config tool
Result: β Valid, Ο=0.625
User: Calculate theoretical metrics for Ξ»=5, ΞΌ=8
Claude uses: calculate_metrics tool
Result:
- Utilization: 0.625
- Avg queue length: 1.0417
- Avg waiting time: 0.2083
- Avg system time: 0.3333
User: Run a simulation with Ξ»=5, ΞΌ=8 for 10,000 time units
Claude uses: run_simulation tool
Result: Simulation metrics + theoretical comparison + accuracy analysis
User: Generate SimPy code for Ξ»=3, ΞΌ=10
Claude uses: generate_simulation_code prompt
Result: Complete, production-ready Python code
# Clone repository
git clone https://github.com/yourusername/mcp-server-mm1.git
cd mcp-server-mm1
# Install dependencies
uv pip install -e ".[dev]"pytest# Format code
black src/ tests/
# Lint
ruff check src/ tests/
# Type check
mypy src/Use the MCP Inspector to test the server locally:
# Install MCP inspector (if not already installed)
npm install -g @modelcontextprotocol/inspector
# Run server with inspector
mcp dev src/mcp_server_mm1/server.pyThis opens a web interface where you can:
- Browse available resources
- Test tool invocations
- Try prompt templates
- Inspect JSON-RPC communication
src/mcp_server_mm1/
βββ server.py # FastMCP server with resources/tools/prompts
βββ schemas/
β βββ mm1_schema.py # M/M/1 system schema definition
βββ simulations/
β βββ mm1_queue.py # SimPy simulation implementation
βββ utils/
βββ metrics.py # Theoretical calculations
Given arrival rate Ξ» and service rate ΞΌ:
- Utilization: Ο = Ξ»/ΞΌ
- Avg Queue Length: L_q = ΟΒ²/(1-Ο)
- Avg Time in Queue: W_q = Ο/(ΞΌ(1-Ο))
- Avg Time in System: W = 1/(ΞΌ(1-Ο))
System must satisfy Ο < 1 (Ξ» < ΞΌ)
If Ο β₯ 1, the queue grows unbounded!
Contributions are welcome! Please:
- Fork the repository
- Create a feature branch
- Make your changes with tests
- Submit a pull request
MIT License - see LICENSE file for details.
This MCP server was developed as part of research on LLM-assisted simulation code generation for the Winter Simulation Conference (WSC) 2025.
- Issues: GitHub Issues
- Discussions: GitHub Discussions
Made with β€οΈ for the simulation and LLM communities