关于 SmartBear MCP
SmartBear MCP 是一个 MCP 服务,让 AI 助手可以访问 SmartBear 的测试与监控工具,包括 BugSnag、Reflect、Swagger、PactFlow、QTM4J 等。适用于需要在 AI 工作流中查询测试数据和管理测试自动化的团队。
主要功能
- 01覆盖 BearQ、BugSnag、Reflect、Swagger 等多个产品
- 02提供远程 MCP 服务,无需安装即可连接
- 03通过 npm 包 @smartbear/mcp 本地运行
- 04可通过 MCP_CLIENTS 仅加载所需产品
- 05支持 HTTP 模式部署与 OAuth 配置
适用场景
- 01在 AI 助手中查询 BugSnag 错误信息并定位问题
- 02通过自然语言管理 Zephyr 或 QMetry 中的测试用例
- 03在编码过程中查看 Swagger API 文档
MCP 相关
该项目本身是 MCP 服务,向 MCP 客户端暴露 SmartBear 各产品的工具与资源。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://bugsnag.mcp.smartbear.com/mcpclaude mcp add --transport http com-smartbear-smartbear https://bugsnag.mcp.smartbear.com/mcp{"mcpServers":{"com-smartbear-smartbear":{"type":"http","url":"https://bugsnag.mcp.smartbear.com/mcp"}}}在 Cursor 中打开{"servers":{"com-smartbear-smartbear":{"type":"http","url":"https://bugsnag.mcp.smartbear.com/mcp"}}}在 VS Code 中打开{"mcpServers":{"com-smartbear-smartbear":{"type":"http","url":"https://bugsnag.mcp.smartbear.com/mcp"}}}{"mcpServers":{"com-smartbear-smartbear":{"serverUrl":"https://bugsnag.mcp.smartbear.com/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
https://bugsnag.mcp.smartbear.com/mcphttps://zephyr.mcp.smartbear.com/mcp工具
详细介绍
一个模型上下文协议(MCP)服务,可让 AI 助手无缝访问 SmartBear 的测试和监控工具套件,包括 BearQ、BugSnag、Reflect、Swagger、PactFlow、Pact Broker、QMetry、QTM4J、Zephyr 和 Collaborator。
什么是 MCP?
模型上下文协议(MCP)是一项开放标准,可让 AI 助手安全地连接到外部数据源和工具。此服务通过自然语言接口开放 SmartBear 的 API,让你能够直接在 AI 工作流中查询测试数据、分析性能指标并管理测试自动化。
支持的工具
请参阅各个指南,了解推荐的提示词以及支持的工具和资源:
- BearQ - AI 驱动的 QA 测试管理和执行功能
- BugSnag - 全面的错误监控和调试功能
- Reflect - 测试管理和执行功能
- Swagger
- Portal - 门户和产品管理功能
- Studio - API 和领域管理功能,包括根据提示词由 AI 驱动的 API 生成和自动标准化
- 契约测试(PactFlow) - 契约测试功能
- 功能测试 - API 测试发现功能
- QMetry - QMetry 测试管理功能
- Zephyr - Zephyr 测试管理功能
- Collaborator - 评审和远程系统配置管理功能
- QTM4J - QTM4J for Jira 测试管理功能
远程 MCP 服务
对于 BugSnag、Swagger 和 Zephyr,SmartBear 提供远程 MCP 服务,你可以通过 URL 直接从 MCP 客户端连接,无需安装、Node.js 或 API 令牌。身份验证通过 OAuth 浏览器流程处理。
| 产品 | 服务 URL |
|---|---|
| Swagger | https://swagger.mcp.smartbear.com/mcp |
| BugSnag | https://bugsnag.mcp.smartbear.com/mcp |
| Zephyr | https://zephyr.mcp.smartbear.com/mcp |
请参阅远程 MCP 服务指南,了解各客户端的设置说明。你可以同时连接多个远程服务。
需要 BearQ、Reflect、QMetry、QTM4J、PactFlow、Collaborator 或 Functional Testing? 这些产品仅可通过下方的本地 npm 包使用,该包将所有产品整合到单个 MCP 服务中。
先决条件
- Node.js 22+ 和 npm
- SmartBear 产品访问权限(BugSnag、Reflect、Swagger、QMetry、QTM4J 或 Zephyr)
- 要集成的产品的有效 API 令牌
本地 MCP 服务安装(npm)
对于所有产品,或者如果你更喜欢在本地运行服务,MCP 服务以 npm 包 @smartbear/mcp 的形式分发,便于集成到开发工作流中。
服务启动时会使用你在 SmartBear 产品中使用的 API 密钥或身份验证令牌。这些参数均为可选项,如果你不使用相应产品,可以从配置中移除。对于 BugSnag,如果提供项目 API 密钥,所有搜索结果都会限定在 BugSnag 仪表板中的单个项目内。如果希望一次与多个项目交互,请将此字段留空。
VS Code with Copilot
如需快速设置,请在命令面板中使用“MCP: Add server…”命令添加 @smartbear/mcp npm 包。
📋 手动安装
或者,你可以使用 npx(或全局安装)@smartbear/mcp 包来运行服务,并将以下内容添加到 .vscode/mcp.json 文件中:
{
"servers": {
"smartbear": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@smartbear/mcp@latest"
],
"env": {
"BEARQ_API_TOKEN": "${input:bearq_api_token}",
"BEARQ_API_BASE_URL": "${input:bearq_api_base_url}",
"BUGSNAG_AUTH_TOKEN": "${input:bugsnag_auth_token}",
"BUGSNAG_PROJECT_API_KEY": "${input:bugsnag_project_api_key}",
"REFLECT_API_TOKEN": "${input:reflect_api_token}",
"SWAGGER_API_KEY": "${input:swagger_api_key}",
"SWAGGER_PORTAL_BASE_PATH": "${input:swagger_portal_base_path}",
"SWAGGER_REGISTRY_BASE_PATH": "${input:swagger_registry_base_path}",
"SWAGGER_UI_BASE_PATH": "${input:swagger_ui_base_path}",
"PACT_BROKER_BASE_URL": "${input:pact_broker_base_url}",
"PACT_BROKER_TOKEN": "${input:pact_broker_token}",
"PACT_BROKER_USERNAME": "${input:pact_broker_username}",
"PACT_BROKER_PASSWORD": "${input:pact_broker_password}",
"QMETRY_API_KEY": "${input:qmetry_api_key}",
"QMETRY_BASE_URL": "${input:qmetry_base_url}",
"ZEPHYR_API_TOKEN": "${input:zephyr_api_token}",
"ZEPHYR_BASE_URL": "${input:zephyr_base_url}",
"COLLABORATOR_BASE_URL": "${input:collab_base_url}",
"COLLABORATOR_USERNAME": "${input:collab_username}",
"COLLABORATOR_LOGIN_TICKET": "${input:collab_login_ticket}",
"QTM4J_API_KEY": "${input:qtm4j_api_key}",
"QTM4J_BASE_URL": "${input:qtm4j_base_url}",
"QTM4J_AUTOMATION_API_KEY": "${input:qtm4j_automation_api_key}",
"SWAGGER_FUNCTIONAL_TESTING_API_TOKEN": "${input:swagger_functional_testing_api_token}",
"SWAGGER_FUNCTIONAL_TESTING_BASE_PATH": "${input:swagger_functional_testing_base_path}"
}
}
},
"inputs": [
{
"id": "bearq_api_token",
"type": "promptString",
"description": "BearQ workspace API token - leave blank to disable BearQ tools",
"password": true
},
{
"id": "bearq_api_base_url",
"type": "promptString",
"description": "BearQ API base URL - leave blank to use the default (https://api.bearq.smartbear.com)",
"password": false
},
{
"id": "bugsnag_auth_token",
"type": "promptString",
"description": "BugSnag Auth Token - leave blank to disable BugSnag tools",
"password": true
},
{
"id": "bugsnag_project_api_key",
"type": "promptString",
"description": "BugSnag Project API Key - for single project interactions",
"password": false
},
{
"id": "reflect_api_token",
"type": "promptString",
"description": "Reflect API Token - leave blank to disable Reflect tools",
"password": true
},
{
"id": "swagger_api_key",
"type": "promptString",
"description": "Swagger API Key - leave blank to disable Swagger tools",
"password": true
},
{
"id": "swagger_portal_base_path",
"type": "promptString",
"description": "Swagger Portal API base path - only needed for on-premise installations (leave blank for cloud)",
"password": false
},
{
"id": "swagger_registry_base_path",
"type": "promptString",
"description": "Swagger Registry API base path - only needed for on-premise installations (leave blank for cloud)",
"password": false
},
{
"id": "swagger_ui_base_path",
"type": "promptString",
"description": "Swagger UI base path - only needed for on-premise installations (leave blank for cloud)",
"password": false
},
{
"id": "pact_broker_base_url",
"type": "promptString",
"description": "PactFlow or Pact Broker base url - leave blank to disable the tools",
"password": true
},
{
"id": "pact_broker_token",
"type": "promptString",
"description": "PactFlow Authentication Token",
"password": true
},
{
"id": "pact_broker_username",
"type": "promptString",
"description": "Pact Broker Username",
"password": true
},
{
"id": "pact_broker_password",
"type": "promptString",
"description": "Pact Broker Password",
"password": true
},
{
"id": "qmetry_api_key",
"type": "promptString",
"description": "QMetry Open API Key",
"password": true
},
{
"id": "qmetry_base_url",
"type": "promptString",
"description": "By default, connects to https://testmanagement.qmetry.com. Change to a custom QMetry server URL or a region-specific endpoint if needed.",
"password": false
},
{
"id": "zephyr_api_token",
"type": "promptString",
"description": "Zephyr API token - leave blank to disable Zephyr tools",
"password": true
},
{
"id": "zephyr_base_url",
"type": "promptString",
"description": "Zephyr API base URL. By default, connects to https://api.zephyrscale.smartbear.com/v2. Change to region-specific endpoint if needed.",
"password": false
},
{
"id": "collab_base_url",
"type": "promptString",
"description": "Collab base url",
"password": true
},
{
"id": "collab_username",
"type": "promptString",
"description": "Collab username",
"password": true
},
{
"id": "collab_login_ticket",
"type": "promptString",
"description": "Collab login ticket",
"password": true
},
{
"id": "qtm4j_api_key",
"type": "promptString",
"description": "QTM4J API Key",
"password": true
},
{
"id": "qtm4j_base_url",
"type": "promptString",
"description": "US region (default): https://qtmcloud.qmetry.com. Australia region: https://syd-qtmcloud.qmetry.com.",
"password": false
},
{
"id": "qtm4j_automation_api_key",
"type": "promptString",
"description": "QTM4J Automation API Key - required for automation tools, leave blank to disable them",
"password": true
},
{
"id": "swagger_functional_testing_api_token",
"type": "promptString",
"description": "Swagger Functional Testing API Token - leave blank to disable Functional Testing tools",
"password": true
},
{
"id": "swagger_functional_testing_base_path",
"type": "promptString",
"description": "Swagger Functional Testing API Base URL - leave blank to use the default (https://api.reflect.run/v1)",
"password": false
}
]
}
Claude Desktop
将以下配置添加到 claude_desktop_config.json,以通过 npx 启动 MCP 服务:
{
"mcpServers": {
"smartbear": {
"command": "npx",
"args": [
"-y",
"@smartbear/mcp@latest"
],
"env": {
"BEARQ_API_TOKEN": "your_bearq_api_token",
"BUGSNAG_AUTH_TOKEN": "your_personal_auth_token",
"BUGSNAG_PROJECT_API_KEY": "your_project_api_key",
"REFLECT_API_TOKEN": "your_reflect_token",
"SWAGGER_API_KEY": "your_swagger_key",
"SWAGGER_PORTAL_BASE_PATH": "https://api.portal.swaggerhub.com/v1",
"SWAGGER_REGISTRY_BASE_PATH": "https://api.swaggerhub.com",
"SWAGGER_UI_BASE_PATH": "https://app.swaggerhub.com",
"PACT_BROKER_BASE_URL": "your_pactflow_or_pactbroker_base_url",
"PACT_BROKER_TOKEN": "your_pactflow_token",
"PACT_BROKER_USERNAME": "your_pact_broker_username",
"PACT_BROKER_PASSWORD": "your_pact_broker_password",
"QMETRY_API_KEY": "your_qmetry_api_key",
"QMETRY_BASE_URL": "https://testmanagement.qmetry.com",
"ZEPHYR_API_TOKEN": "your_zephyr_api_token",
"ZEPHYR_BASE_URL": "https://api.zephyrscale.smartbear.com/v2",
"COLLABORATOR_BASE_URL": "your collab base url",
"COLLABORATOR_USERNAME": "your collab user name",
"COLLABORATOR_LOGIN_TICKET": "your collab login ticket",
"QTM4J_API_KEY": "your_qtm4j_key",
"QTM4J_BASE_URL": "https://qtmcloud.qmetry.com",
"QTM4J_AUTOMATION_API_KEY": "your_qtm4j_automation_api_key",
"SWAGGER_FUNCTIONAL_TESTING_API_TOKEN": "your_swagger_functional_testing_api_token",
"SWAGGER_FUNCTIONAL_TESTING_BASE_PATH": "https://api.reflect.run/v1"
}
}
}
}
仅加载你使用的产品
将 MCP_CLIENTS 设置为以逗号分隔且不区分大小写的产品名称列表(例如 "MCP_CLIENTS": "QMetry"),即可仅加载这些产品。这样可以缩短启动时间,有助于应对 initialize 超时时间较短的客户端。有效名称包括 BearQ、BugSnag、Collaborator、Contract Testing、QMetry、QTM4J、Reflect、Swagger 和 Zephyr。未设置时,将加载所有产品。
服务配置(HTTP 模式)
| 变量 | 默认值 | 用途 |
|---|---|---|
BASE_URL | (根据请求推导) | 服务自身的公开 URL,例如 https://mcp.example.com。如果部署在代理或负载均衡器后方,请设置此项,否则用于 OAuth 发现的地址将根据客户端提供的 Host 标头推导。 |
TRUST_PROXY | false | 仅当服务前方的代理会设置 X-Forwarded-Host 并移除客户端提供的任何同名值时,才设置为 true。 |
MCP_SERVER_AMPLITUDE_API_KEY | (未设置 — 已关闭分析) | 共享 SmartBear Amplitude 项目的 API 密钥。设置后,服务会报告 Server Initialized、Session Started、Session Ended、Tool Called 和 Tools Listed 使用事件(仅工具执行结果和耗时,不会报告工具参数、结果、凭据或原始电子邮件)。未设置时,不会跟踪任何内容。仅适用于 HTTP 模式。 |
文档
如需详细介绍、示例和高级配置,请访问 📖 完整文档
本地开发
如果你是希望为 SmartBear MCP 服务做出贡献的开发者,请参阅CONTRIBUTING.md指南。
许可证
此 MCP 服务采用 MIT 许可证。您可以自由使用、修改和分发该软件,但须遵守 MIT 许可证的条款和条件。详情请参阅项目仓库中的 LICENSE 文件。
支持
- 搜索尚未解决和已解决的问题,查找类似问题
- 报告错误或申请功能
SmartBear MCP Server - 将 SmartBear 测试和监控生态系统的强大功能融入 AI 驱动的开发工作流。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。