# System Architecture: LLM-MCP Integration for M/M/1 Queue Simulation
## Overall System Architecture
```mermaid
graph TB
subgraph Users["š„ User Layer"]
U1[Simulation Researchers]
U2[AI/LLM Developers]
U3[Students & Educators]
end
subgraph Interface["š» Interface Layer"]
Claude[Claude Desktop/CLI]
API[Claude API]
end
subgraph Protocol["š Protocol Layer"]
MCP[Model Context Protocol]
STDIO[STDIO Transport]
end
subgraph Server["š MCP Server: mcp-server-mm1"]
direction TB
Resources["š 7 Resources
⢠Schema
⢠Parameters
⢠Metrics
⢠Formulas
⢠Guidelines
⢠Examples
⢠Literature"]
Tools["š§ 5 Tools
⢠validate_config
⢠calculate_metrics
⢠run_simulation
⢠compare_results
⢠recommend_parameters"]
Prompts["š¬ 4 Prompts
⢠generate_simulation_code
⢠explain_mm1_theory
⢠analyze_results
⢠debug_simulation"]
end
subgraph Core["āļø Core Engine"]
SimPy["SimPy
Discrete Event Simulation"]
Theory["Theoretical Metrics
M/M/1 Formulas"]
end
subgraph Distribution["š¦ Distribution Channels"]
PyPI["PyPI Registry
pip install mcp-server-mm1"]
Smithery["Smithery Registry
uvx mcp-server-mm1"]
GitHub["GitHub Repository
Source Code"]
end
Users --> Interface
Interface --> Protocol
Protocol --> Server
Server --> Core
Distribution -.-> Server
Resources --> Core
Tools --> Core
Prompts --> Tools
style Server fill:#e1f5ff
style Core fill:#fff4e1
style Distribution fill:#f0e1ff
style Protocol fill:#e1ffe1
```
## Component Interaction Flow
```mermaid
sequenceDiagram
participant User as š¤ User
participant Claude as š¤ Claude
participant MCP as š MCP Protocol
participant Server as š MCP Server
participant SimPy as āļø SimPy Engine
User->>Claude: "Simulate M/M/1 queue with λ=5, μ=8"
Claude->>MCP: Request via STDIO
MCP->>Server: validate_config(5, 8)
Server-->>MCP: ā Valid (Ļ=0.625)
MCP->>Server: calculate_metrics(5, 8)
Server-->>MCP: Theoretical results
MCP->>Server: run_simulation(5, 8, 10000)
Server->>SimPy: Execute discrete event simulation
SimPy-->>Server: Simulation metrics
Server->>Server: compare_results()
Server-->>MCP: Combined analysis
MCP-->>Claude: Structured response
Claude-->>User: "System utilization: 62.5%..."
```
## MCP Server Architecture
```mermaid
graph LR
subgraph "MCP Server Package"
direction TB
subgraph "Resources Layer"
R1[mm1://schema]
R2[mm1://parameters]
R3[mm1://metrics]
R4[mm1://formulas]
end
subgraph "Tools Layer"
T1[validate_config]
T2[calculate_metrics]
T3[run_simulation]
T4[compare_results]
end
subgraph "Core Layer"
S1[schemas/mm1_schema.py]
S2[simulations/mm1_queue.py]
S3[utils/metrics.py]
end
Resources --> Core
Tools --> Core
Core --> S1
Core --> S2
Core --> S3
end
```
## Technology Stack
```mermaid
mindmap
root((MCP Server
mcp-server-mm1))
Framework
FastMCP
Python 3.10+
Model Context Protocol
Simulation
SimPy 4.0+
NumPy 1.24+
Exponential Distributions
Distribution
PyPI Registry
Smithery Registry
Docker Container
Features
7 Resources
5 Tools
4 Prompts
STDIO Transport
```
## Deployment Architecture
```mermaid
graph TB
subgraph Development
Code[Source Code]
PyProject[pyproject.toml]
Smithery[smithery.yaml]
Docker[Dockerfile]
end
subgraph Build
GitHub[GitHub Actions]
Build[python -m build]
DockerBuild[Docker Build]
end
subgraph Distribution
PyPI[PyPI Registry]
SmitheryReg[Smithery Registry]
Container[Docker Hub]
end
subgraph Installation
PipInstall["pip install mcp-server-mm1"]
UvxInstall["uvx mcp-server-mm1"]
ClaudeDesktop["Claude Desktop Config"]
end
Development --> Build
Build --> Distribution
Distribution --> Installation
style Distribution fill:#e1f5ff
style Installation fill:#e1ffe1
```
## Key Metrics
- **7 MCP Resources**: Comprehensive M/M/1 knowledge base
- **5 MCP Tools**: End-to-end simulation workflow
- **4 MCP Prompts**: AI-assisted code generation and analysis
- **100% PyPI Deployment**: Available worldwide via pip/uvx
- **STDIO Protocol**: Native Claude Desktop/CLI integration