@smartbear/mcp 0.9.0 → 0.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +38 -11
- package/dist/bugsnag/client/api/index.js +2 -0
- package/dist/bugsnag/client/filters.js +0 -6
- package/dist/bugsnag/client.js +238 -380
- package/dist/bugsnag/input-schemas.js +51 -0
- package/dist/collaborator/client.js +377 -0
- package/dist/common/cache.js +63 -0
- package/dist/common/client-registry.js +128 -0
- package/dist/common/register-clients.js +31 -0
- package/dist/common/server.js +77 -28
- package/dist/common/transport-http.js +377 -0
- package/dist/common/transport-stdio.js +43 -0
- package/dist/index.js +18 -60
- package/dist/pactflow/client/tools.js +4 -4
- package/dist/pactflow/client.js +39 -19
- package/dist/qmetry/client/auto-resolve.js +22 -0
- package/dist/qmetry/client/handlers.js +18 -4
- package/dist/qmetry/client/issues.js +98 -1
- package/dist/qmetry/client/project.js +18 -1
- package/dist/qmetry/client/testcase.js +79 -1
- package/dist/qmetry/client/testsuite.js +156 -1
- package/dist/qmetry/client/tools/index.js +17 -0
- package/dist/qmetry/client/tools/issue-tools.js +545 -0
- package/dist/qmetry/client/tools/project-tools.js +348 -0
- package/dist/qmetry/client/tools/requirement-tools.js +530 -0
- package/dist/qmetry/client/tools/testcase-tools.js +526 -0
- package/dist/qmetry/client/tools/testsuite-tools.js +772 -0
- package/dist/qmetry/client/tools/types.js +1 -0
- package/dist/qmetry/client.js +33 -11
- package/dist/qmetry/config/constants.js +14 -0
- package/dist/qmetry/config/rest-endpoints.js +10 -0
- package/dist/qmetry/types/common.js +287 -2
- package/dist/qmetry/types/issues.js +11 -1
- package/dist/qmetry/types/project.js +7 -0
- package/dist/qmetry/types/testcase.js +6 -0
- package/dist/qmetry/types/testsuite.js +19 -1
- package/dist/reflect/client.js +10 -4
- package/dist/{api-hub → swagger}/client/api.js +190 -2
- package/dist/{api-hub → swagger}/client/configuration.js +6 -1
- package/dist/swagger/client/index.js +6 -0
- package/dist/{api-hub → swagger}/client/portal-types.js +126 -0
- package/dist/swagger/client/tools.js +161 -0
- package/dist/swagger/client/user-management-types.js +24 -0
- package/dist/swagger/client.js +141 -0
- package/dist/swagger/config-utils.js +18 -0
- package/dist/zephyr/client.js +44 -6
- package/dist/zephyr/common/api-client.js +8 -0
- package/dist/zephyr/common/rest-api-schemas.js +5174 -0
- package/dist/zephyr/tool/priority/get-priorities.js +43 -0
- package/dist/zephyr/tool/project/get-project.js +39 -0
- package/dist/zephyr/tool/project/get-projects.js +7 -13
- package/dist/zephyr/tool/status/get-statuses.js +49 -0
- package/dist/zephyr/tool/test-case/get-test-case.js +39 -0
- package/dist/zephyr/tool/test-case/get-test-cases.js +64 -0
- package/dist/zephyr/tool/test-cycle/get-test-cycle.js +39 -0
- package/dist/zephyr/tool/test-cycle/get-test-cycles.js +72 -0
- package/dist/zephyr/tool/test-execution/get-test-execution.js +39 -0
- package/package.json +2 -2
- package/dist/api-hub/client/index.js +0 -5
- package/dist/api-hub/client/tools.js +0 -104
- package/dist/api-hub/client.js +0 -98
- package/dist/qmetry/client/tools.js +0 -1673
- package/dist/zephyr/common/types.js +0 -35
- /package/dist/{api-hub → swagger}/client/registry-types.js +0 -0
package/README.md
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
|
|
10
10
|
<!-- Badges -->
|
|
11
11
|
<div>
|
|
12
|
-
<a href="https://github.com/SmartBear/smartbear-mcp/actions/workflows/
|
|
12
|
+
<a href="https://github.com/SmartBear/smartbear-mcp/actions/workflows/test.yml"><img src="https://github.com/SmartBear/smartbear-mcp/actions/workflows/test.yml/badge.svg?branch=main" alt="Test Status"></a>
|
|
13
13
|
<a href="https://smartbear.github.io/smartbear-mcp/"><img src="https://img.shields.io/badge/coverage-dynamic-brightgreen" alt="Coverage"></a>
|
|
14
14
|
<a href="https://www.npmjs.com/package/@smartbear/mcp"><img src="https://img.shields.io/npm/v/@smartbear/mcp" alt="npm version"></a>
|
|
15
15
|
<a href="https://modelcontextprotocol.io"><img src="https://img.shields.io/badge/MCP-Compatible-blue" alt="MCP Compatible"></a>
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
</div>
|
|
19
19
|
<br />
|
|
20
20
|
|
|
21
|
-
A Model Context Protocol (MCP) server which provides AI assistants with seamless access to SmartBear's suite of testing and monitoring tools, including [BugSnag](https://www.bugsnag.com/), [Reflect](https://reflect.run), [
|
|
21
|
+
A Model Context Protocol (MCP) server which provides AI assistants with seamless access to SmartBear's suite of testing and monitoring tools, including [BugSnag](https://www.bugsnag.com/), [Reflect](https://reflect.run), [Swagger](https://www.smartbear.com/api-hub), [PactFlow](https://pactflow.io/), [Pact Broker](https://docs.pact.io/), [QMetry](https://www.qmetry.com/), [Zephyr](https://smartbear.com/test-management/zephyr/) and [Collaborator](https://smartbear.com/product/collaborator/).
|
|
22
22
|
|
|
23
23
|
## What is MCP?
|
|
24
24
|
|
|
@@ -30,16 +30,19 @@ See individual guides for suggested prompts and supported tools and resources:
|
|
|
30
30
|
|
|
31
31
|
- [BugSnag](https://developer.smartbear.com/smartbear-mcp/docs/bugsnag-integration) - Comprehensive error monitoring and debugging capabilities
|
|
32
32
|
- [Test Hub](https://developer.smartbear.com/smartbear-mcp/docs/test-hub-integration) - Test management and execution capabilities
|
|
33
|
-
-
|
|
34
|
-
- [
|
|
33
|
+
- **Swagger**
|
|
34
|
+
- [Portal](https://developer.smartbear.com/smartbear-mcp/docs/swagger-portal-integration) - Portal and product management capabilities
|
|
35
|
+
- [Studio](https://developer.smartbear.com/smartbear-mcp/docs/swagger-studio-integration) - API and Domain management capabilities
|
|
36
|
+
- [Contract Testing (PactFlow)](https://developer.smartbear.com/pactflow/default/getting-started) - Contract testing capabilities
|
|
35
37
|
- [QMetry](https://developer.smartbear.com/smartbear-mcp/docs/qmetry-integration) - QMetry Test Management capabilities
|
|
36
38
|
- [Zephyr](https://developer.smartbear.com/smartbear-mcp/docs/zephyr-integration) - Zephyr Test Management capabilities
|
|
39
|
+
- [Collaborator](https://developer.smartbear.com/smartbear-mcp/docs/collaborator-integration) - Review and Remote System Configuration management capabilities
|
|
37
40
|
|
|
38
41
|
|
|
39
42
|
## Prerequisites
|
|
40
43
|
|
|
41
44
|
- Node.js 20+ and npm
|
|
42
|
-
- Access to SmartBear products (BugSnag, Reflect,
|
|
45
|
+
- Access to SmartBear products (BugSnag, Reflect, Swagger, QMetry, or Zephyr)
|
|
43
46
|
- Valid API tokens for the products you want to integrate
|
|
44
47
|
|
|
45
48
|
## Installation
|
|
@@ -71,7 +74,7 @@ Alternatively, you can use `npx` (or globally install) the `@smartbear/mcp` pack
|
|
|
71
74
|
"BUGSNAG_AUTH_TOKEN": "${input:bugsnag_auth_token}",
|
|
72
75
|
"BUGSNAG_PROJECT_API_KEY": "${input:bugsnag_project_api_key}",
|
|
73
76
|
"REFLECT_API_TOKEN": "${input:reflect_api_token}",
|
|
74
|
-
"
|
|
77
|
+
"SWAGGER_API_KEY": "${input:swagger_api_key}",
|
|
75
78
|
"PACT_BROKER_BASE_URL": "${input:pact_broker_base_url}",
|
|
76
79
|
"PACT_BROKER_TOKEN": "${input:pact_broker_token}",
|
|
77
80
|
"PACT_BROKER_USERNAME": "${input:pact_broker_username}",
|
|
@@ -79,7 +82,10 @@ Alternatively, you can use `npx` (or globally install) the `@smartbear/mcp` pack
|
|
|
79
82
|
"QMETRY_API_KEY": "${input:qmetry_api_key}",
|
|
80
83
|
"QMETRY_BASE_URL": "${input:qmetry_base_url}",
|
|
81
84
|
"ZEPHYR_API_TOKEN": "${input:zephyr_api_token}",
|
|
82
|
-
"ZEPHYR_BASE_URL": "${input:zephyr_base_url}"
|
|
85
|
+
"ZEPHYR_BASE_URL": "${input:zephyr_base_url}",
|
|
86
|
+
"COLLAB_BASE_URL": "${input:collab_base_url}",
|
|
87
|
+
"COLLAB_USERNAME": "${input:collab_username}",
|
|
88
|
+
"COLLAB_LOGIN_TICKET": "${input:collab_login_ticket}"
|
|
83
89
|
}
|
|
84
90
|
}
|
|
85
91
|
},
|
|
@@ -103,9 +109,9 @@ Alternatively, you can use `npx` (or globally install) the `@smartbear/mcp` pack
|
|
|
103
109
|
"password": true
|
|
104
110
|
},
|
|
105
111
|
{
|
|
106
|
-
"id": "
|
|
112
|
+
"id": "swagger_api_key",
|
|
107
113
|
"type": "promptString",
|
|
108
|
-
"description": "
|
|
114
|
+
"description": "Swagger API Key - leave blank to disable Swagger tools",
|
|
109
115
|
"password": true
|
|
110
116
|
},
|
|
111
117
|
{
|
|
@@ -155,6 +161,24 @@ Alternatively, you can use `npx` (or globally install) the `@smartbear/mcp` pack
|
|
|
155
161
|
"type": "promptString",
|
|
156
162
|
"description": "Zephyr API base URL. By default, connects to https://api.zephyrscale.smartbear.com/v2. Change to region-specific endpoint if needed.",
|
|
157
163
|
"password": false
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
"id": "collab_base_url",
|
|
167
|
+
"type": "promptString",
|
|
168
|
+
"description": "Collab base url",
|
|
169
|
+
"password": true
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
"id": "collab_username",
|
|
173
|
+
"type": "promptString",
|
|
174
|
+
"description": "Collab username",
|
|
175
|
+
"password": true
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
"id": "collab_login_ticket",
|
|
179
|
+
"type": "promptString",
|
|
180
|
+
"description": "Collab login ticket",
|
|
181
|
+
"password": true
|
|
158
182
|
}
|
|
159
183
|
]
|
|
160
184
|
}
|
|
@@ -178,7 +202,7 @@ Add the following configuration to your `claude_desktop_config.json` to launch t
|
|
|
178
202
|
"BUGSNAG_AUTH_TOKEN": "your_personal_auth_token",
|
|
179
203
|
"BUGSNAG_PROJECT_API_KEY": "your_project_api_key",
|
|
180
204
|
"REFLECT_API_TOKEN": "your_reflect_token",
|
|
181
|
-
"
|
|
205
|
+
"SWAGGER_API_KEY": "your_swagger_key",
|
|
182
206
|
"PACT_BROKER_BASE_URL": "your_pactflow_or_pactbroker_base_url",
|
|
183
207
|
"PACT_BROKER_TOKEN": "your_pactflow_token",
|
|
184
208
|
"PACT_BROKER_USERNAME": "your_pact_broker_username",
|
|
@@ -186,7 +210,10 @@ Add the following configuration to your `claude_desktop_config.json` to launch t
|
|
|
186
210
|
"QMETRY_API_KEY": "your_qmetry_api_key",
|
|
187
211
|
"QMETRY_BASE_URL": "https://testmanagement.qmetry.com",
|
|
188
212
|
"ZEPHYR_API_TOKEN": "your_zephyr_api_token",
|
|
189
|
-
"ZEPHYR_BASE_URL": "https://api.zephyrscale.smartbear.com/v2"
|
|
213
|
+
"ZEPHYR_BASE_URL": "https://api.zephyrscale.smartbear.com/v2",
|
|
214
|
+
"COLLAB_BASE_URL": "your collab base url",
|
|
215
|
+
"COLLAB_USERNAME": "your collab user name",
|
|
216
|
+
"COLLAB_LOGIN_TICKET": "your collab login ticket"
|
|
190
217
|
}
|
|
191
218
|
}
|
|
192
219
|
}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
// Exporting all the types required outside of the api module - all imports from the tool should come from here
|
|
2
|
+
export { ErrorUpdateRequest } from "./api.js";
|
|
1
3
|
export { CurrentUserAPI } from "./CurrentUser.js";
|
|
2
4
|
export { Configuration } from "./configuration.js";
|
|
3
5
|
export { ErrorAPI } from "./Error.js";
|
|
@@ -4,12 +4,6 @@
|
|
|
4
4
|
* This file provides utility functions for creating filter URL parameters
|
|
5
5
|
* based on the BugSnag filtering specification described in the Filtering.md document.
|
|
6
6
|
*/
|
|
7
|
-
import { z } from "zod";
|
|
8
|
-
export const FilterValueSchema = z.object({
|
|
9
|
-
type: z.enum(["eq", "ne", "empty"]),
|
|
10
|
-
value: z.union([z.string(), z.boolean(), z.number()]),
|
|
11
|
-
});
|
|
12
|
-
export const FilterObjectSchema = z.record(z.array(FilterValueSchema));
|
|
13
7
|
/**
|
|
14
8
|
* Converts a FilterObject to URL search parameters
|
|
15
9
|
*
|