项目简介

Polarion ALM MCP 服务器是一个基于 Model Context Protocol (MCP) 构建的后端服务,旨在实现 Siemens Polarion ALM (Application Lifecycle Management) 系统与各类AI助手(如 Microsoft Copilot Studio, Cline 等)的无缝集成。它将Polarion中的项目数据、工作项、测试运行、文档和计划等信息,以结构化的方式暴露给LLM客户端,使AI能够理解和操作这些关键的ALM数据。

主要功能点

  • 全面的Polarion数据访问: 提供超过13个强大的工具,允许AI查询和检索Polarion中的项目信息、工作项详情、测试运行状态、文档内容、计划(如发布、迭代)及其包含的工作项。
  • 灵活的配置系统: 支持通过YAML配置文件定义项目别名、预设工作项类型、映射自定义字段以及创建命名查询,极大地简化了AI与复杂Polarion实例的交互。
  • 上下文管理: 完全实现MCP协议的工具(Tools)、**资源(Resources)Prompt模板(Prompts)**核心功能,为LLM提供丰富、可定制的上下文信息。
  • JSON-RPC通信: 通过标准JSON-RPC协议与LLM客户端通信,确保互操作性。
  • 多客户端兼容: 兼容 Microsoft Copilot Studio(提供专门的中间件解决JSON-RPC ID兼容性问题)和 Cline (VSCode 插件)。
  • 生产级稳定性: 具备健壮的错误处理和日志记录机制,适用于生产环境部署。

安装步骤

  1. 克隆仓库:
    git clone https://github.com/mmerah/PolarionMcp.git
    cd PolarionMcp
  2. 配置Polarion凭据:
    • 复制示例环境变量文件:'cp .env.example .env'
    • 编辑 '.env' 文件,填入你的Polarion实例URL、用户名和个人访问令牌:
      POLARION_URL=https://your-polarion-instance.com/polarion
      POLARION_USER=your-username
      POLARION_TOKEN=your-personal-access-token
  3. 运行服务器:
    • 推荐方式 (使用便捷脚本):
      chmod +x run_server.sh
      ./run_server.sh
    • 手动方式:
      python -m venv .venv
      source .venv/bin/activate  # Windows用户请使用: .venv\Scripts\activate
      pip install -e .
      python -m mcp_server.main
    服务器将在 'http://0.0.0.0:8000' 启动,MCP 端点为 '/mcp/'。

服务器配置 (面向MCP客户端)

Polarion ALM MCP 服务器需要与支持MCP协议的客户端(如 Microsoft Copilot Studio 或 Cline)配合使用。客户端需要配置服务器的启动命令和相关参数才能建立连接。

以下是一个示例的MCP客户端JSON配置片段,其中包含了此服务器的必要信息:

{
    "mcpServers": {
        "polarion": {
            "displayName": "Polarion ALM 连接器",
            "description": "通过MCP协议访问Siemens Polarion ALM数据。",
            "command": "python",
            "args": [
                "-m",
                "mcp_server.main"
            ],
            // 以下是可选配置项,根据实际需求添加
            "url": "http://localhost:8000/mcp", 
            // 如果在本地运行服务器,请使用此URL。
            // 部署到生产环境时,需替换为公共可访问的HTTPS URL,
            // 例如:https://your-public-domain.com/mcp
            "autoApprove": [
                "health_check", 
                "list_projects"
            ]
            // 定义哪些工具可以自动审批,无需用户确认。
            // 根据AI代理设计调整此列表。
        }
    }
}

配置说明:

  • 'server name' ('polarion'): 这是客户端内部识别服务器的唯一名称。
  • 'displayName': 在客户端界面中显示的服务器友好名称。
  • 'description': 服务器的功能描述。
  • 'command': 启动MCP服务器的可执行文件路径。对于Python应用,通常是'python'。
  • 'args': 传递给'command'的参数,用于启动服务器的主模块。
  • 'url': MCP服务器的监听地址。在本地开发时通常是'http://localhost:8000/mcp'。生产环境部署时,需要将其替换为服务器实际的公共可访问的HTTPS URL。
  • 'autoApprove': 一个可选列表,指定在AI代理调用时无需用户额外确认即可执行的工具名称。

基本使用方法

一旦Polarion ALM MCP 服务器运行并配置到你的AI助手,你可以通过自然语言与之交互,调用其提供的工具和功能:

  • 检查连接: "检查Polarion连接健康状态"
  • 获取项目信息: "获取关于'webstore'项目的信息"
  • 搜索工作项: "在'QA_Project'项目中搜索所有状态为'open'的缺陷"
  • 查询计划: "列出'releases'项目中所有的发布计划"
  • 获取文档: "显示'MyProject'项目中所有的文档"
  • 分析工作项: "分析ID为'PROJ-123'的工作项"

信息

分类

开发者工具