Token导航 LogoToken导航TokenDH.com
alm MCP logo
开发工具stdio官方级别未说明来源级核验

alm MCP

MCP Server

Perforce ALM MCP服务器是一个连接AI助手与Perforce ALM REST API的中间件,用于通过对话管理需求、测试用例、文档和自动化结果。

工具数

46

提示词数

0

GitHub Stars

2

资源数

0
PythonClaude开发工具Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

gerhardkrugerdev

提供方

gerhardkrugerdev

最后核验

2026/5/17 20:21

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install mcp

详细介绍

Perforce ALM MCP服务器

注: Helix ALM已更名为 表演ALM。此服务器以Perforce ALM(以前为Helix ALM)REST API为目标。环境变量、工具名称和配置键仍然使用 HELIX_ALM_ 前缀用于向后兼容性。

A. 模型上下文协议(MCP) 将Claude(和其他兼容MCP的AI助手)连接到 表演ALM (前身为Helix ALM)REST API。它允许您直接从对话中管理需求、测试用例、文档和自动化结果,并具有可选的Azure DevOps集成,用于将CI/CD测试结果拉入Perforce ALM。

______________________________________________________________________

特性

  • 需求 --列出、搜索、创建、更新、删除和触发工作流事件
  • 测试用例 --列出、搜索、创建、读取、更新和附加步骤;链接到需求
  • 需求文件 --浏览文档树,向部分添加要求,创建快照
  • 自动化套房 --提交测试运行结果(手动、从JUnit/xUnit XML或从Azure DevOps构建中);按名称或ID列出的参考套件
  • Azure DevOps --从构建中提取测试结果,并将其直接推送到Perforce ALM自动化套件中
  • 默认项目 --设置一次 set_default_project 并省略 project_name 每次后续通话
  • 现场发现 --在创建项目之前查找有效的优先级、状态、类别或类型值
  • 基于会话的身份验证 --凭据仅保存在内存中,从不写入磁盘

______________________________________________________________________

需求

  • Python 3.11+
  • mcp 包装(pip install mcp)
  • 启用REST API的正在运行的Perforce ALM服务器(以前推荐使用Helix ALM,24版或更高版本)
  • API令牌(推荐)或用户名/密码

______________________________________________________________________

安装

git clone https://github.com/gerhardkrugerdev/alm_mcp.git
cd alm_mcp
pip install mcp

复制示例环境文件并填写您的详细信息(可选——您还可以通过 configure_helix_alm 运行时工具):

cp .env.example .env

______________________________________________________________________

运行服务器

python helix_alm_mcp.py

服务器通过以下方式进行通信 标准,这是MCP客户端(如Claude Desktop和Claude Code)的标准传输。

Claude桌面配置

将此块添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "helix-alm": {
      "command": "python",
      "args": ["C:/path/to/alm_mcp/helix_alm_mcp.py"],
      "env": {
        "HELIX_ALM_URL": "https://your-server:8443/",
        "HELIX_ALM_API_KEY": "your-api-key",
        "HELIX_ALM_API_SECRET": "your-api-secret"
      }
    }
  }
}

Claude代码配置

将相同的块添加到您的Claude代码中 settings.json 在...之下 "mcpServers".

______________________________________________________________________

认证

服务器支持两种身份验证方法:

方法环境变量configure_helix_alm 论点
API代币 *(推荐)*HELIX_ALM_API_KEY + HELIX_ALM_API_SECRETapi_token="key:secret"
基本身份验证HELIX_ALM_USER + HELIX_ALM_PASSWORDusername= + password=

通过环境变量设置的凭据在启动时加载。您可以随时通过调用来覆盖它们 configure_helix_alm 在谈话中。

______________________________________________________________________

工具参考

配置

configure_helix_alm

为当前会话配置Perforce ALM(以前称为Helix ALM)连接。URL会自动规范化——您可以传递基本URL或其下的任何路径(例如。 https://server:8443/helix-alm/api/v0),它将正确解决。如果服务器只有一个项目,则会自动选择它作为默认项目。

参数描述
url服务器基本URL,例如。 https://your-server:8443/
api_token中的API令牌 key:secret 格式 *(推荐)*
username / password基本身份验证替代方案
ssl_verify验证SSL证书(默认 false 对于自签名证书)
default_project可选默认项目--省略 project_name 从后续通话中

configure_azure_devops

为当前会话配置Azure DevOps连接。

参数描述
organizationAzure DevOps组织名称
projectAzure DevOps项目名称
pat个人访问令牌

get_connection_status

返回Perforce ALM和Azure DevOps的当前连接状态(不透露凭据)。包括当前默认项目。

set_default_project

设置会话的默认项目。一旦设置,所有接受的工具 project_name 当省略参数时,将使用此项目。

参数描述
project_name用作默认值的Helix ALM项目的名称

get_field_values

发现需求或测试用例中特定字段当前使用的值。在创建或更新项目之前,可用于查找有效的优先级、状态、类别或其他菜单字段值。

参数描述
project_nameHelix ALM项目(如果省略,则使用默认值)
item_type"requirements""testCases"
field_label用于查找值的字段名(例如。 "Priority", "Status", "Category")
注: 这会从现有项目中发现值,因此尚未使用的值可能不会出现。如果找不到字段名,该工具将返回可用字段标签的列表。

______________________________________________________________________

需求

工具说明
list_projects列出Perforce ALM中可用的所有项目
list_requirements列出项目中的要求(支持列选择和保存的筛选器)
get_requirement通过标签获取单个需求的完整细节(例如。 BR-1960)或数字ID
get_requirement_types列出项目中配置的需求类型
create_requirement使用摘要、描述、类型、优先级和自定义字段创建新需求
update_requirement更新现有需求的字段
delete_requirement删除需求
add_requirement_event根据需求触发工作流事件(例如。 Comment, Approve)
search_requirements在摘要和描述字段中进行全文搜索
get_requirement_workflow_events列出当前可用于需求的工作流事件

示例——创建需求:

Create a functional requirement in "My Project" with summary "User login via SSO"
and description "The system must support SAML 2.0 SSO for all users."

______________________________________________________________________

测试用例

工具说明
list_test_cases列出项目中的测试用例(支持列选择和保存的筛选器)
search_test_cases在摘要和描述字段中进行全文搜索
get_test_case通过标签或ID获取测试用例的完整详细信息,包括步骤和链接项
get_test_case_types列出项目中使用的测试用例类型
create_test_case使用可选步骤创建新的测试用例(步骤通过单独的PUT添加到 /steps 创建后的子资源)
update_test_case更新现有测试用例上的字段和/或步骤(替换所有步骤)
add_test_case_steps将步骤附加到现有测试用例中,而不删除当前步骤
link_test_case_to_requirement使用“需求测试人”可追溯性链接将测试用例链接到需求

create_test_case 参数

参数描述
project_namePerforce ALM项目名称
summary测试用例标题
test_case_type键入菜单项(例如。 "Validation", "Functional").默认为 "Validation"
description详细说明
priority优先级菜单项值(如果在项目中的测试用例上配置)
steps_jsonJSON步骤数组——见下面的格式
additional_fields额外字段值的JSON对象

步骤格式:

[
  {"text": "Open the login page", "expectedResult": "Login page is displayed"},
  {"text": "Enter valid credentials", "expectedResult": "User is redirected to the dashboard"}
]
注: Perforce ALM REST API不支持在测试用例创建(POST)期间内联添加步骤。此服务器通过首先创建测试用例,然后通过PUT向 /testCases/{id}/steps 使用子资源 detailed 步骤格式。

get_test_case 参数

参数描述
project_namePerforce ALM项目名称
test_case_identifier测试用例标签(例如。 TC-382)或数字ID

返回测试用例字段、所有步骤(具有预期结果)和链接项。步骤从 /steps 子资源,因为主测试用例端点不包括它们。

update_test_case 参数

参数描述
project_namePerforce ALM项目名称
test_case_identifier测试用例标签(例如。 TC-382)或数字ID
summary新摘要(留空以保持最新)
description新描述(留空以保持最新)
test_case_type新建类型值(留空以保持最新)
steps_json替换现有步骤的JSON步骤数组(格式与 create_test_case)
additional_fields额外字段值的JSON对象

所有参数都是可选的,只有您提供的字段才会被更新。步骤被完全替换(未合并)。要添加步骤而不删除现有步骤,请使用 add_test_case_steps 相反。

add_test_case_steps 参数

参数描述
project_nameHelix ALM项目(如果省略,则使用默认值)
test_case_identifier测试用例标签(例如。 TC-382)或数字ID
steps_jsonJSON步骤数组 附加 (格式与 create_test_case)

该工具获取现有的步骤,附加新的步骤,并将组合列表PUT返回到API。

link_test_case_to_requirement 参数

参数描述
project_namePerforce ALM项目名称
test_case_identifier测试用例标签(例如。 TC-42)或数字ID
requirement_identifier需求标签(例如。 BR-1960)或数字ID
link_type链接定义名称。默认为 "Requirement Tested By"

例子:

Create a test case in "My Project" titled "Verify SSO login flow" with type Validation
and steps: navigate to login, click SSO, verify redirect. Then link it to requirement BR-1960.

______________________________________________________________________

需求文件

工具说明
list_documents列出项目中的所有需求文档
create_document创建新的需求文档
get_document_tree获取文档的完整层次树(部分和要求)
get_document_node_children获取文档树中特定节点的直接子节点
add_to_document_tree将需求作为子节点添加到特定节点下
add_to_document_tree_top_level将需求添加为文档中的顶级节点
get_document_requirements列出属于文档的所有要求(通过文档列表字段)
create_document_snapshot创建文档的时间点快照以作为基线

______________________________________________________________________

自动化套房

所有自动化套件工具都接受一个套件 名字 (例如。 "Regression Suite")或 数字ID.

工具说明
list_automation_suites列出项目中的所有自动化套件
create_automation_suite创建新的自动化套件
get_automation_suite获取特定套件的详细信息(按名称或ID)
list_automation_builds列出提交到套件的构建
submit_automation_build以构建形式提交测试结果(完整JSON格式)
submit_automation_results_simple使用逗号分隔的通过/失败/跳过列表提交结果

______________________________________________________________________

JUnit / xUnit XML 文件

这些工具允许您直接从CI生成的XML文件中提交测试结果。

工具说明
submit_junit_results从JUnitXML文件提交结果
submit_xunit_results从xUnit v2 XML文件提交结果
submit_test_results_xml自动检测格式(JUnit或xUnit)并提交
preview_test_results_xml无需提交即可解析和预览XML文件

示例XML文件在 samples/ 目录。

______________________________________________________________________

Azure DevOps集成

工具说明
azdo_list_pipelines列出Azure DevOps项目中的构建管道
azdo_list_builds列出最新版本,可选择按管道筛选
azdo_get_test_results从特定版本获取测试结果
azdo_submit_to_helix_alm从构建中获取结果并将其提交给Perforce ALM自动化套件(按名称或ID)
azdo_submit_latest_to_helix_alm与上述相同,但会自动选择最新完成的构建

端到端示例:

Fetch the latest completed build from Azure DevOps pipeline 42 and submit
the test results to Perforce ALM automation suite 7 in project "My Project".

______________________________________________________________________

环境变量

所有变量都是可选的——服务器将回退到 configure_* 如果没有设置工具。

变量描述
HELIX_ALM_URL执行ALM服务器基本URL
HELIX_ALM_USER基本身份验证的用户名
HELIX_ALM_PASSWORD基本身份验证密码
HELIX_ALM_API_KEYAPI密钥(首选)
HELIX_ALM_API_SECRETAPI机密(首选)
HELIX_ALM_SSL_VERIFY设置为 true 强制执行SSL证书验证
HELIX_ALM_DEFAULT_PROJECT默认项目名称(可选-也可以通过以下方式设置 set_default_project)
AZDO_ORGAzure DevOps组织
AZDO_PROJECTAzure DevOps项目
AZDO_PATAzure DevOps个人访问令牌

______________________________________________________________________

安全注意事项

  • 凭据是 从未写入磁盘 --它们仅在会话的生命周期内存在于进程内存中。
  • .env 通过以下方式将文件排除在版本控制之外 .gitignore.使用 .env.example 作为模板。
  • 默认情况下,SSL验证被禁用,以支持内部Perforce ALM部署中常见的自签名证书。启用它(ssl_verify=true)当连接到具有可信证书的服务器时。

目录标签

目录标签

PythonClaude开发工具应用生命周期管理本地部署RESTAPI需求管理测试用例管理自动化测试

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

session

工具数量(toolCount,工具数)

46

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiosession部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP