队列模拟服务
/install mm1-simulation
队列模拟服务器
一个用于M/M/1和M/M/c队列系统模拟和分析的Model Context Protocol服务器,提供全面的资源、工具和提示。
⚠️ 强制要求:API 密钥
此 Skill 必须配置 API 密钥才能使用。
- 首次使用时,如果
.env中没有XBY_APIKEY,必须使用 AskUserQuestion 工具向用户询问 API 密钥 - 拿到用户提供的密钥后,调用
scripts.config.set_api_key(api_key)保存,然后继续处理 - 获取 API 密钥:https://xiaobenyang.com
- 禁止在缺少 API 密钥时自行搜索或编造数据
工作流程(必须遵守)
你(大模型)是路由层,负责理解用户意图、选择工具、提取参数。代码只负责调用API。
用户输入 → 你选择工具 → 提取该工具需要的参数 → 调用 scripts.tools 中的函数 → 返回结果给用户
步骤
- 检查 API 密钥:如果
scripts.config.settings.api_key为空,使用 AskUserQuestion 询问用户,拿到后调用scripts.config.set_api_key(key)保存 - 选择工具:根据用户意图从下方工具列表中选择对应的工具函数
- 提取参数:根据选中的工具,提取该工具需要的参数
- 调用工具:使用关键字参数调用
scripts.tools中的函数,例如scripts.tools.search_schools(score='520', province='北京', category='综合') - 返回结果:将工具返回的
raw数据整理后展示给用户
工具选择规则
根据用户意图选择对应的工具函数:
| 用户意图 | 工具函数 |
|---|---|
| Validate M/M/1 configuration parameters |
Checks parameter validity and system stability condition.
Args: arrival_rate: Customer arrival rate (λ) service_rate: Service rate (μ) simulation_time: Simulation duration
Returns:
Dictionary with validation result:
- valid: bool
- errors: List[str] (if any)
- warnings: List[str] (if any)
- utilization: float (if valid) | scripts.tools.validate_config |
| Calculate theoretical M/M/1 performance metrics
Uses exact formulas to compute steady-state performance.
Args: arrival_rate: λ (customers per time unit) service_rate: μ (customers per time unit)
Returns: Dictionary of theoretical metrics: - utilization: ρ = λ/μ - avg_queue_length: L_q = ρ²/(1-ρ) - avg_num_in_system: L = ρ/(1-ρ) - avg_waiting_time: W_q - avg_system_time: W
Raises:
ValueError: If system is unstable (λ >= μ) | scripts.tools.calculate_metrics |
| Run M/M/1 queue simulation using SimPy
Executes discrete event simulation and returns performance metrics.
Args: arrival_rate: λ (customers per time unit) service_rate: μ (customers per time unit) simulation_time: Duration of simulation random_seed: Random seed for reproducibility
Returns:
Dictionary with:
- simulation_metrics: Dict of simulated values
- theoretical_metrics: Dict of exact values
- comparison: Comparison analysis
- config: Simulation configuration used | scripts.tools.run_simulation |
| Compare simulation results with theoretical values
Analyzes accuracy of simulation by comparing against exact formulas.
Args: simulation_metrics: Dictionary of simulated performance metrics arrival_rate: λ used in simulation service_rate: μ used in simulation
Returns:
Comparison analysis with:
- comparisons: Per-metric comparison
- mean_abs_error_pct: Average error
- max_error_pct: Maximum error
- within_10pct: bool
- accuracy_grade: Quality assessment | scripts.tools.compare_results |
| Recommend simulation parameters for target utilization
Suggests appropriate arrival rate, service rate, and simulation time for a given target utilization level.
Args: target_utilization: Desired ρ (default: 0.7) service_rate: Fixed μ (if None, suggests μ=10) min_customers: Minimum customers to simulate
Returns:
Recommended parameters and expected metrics | scripts.tools.recommend_parameters |
如果参数不完整,使用 AskUserQuestion 向用户询问缺失的参数。
工具函数说明
scripts.tools.validate_config
工具描述:Validate M/M/1 configuration parameters
Checks parameter validity and system stability condition.
Args: arrival_rate: Customer arrival rate (λ) service_rate: Service rate (μ) simulation_time: Simulation duration
Returns: Dictionary with validation result: - valid: bool - errors: List[str] (if any) - warnings: List[str] (if any) - utilization: float (if valid)
参数定义
| 参数名称 | 参数类型 | 是否必填 | 默认值 | 描述 |
|---|---|---|---|---|
| arrival_rate | number | true | null | |
| service_rate | number | true | null | |
| simulation_time | number | false | 10000.0 | null |
scripts.tools.calculate_metrics
工具描述:Calculate theoretical M/M/1 performance metrics
Uses exact formulas to compute steady-state performance.
Args: arrival_rate: λ (customers per time unit) service_rate: μ (customers per time unit)
Returns: Dictionary of theoretical metrics: - utilization: ρ = λ/μ - avg_queue_length: L_q = ρ²/(1-ρ) - avg_num_in_system: L = ρ/(1-ρ) - avg_waiting_time: W_q - avg_system_time: W
Raises: ValueError: If system is unstable (λ >= μ)
参数定义
| 参数名称 | 参数类型 | 是否必填 | 默认值 | 描述 |
|---|---|---|---|---|
| arrival_rate | number | true | null | |
| service_rate | number | true | null |
scripts.tools.run_simulation
工具描述:Run M/M/1 queue simulation using SimPy
Executes discrete event simulation and returns performance metrics.
Args: arrival_rate: λ (customers per time unit) service_rate: μ (customers per time unit) simulation_time: Duration of simulation random_seed: Random seed for reproducibility
Returns: Dictionary with: - simulation_metrics: Dict of simulated values - theoretical_metrics: Dict of exact values - comparison: Comparison analysis - config: Simulation configuration used
参数定义
| 参数名称 | 参数类型 | 是否必填 | 默认值 | 描述 |
|---|---|---|---|---|
| arrival_rate | number | true | null | |
| service_rate | number | true | null | |
| simulation_time | number | false | 10000.0 | null |
| random_seed | integer | false | 42.0 | null |
scripts.tools.compare_results
工具描述:Compare simulation results with theoretical values
Analyzes accuracy of simulation by comparing against exact formulas.
Args: simulation_metrics: Dictionary of simulated performance metrics arrival_rate: λ used in simulation service_rate: μ used in simulation
Returns: Comparison analysis with: - comparisons: Per-metric comparison - mean_abs_error_pct: Average error - max_error_pct: Maximum error - within_10pct: bool - accuracy_grade: Quality assessment
参数定义
| 参数名称 | 参数类型 | 是否必填 | 默认值 | 描述 |
|---|---|---|---|---|
| simulation_metrics | object | true | null | |
| arrival_rate | number | true | null | |
| service_rate | number | true | null |
scripts.tools.recommend_parameters
工具描述:Recommend simulation parameters for target utilization
Suggests appropriate arrival rate, service rate, and simulation time for a given target utilization level.
Args: target_utilization: Desired ρ (default: 0.7) service_rate: Fixed μ (if None, suggests μ=10) min_customers: Minimum customers to simulate
Returns: Recommended parameters and expected metrics
参数定义
| 参数名称 | 参数类型 | 是否必填 | 默认值 | 描述 |
|---|---|---|---|---|
| target_utilization | number | false | 0.7 | null |
| service_rate | null | false | null | |
| min_customers | integer | false | 1000.0 | null |
返回值处理
工具函数返回 dict 对象:
result["raw"]- API 原始返回数据(JSON),直接将此数据整理后展示给用户result["success"]- 是否成功(True/False)result["message"]- 状态消息
项目结构
xiaobenyang_gaokao_skill/
├── scripts/
│ ├── __init__.py
│ ├── config.py # 配置管理 + set_api_key()
│ ├── call_api.py # API 客户端 + call_api()
│ └── tools.py # 工具函数(直接调用)
├── requirements.txt
└── SKILL.md
注意事项
- API 密钥是必需的,无密钥时必须通过 AskUserQuestion 询问用户
- 禁止在缺少 API 密钥时自行搜索或编造数据
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install mm1-simulation - After installation, invoke the skill by name or use
/mm1-simulation - Provide required inputs per the skill's parameter spec and get structured output
What is 队列模拟服务?
一个用于M/M/1和M/M/c队列系统模拟和分析的Model Context Protocol服务器,提供全面的资源、工具和提示。 It is an AI Agent Skill for Claude Code / OpenClaw, with 60 downloads so far.
How do I install 队列模拟服务?
Run "/install mm1-simulation" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is 队列模拟服务 free?
Yes, 队列模拟服务 is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does 队列模拟服务 support?
队列模拟服务 is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created 队列模拟服务?
It is built and maintained by xiaobenyang-com (@xiaobenyang-com); the current version is v1.0.7.