使用说明

项目简介

Text2Sim MCP服务器是一个实现了 Model Context Protocol (MCP) 的应用后端,它将 SimPy 驱动的离散事件模拟引擎包装成一个可以通过自然语言客户端(如 Claude Desktop)调用的工具。用户可以使用自然语言描述复杂的系统,例如医院流程、机场运营等,然后通过 LLM 客户端指示 Text2Sim MCP服务器运行模拟,并获取性能指标。

主要功能点

  • 自然语言驱动的模拟: 通过自然语言指令,LLM 客户端可以将用户的意图转换为结构化的模拟配置,无需手动编写复杂代码。
  • 多领域模拟支持: 可以模拟机场、医疗、制造等多个领域的系统,只需在自然语言描述中指定场景。
  • 灵活的实体和流程配置: 用户可以通过自然语言描述定义模拟中的实体属性、流程步骤、资源容量和处理时间分布。
  • 实时的性能指标分析: 模拟运行后,服务器会返回关键性能指标,如等待时间和吞吐量,帮助用户分析系统瓶颈和优化方案。
  • 安全可靠的实现: 采用正则表达式解析用户输入,避免了潜在的代码注入风险,保证服务器安全稳定运行。

安装步骤

  1. 安装 Python 3.12 或更高版本:请确保您的系统已安装 Python 3.12 或更高版本。
  2. 安装 'uv' 包管理器: 按照仓库 'README.md' 中的指引,根据您的操作系统 (macOS, Linux 或 Windows) 执行相应的命令安装 'uv' 包管理器。'uv' 是一个快速的 Python 包安装和管理工具,本项目使用它来运行服务器。
  3. 克隆仓库
    git clone https://github.com/IamCatoBot/text2sim-MCP-server.git
    cd text2sim-MCP-server

服务器配置

要将 Text2Sim MCP服务器 连接到 MCP 客户端(例如 Claude Desktop),您需要在客户端的配置文件中添加服务器配置信息。以 Claude Desktop 为例,您需要编辑 'claude_desktop_config.json' 文件,通常位于 Claude 应用的配置目录中。

在 'claude_desktop_config.json' 文件的 '"mcpServers"' 字段中,添加如下 JSON 块:

{
  "mcpServers": {
    "Text2Sim MCP Server": {
      "command": "uv",
      "args": [
        "--directory",
        "PATH_TO_TEXT2SIM_MCP_SERVER", // 请替换为 text2sim-MCP-server 仓库的实际路径
        "run",
        "mcp_server.py"
      ],
      "env": {}
    }
  }
}

配置参数说明:

  • '"Text2Sim MCP Server"': 服务器的名称,可以自定义,用于在 MCP 客户端中标识该服务器。
  • '"command": "uv"': 启动服务器的命令,这里使用 'uv' 包管理器来运行 Python 脚本。
  • '"args"': 启动命令的参数列表。
    • '"--directory"': 指定工作目录,这里设置为 'PATH_TO_TEXT2SIM_MCP_SERVER',请务必将其替换为您克隆的 'text2sim-MCP-server' 仓库在您本地文件系统中的绝对路径。
    • '"run"': 'uv run' 命令用于运行指定的 Python 脚本。
    • '"mcp_server.py"': 指定要运行的 Python 服务器脚本文件。
  • '"env": {}': 环境变量配置,默认为空。

注意:

  • 请根据您的实际情况修改 '"PATH_TO_TEXT2SIM_MCP_SERVER"' 为正确的仓库路径。
  • 如果 'uv' 命令无法找到,请尝试使用 'which uv' (Unix/Linux) 或 'Get-Command uv' (PowerShell) 命令查找 'uv' 的完整路径,并将其填写到 '"command"' 字段中。

基本使用方法

  1. 启动 MCP 服务器:配置完成后,当 MCP 客户端(如 Claude Desktop)启动时,会自动尝试连接到 Text2Sim MCP服务器。服务器会在后台运行,等待客户端发送请求。

  2. 在 LLM 客户端中使用自然语言提示: 在支持 MCP 的 LLM 客户端(如 Claude Desktop)中,您可以使用自然语言描述您想要模拟的系统和场景。例如,您可以输入类似以下提示:

    “模拟一个小医院,包含分诊、诊断和治疗三个步骤。分诊大约需要 3-5 分钟,诊断大约 10 分钟,治疗大约 20 分钟。医院有两名分诊护士,三名医生和一张治疗床。病人大约每 6 分钟到达一位。模拟 8 小时或 80 位病人。”

  3. 获取模拟结果: LLM 客户端会将您的自然语言提示转换为 Text2Sim MCP服务器 可以理解的配置信息,并发送请求给服务器。服务器运行模拟后,会将包含性能指标的 JSON 响应返回给客户端。您可以在客户端中查看和分析这些指标,例如平均等待时间、完成数量等。

通过以上步骤,您就可以利用 Text2Sim MCP服务器,结合 LLM 客户端的自然语言理解能力,轻松进行离散事件模拟分析。

信息

分类

AI与计算