概述
安装
工具列表
内容详情
替代品
什么是Sauce Labs MCP Server?
这是一个Model Context Protocol (MCP)服务器,通过与AI助手(如Claude)的自然语言对话,帮助测试人员直接管理Sauce Labs平台上的测试设备、任务和构建。如何使用Sauce Labs MCP Server?
安装Python服务后,在支持的AI客户端(如Claude Desktop)中配置即可通过聊天界面使用。适用场景
适合需要频繁查看测试状态、管理设备资源或分析测试结果的移动应用测试团队。主要功能
如何使用
使用案例
常见问题
相关资源
安装
{
"mcpServers": {
"sauce-labs": {
"command": "python",
"args": ["/path/to/sauce-api-mcp/src/main.py"],
"env": {
"SAUCE_USERNAME": "your-sauce-username",
"SAUCE_ACCESS_KEY": "your-sauce-access-key"
}
}
}
}
{
"mcpServers": {
"sauce-labs": {
"command": "python",
"args": ["/path/to/sauce-api-mcp/src/main.py"],
"env": {
"SAUCE_USERNAME": "your-sauce-username",
"SAUCE_ACCESS_KEY": "your-sauce-access-key"
}
}
}
}
"mcpServers": {
"sauce-api-mcp": {
"command": "/Users/marcusmerrell/Projects/sauce-api-mcp/start_server.sh",
"args": []
}🚀 Sauce Labs MCP 服务器
Sauce Labs MCP 服务器是一个模型上下文协议(MCP)服务器,它与 Sauce Labs 测试平台实现了全面集成。该服务器使 AI 助手(大语言模型客户端)能够通过自然语言对话,直接与 Sauce Labs 的设备云进行交互、管理测试作业、分析构建情况以及监控测试基础设施。
✨ 主要特性
🚀 核心功能
- 账户管理:查看账户详情、团队信息和用户权限
- 设备云访问:浏览 300 多种真实设备(iOS、Android)和虚拟机
- 测试作业管理:检索近期作业、分析测试结果并调试失败情况
- 构建监控:跟踪构建状态、查看作业集合并分析测试套件
- 存储管理:管理上传的应用程序和测试工件
- 隧道监控:检查 Sauce Connect 隧道状态和配置
🔧 高级特性
- 实时设备状态:监控数据中心内设备的可用性和使用情况
- 跨平台测试:支持虚拟设备云(VDC)和真实设备云(RDC)
- 测试分析:提供详细的作业信息,包括日志、视频和性能指标
- 团队协作:支持多团队协作,并具备适当的访问控制
📦 安装指南
在所有情况下,你都需要将 start_server.sh.template 重命名为 start_server.sh,并将 /path/to/sauce-api-mcp 替换为你环境中的正确绝对路径。
前提条件
- Python 3.8 及以上版本
- 具有 API 访问权限的 Sauce Labs 账户
- Claude Desktop 应用程序
针对 Claude Desktop(Mac)
- 安装 MCP 服务器:
# 克隆仓库
git clone https://github.com/saucelabs/sauce-api-mcp.git
cd sauce-api-mcp
# 安装依赖项
pip install -e .
- 配置 Claude Desktop:
编辑你的 Claude Desktop 配置文件:
~/Library/Application\ Support/Claude/claude_desktop_config.json
- 添加 Sauce Labs MCP 服务器配置:
{
"mcpServers": {
"sauce-labs": {
"command": "python",
"args": ["/path/to/sauce-api-mcp/src/main.py"],
"env": {
"SAUCE_USERNAME": "your-sauce-username",
"SAUCE_ACCESS_KEY": "your-sauce-access-key"
}
}
}
}
- 重启 Claude Desktop 以加载新的 MCP 服务器。
针对 Claude Desktop(Windows)
- 安装 MCP 服务器:
# 克隆仓库
git clone https://github.com/saucelabs/sauce-api-mcp.git
cd sauce-api-mcp.git
# 安装依赖项
pip install -e .
- 配置 Claude Desktop: 编辑你的 Claude Desktop 配置文件:
# 打开配置文件(将 USERNAME 替换为你的 Windows 用户名)
notepad %APPDATA%\Claude\claude_desktop_config.json
- 添加 Sauce Labs MCP 服务器配置:
{
"mcpServers": {
"sauce-labs": {
"command": "python",
"args": ["/path/to/sauce-api-mcp/src/main.py"],
"env": {
"SAUCE_USERNAME": "your-sauce-username",
"SAUCE_ACCESS_KEY": "your-sauce-access-key"
}
}
}
}
- 重启 Claude Desktop 以加载新的 MCP 服务器。
针对 Claude Code(终端集成)
Claude Code 允许你直接从终端使用 Sauce Labs MCP 服务器进行 AI 辅助测试工作流。
- 安装 Claude Code:
# 安装 Claude Code(如果尚未安装)
curl -fsSL https://claude.ai/claude-code/install.sh | sh
- 安装 Sauce Labs MCP 服务器:
# 克隆并安装 MCP 服务器
git clone https://github.com/saucelabs/sauce-api-mcp.git
cd sauce-api-mcp
pip install -e .
- 配置大语言模型客户端:
Claude Code
创建或编辑你的 Claude Code 配置:
# 如果配置目录不存在,则创建它
mkdir -p ~/.config/claude-code
code ~/.config/claude-code/config.json
添加 Sauce Labs MCP 服务器配置:
{
"mcpServers": {
"sauce-labs": {
"command": "sauce-api-mcp.git",
"env": {
"SAUCE_USERNAME": "your-sauce-username",
"SAUCE_ACCESS_KEY": "your-sauce-access-key"
}
}
}
}
Goose
在你的 ~/.config/goose/config.yaml 文件中,添加以下扩展:
sauce-api-mcp:
args: []
bundled: null
cmd: /<path>/sauce-api-mcp/start_server.sh
description: Sauce Labs MCP for API
enabled: true
env_keys: []
envs: {}
name: sauce-api-mcp
timeout: 10
type: stdio
Gemini CLI
在你的 ~/.gemini/settings.json 文件中,添加以下内容:
{
"mcpServers": {
"sauce-api-mcp": {
"command": "/Users/marcusmerrell/Projects/sauce-api-mcp/start_server.sh",
"args": []
}
}
}
现在你可以提出如下问题:
- "显示我最近的测试失败情况"
- "查找可用于测试的 iPhone 设备"
- "分析我最新构建的性能"
📚 详细文档
必需的环境变量
- SAUCE_USERNAME:你的 Sauce Labs 用户名
- SAUCE_ACCESS_KEY:你的 Sauce Labs 访问密钥(在账户设置中找到)
可选配置
- SAUCE_REGION:Sauce Labs 数据中心区域(默认:us - west - 1)
- SAUCE_API_BASE:自定义 API 基础 URL(适用于企业账户)
获取你的 Sauce Labs 凭证
- 登录你的 Sauce Labs 账户
- 导航到“账户”→“用户设置”
- 复制你的用户名和访问密钥
- 将这些添加到你的 Claude Desktop 配置中
💻 使用示例
设备管理
"显示所有可用的 iPhone 设备"
"当前正在使用哪些 Android 设备?"
"为我找到一台用于测试的三星 Galaxy S24"
测试作业分析
"显示我最近的测试作业"
"分析我上次构建中的失败测试"
"获取作业 ID 为 abc123def456 的详细信息"
构建监控
"我最新构建的状态如何?"
"显示本周的所有构建"
"查找有失败测试的构建"
存储管理
"列出我上传的应用程序"
"显示应用程序存储使用情况"
"查找 iOS 演示应用程序"
团队协作
"我的测试团队有哪些成员?"
"显示团队设备分配情况"
"列出我组织中的所有用户"
🔧 技术细节
可用工具
账户与组织
- get_account_info - 检索当前用户账户信息
- lookup_users - 在你的组织中查找用户
- get_user - 获取详细的用户信息
- lookup_teams - 在你的组织中查找团队
- get_team - 获取团队详细信息和成员信息
- list_team_members - 列出特定团队的所有成员
设备管理
- get_devices_status - 列出所有可用设备及其状态
- get_specific_device - 获取特定设备的详细信息
- get_private_devices - 列出你的账户可用的私有设备
测试作业
- get_recent_jobs - 检索你最近的测试作业
- get_job_details - 获取特定作业的全面详细信息
- get_real_device_jobs - 列出真实设备上的活动作业
- get_specific_real_device_job - 获取特定真实设备作业的详细信息
- get_specific_real_device_job_asset - 下载作业资产(日志、视频、截图)
构建
- lookup_builds - 使用各种过滤器搜索构建
- get_build - 获取特定构建的详细信息
- lookup_jobs_in_build - 列出特定构建中的所有作业
存储
- get_storage_files - 列出上传的应用程序文件
- get_storage_groups - 列出应用程序存储组
- get_storage_groups_settings - 获取特定存储组的设置
隧道
- get_tunnels_for_user - 列出活动的 Sauce Connect 隧道
- get_tunnel_information - 获取特定隧道的详细信息
- get_current_jobs_for_tunnel - 查看使用特定隧道的作业
测试资产
- get_test_assets - 检索测试工件(日志、视频、截图)
- get_log_json_file - 获取结构化的测试执行日志
📄 许可证
本项目采用 MIT 许可证 - 有关详细信息,请参阅 LICENSE 文件。
常见问题排查
常见问题
"未找到 MCP 服务器"
- 确保 MCP 服务器可执行文件的路径正确
- 验证 Python 已安装且可访问
- 检查所有依赖项是否已安装
"身份验证失败"
- 验证你的 SAUCE_USERNAME 和 SAUCE_ACCESS_KEY 是否正确
- 确保凭证对请求的操作具有适当的权限
- 检查你的 Sauce Labs 账户是否处于活动状态
"未找到设备"
- 验证你的账户是否有权访问设备云
- 检查你所在团队的设备分配设置
- 确保你查询的是正确的数据中心区域
"未找到作业"
- 验证作业 ID 是否正确且属于你的账户
- 检查作业是来自 VDC 还是 RDC(不同的端点)
- 确保作业未因保留策略而过期
调试模式
通过设置环境变量启用调试日志记录:
{
"env": {
"SAUCE_USERNAME": "your-username",
"SAUCE_ACCESS_KEY": "your-access-key"
}
}
获取帮助
- Sauce Labs 文档:docs.saucelabs.com
- API 参考:docs.saucelabs.com/dev/api
- 支持:通过你的账户仪表盘联系 Sauce Labs 支持团队
项目路线图
本路线图概述了我们对该项目的愿景和优先级。它是一份动态文档,我们欢迎社区提供反馈和贡献!虽然我们旨在遵循此计划,但优先级可能会根据用户反馈和新机会而变化。
如果你想提供帮助,我们非常欢迎!
🎯 短期(未来 1 - 3 个月)
我们的近期重点是增强核心开发者体验并改进上下文管理。
资源与工具 - 优化模型调用
- 描述:为模型响应全面实现资源功能。对于某些提示,这将通过返回缓存结果而不是进行新的 API 调用,从而减少延迟和成本。
- 状态:规划中
🚀 中期(3 - 6 个月)
我们计划专注于添加 API 端点并改进与大语言模型的整体交互。我们还将维护服务器以跟上 Sauce Labs API 的变化,并在引入新产品线时添加支持。
免责声明
担保免责声明
本软件“按原样”提供,不提供任何形式的明示或暗示担保,包括但不限于适销性、特定用途适用性和不侵权的担保。在任何情况下,作者或版权持有者均不对因合同、侵权或其他方式引起的任何索赔、损害或其他责任负责,无论该责任是由本软件的使用或其他交易引起的。
责任限制
在任何情况下,Sauce Labs, Inc. 均不对任何直接、间接、偶然、特殊、惩戒性或后果性损害(包括但不限于替代商品或服务的采购;使用、数据或利润的损失;或业务中断)负责,无论该损害是如何引起的,也无论责任理论是基于合同、严格责任还是侵权(包括疏忽或其他方式),即使已被告知此类损害的可能性。
一般使用
MCP 服务器作为一个免费的开源工具提供,以促进与公开可用 API 的交互。用户可以根据 MIT 许可证的条款自由修改和分发该软件。
通过使用本软件,你承认你是自行承担风险使用的,并且你有责任遵守所有适用的法律法规。
赔偿责任
你同意赔偿并使 Sauce Labs, inc.(“Sauce Labs”)及其管理人员、董事、员工和代理人免受因你访问或使用本软件而引起的任何和所有索赔、责任、损害、损失或费用(包括合理的律师费和成本)。
这包括但不限于:
- 你与第三方大语言模型提供商的交互:你承认本软件使用公开可用的 API 与大语言模型(LLM)进行交互。你独自负责使用任何第三方大语言模型服务。这包括你遵守大语言模型提供商的条款和条件以及与你的使用相关的任何成本,如令牌费用。Sauce Labs 对任何第三方大语言模型提供商的内容、隐私政策或做法没有控制权,也不承担任何责任。
- 大语言模型生成的内容:你独自负责通过使用 MCP 服务器和底层大语言模型生成、接收或传输的内容。Sauce Labs 不认可也无法控制你或任何第三方通过服务器进行的通信内容。
- 你的代码和修改:你基于 MCP 服务器创建的任何修改、增强或衍生作品均属于你自己,你独自对其性能和使用可能产生的任何责任负责。
替代品









