Token导航 LogoToken导航TokenDH.com
Test Scenarios Server logo
数据服务stdio官方级别未说明来源级核验

Test Scenarios Server

MCP Server

一个基于Python的MCP服务器,用于分析MicroShift测试失败,提供从Google表格中提取数据并分析测试失败与MicroShift版本关联的工具。

工具数

5

提示词数

0

GitHub Stars

0

资源数

0
PythonClaude数据分析Claude DesktopClaude

安装说明

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

作者 / 组织

kasturinarra

提供方

kasturinarra

最后核验

2026/5/17 20:23

快速接入

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

命令预览

pip install -r requirements.txt

详细介绍

MicroShift测试分析仪MCP服务器

基于Python的MCP(模型上下文协议)服务器,用于分析Google表格中的MicroShift测试失败,提供将测试失败与MicroShift版本相关联的专用工具。

特性

  • 按版本列出的失败管道:获取按MicroShift版本分组的失败测试管道
  • 故障总结:获取所有版本测试失败的汇总统计数据
  • 管道故障趋势:分析特定测试管道随时间推移的故障趋势
  • 搜索失败原因:在所有测试中搜索特定的失败原因
  • 版本比较:比较不同MicroShift版本之间的测试结果
  • 实时数据:直接从Google表格中获取数据

设置

1.安装依赖项

pip install -r requirements.txt

2.Google Sheets API设置

选项A:服务帐户(推荐)

  1. 首选 谷歌云控制台
  2. 创建新项目或选择现有项目
  3. 启用Google Sheets API
  4. 创建服务帐户:

- 转到IAM和管理>服务帐户 - 点击“创建服务帐户” - 填写详细信息并单击“创建” - 暂时跳过角色分配 - 点击“完成”

  1. 为服务帐户生成密钥:

- 点击已创建的服务帐户 - 转到“密钥”选项卡 - 点击“添加密钥”>“创建新密钥” - 选择JSON格式 - 下载文件并安全保存

  1. 通过服务帐户电子邮件共享您的Google表格:

- 打开你的谷歌表格 - 点击“分享” - 添加服务帐户电子邮件(在JSON文件中为 client_email) - 授予它“查看器”权限

3.配置环境变量

复制示例环境文件:

cp env.example .env

编辑 .env 并使用服务帐户JSON文件中的值设置您的Google凭据:

GOOGLE_CLIENT_EMAIL=your-service-account@your-project.iam.gserviceaccount.com
GOOGLE_PRIVATE_KEY="-----BEGIN PRIVATE KEY-----\nYour private key content\n-----END PRIVATE KEY-----\n"

备注:复制 client_emailprivate_key 直接从下载的JSON文件中获取值。确保在私钥周围包含引号,并保留 \n 字符。

4.更新电子表格配置

服务器当前配置为从您提供的URL中的电子表格ID读取。如果你需要改变这一点:

  1. 打开 server.py
  2. 查找 SPREADSHEET_ID 文件顶部附近的常数
  3. 用您的电子表格ID替换它

您可能还需要在 get_sheets_data() 函数(当前设置为 '2025_06!A:ZZ').

用法

运行服务器

python server.py

服务器将启动并通过stdio监听MCP连接。

发展模式

python server.py

可用工具

MCP服务器为MicroShift测试分析提供以下专用工具:

1. get_failed_pipelines_by_version

获取按MicroShift版本分组的失败测试管道。

参数:

  • version (可选):要过滤的特定MicroShift版本
  • limit (可选):返回的最大结果数(默认值:50)

2. get_failure_summary

获取所有MicroShift版本的测试失败摘要。

参数:

  • group_by (可选):按“版本”、“管道”或“原因”对故障进行分组(默认值:“版本”)

3. get_pipeline_failure_trends

分析特定测试管道随时间推移的故障趋势。

参数:

  • pipeline_name (可选):要分析的测试管道的名称
  • days (可选):回顾的天数(默认值:30)

4. search_failure_reasons

在所有测试中搜索特定的失败原因。

参数:

  • search_term (必填):查找失败原因的搜索词
  • version (可选):按特定MicroShift版本过滤

5. get_version_comparison

比较不同MicroShift版本之间的测试结果。

参数:

  • version1 (必填):要比较的第一个MicroShift版本
  • version2 (必填):要比较的第二个MicroShift版本

电子表格格式

服务器希望您的Google Sheet具有以下列结构:

  • A列:日期(例如,“2025年6月21日_04:52:27”)
  • B列:ID(例如“1233”)
  • C栏:MICROSHIFT_TARGET(例如,“4.18.0~0.night”)
  • D栏:BREW_VERSION(例如,“微动-4.18.0~0.夜间_2025_06_20_030312…”)
  • E栏:MicroShift版本(例如“4.18.0~0.夜间”)
  • F列+:使用多行格式构建图像和测试管道,其中包含:

- 架构(x86_64、aarch64、x86) - 测试类型(安装、升级等) - 框架(RobotFramework、Ginkgo) - 状态(成功、失败) - 故障原因(如果状态为Failure)

与MCP客户端集成

此服务器遵循官方 MCP Python SDK 图案使用 FastMCP。它可以与任何兼容MCP的客户端一起使用,如Claude for Desktop。

Claude用于桌面配置

将此添加到您的Claude Desktop配置文件中(~/Library/Application Support/Claude/claude_desktop_config.json 在 macOS 上:

{
  "mcpServers": {
    "microshift-test-analyzer": {
      "command": "python",
      "args": ["/absolute/path/to/mcp-test-scenarios-server/server.py"],
      "cwd": "/absolute/path/to/mcp-test-scenarios-server"
    }
  }
}

示例用法

连接到Claude for Desktop后,您可以提出以下问题:

  • “MicroShift 4.18.0版本的哪些测试管道失败了?”
  • “显示与‘ssh连接失败’相关的所有故障”
  • “比较4.18.0和4.17.0版本之间的测试结果”
  • “rpm升级管道的故障趋势是什么?”
  • “给我一份按原因分组的所有测试失败的摘要”

故障排除

身份验证问题

  • 确保您的 GOOGLE_CLIENT_EMAILGOOGLE_PRIVATE_KEY 环境变量设置正确
  • 验证服务帐户是否可以访问Google表格
  • 检查Google Sheets API是否已在您的Google Cloud项目中启用
  • 确保私钥格式正确(包括\\n个字符)

数据解析问题

  • 验证电子表格是否遵循预期的列结构
  • 确保管道数据的格式带有分隔不同组件的适当换行符
  • 检查状态值是否为以下值之一:成功、失败、失败、通过、通过

服务器连接问题

  • 确保MCP配置中的服务器脚本路径正确
  • 验证是否安装了所有必需的Python依赖项
  • 检查服务器代码中的Google表格ID是否与您的实际电子表格匹配

常见错误消息

  • “无可用数据”:电子表格为空或解析失败
  • “凭据无效”:服务帐户身份验证失败
  • “权限被拒绝”:服务帐户无法访问电子表格
  • “列索引超出范围”:电子表格结构与预期格式不匹配

API示例

使用curl直接测试服务器

目录标签

目录标签

PythonClaude数据分析测试分析本地部署MicroShiftGoogle表格版本比较

支持客户端

Claude DesktopClaude

接入字段

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

stdio

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

none

工具数量(toolCount,工具数)

5

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdionone部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP