本项目提供了用于与Siemens Polarion Application Lifecycle Management (ALM) 系统集成的模型上下文协议(MCP)服务器实现。它允许大语言模型(LLM)客户端通过MCP协议访问和检索Polarion中的工作项数据。

主要功能点

  • 连接Polarion ALM: 服务器能够连接到您的Polarion服务器实例。
  • 提供工作项数据: 注册MCP工具,允许LLM根据工作项ID(如 'MD-12345')读取需求、测试用例、测试过程等工作项的内容。
  • HTML到Markdown转换: 自动将Polarion工作项中的HTML格式描述转换为Markdown格式,方便LLM处理。
  • 支持多种传输协议: 提供基于Stdio(控制台应用)和SSE(远程服务)的服务器实现。

安装步骤 (推荐使用Docker)

  1. 准备配置: 在您的Linux服务器上创建一个目录存放配置和日志,例如:

    mkdir -p /opt/polarion-mcp-server
    cd /opt/polarion-mcp-server
  2. 创建配置文件: 在 '/opt/polarion-mcp-server' 目录下创建 'appsettings.json' 文件,并填入您的Polarion连接信息:

    {
      "Logging": { /* 日志配置,通常无需修改 */ },
      "AllowedHosts": "*",
      "PolarionClientConfiguration": {
        "ServerUrl": "https://your-polarion-server/",  // 替换为您的Polarion服务器URL
        "Username": "your-username",                  // 替换为具有读取权限的Polarion用户名
        "Password": "your-password",                  // 替换为对应用户的密码
        "ProjectId": "your-project-id",                 // 替换为要访问的Polarion项目ID
        "TimeoutSeconds": 60                            // 连接超时时间(可选,默认60秒)
      }
    }
  3. 拉取Docker镜像:

    docker pull peakflames/polarion-remote-mcp-server
  4. 运行Docker容器: 启动服务器容器,将本地的 'appsettings.json' 文件挂载到容器内。

    docker run -d \
      --name polarion-mcp-server \
      -p 8080:8080 \
      -v /opt/polarion-mcp-server/appsettings.json:/app/appsettings.json \
      peakflames/polarion-remote-mcp-server
    • '-d': 后台运行
    • '--name': 为容器指定名称
    • '-p 8080:8080': 将容器内部的8080端口映射到宿主机的8080端口 (MCP服务器在此端口监听)
    • '-v ...:/app/appsettings.json': 将您创建的配置文件挂载到容器正确的位置
    • 'peakflames/polarion-remote-mcp-server': 使用的Docker镜像名称
  5. 服务器地址: 服务器现在应该正在运行,可以通过 'http://{{your-server-ip}}:8080/sse' 访问。

服务器配置 (供MCP客户端使用)

为了让您的MCP客户端(如Cline, 支持MCP的VS Code插件或Claude Desktop等)连接到这个服务器,您需要在客户端的配置界面中添加一个新的MCP服务器连接。具体的配置项通常包括:

  • 服务器名称 (Server name): 您可以给这个连接取一个方便识别的名字,例如 "Polarion"。
  • 服务器类型 (Server type): 选择 "sse" (Server-Sent Events)。
  • 服务器URL (Server URL): 填写服务器的访问地址,即您运行Docker容器宿主机的IP地址和映射的端口,加上 '/sse' 路径。格式为 'http://{{您的服务器IP}}:8080/sse'。

请参考您的具体MCP客户端的使用说明,找到添加远程MCP服务器的选项,并填入上述信息。

基本使用方法

连接配置成功后,您的LLM客户端应该能够发现并使用该服务器提供的MCP工具。当您需要LLM获取特定的Polarion工作项内容时,可以在与LLM的交互中指示其调用相应的工具,并提供工作项ID作为参数。

例如,如果提供的工具名为 'ReadWorkItems',您可能需要通过某种方式(取决于您的LLM客户端界面)让LLM执行 'ReadWorkItems("MD-123, TR-456")' 来获取ID为 "MD-123" 和 "TR-456" 的工作项内容。服务器会从Polarion获取这些工作项的详细信息,并将其文本内容(HTML描述会转为Markdown)返回给LLM。

信息

分类

开发者工具