@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.
Files changed (64) hide show
  1. package/README.md +38 -11
  2. package/dist/bugsnag/client/api/index.js +2 -0
  3. package/dist/bugsnag/client/filters.js +0 -6
  4. package/dist/bugsnag/client.js +238 -380
  5. package/dist/bugsnag/input-schemas.js +51 -0
  6. package/dist/collaborator/client.js +377 -0
  7. package/dist/common/cache.js +63 -0
  8. package/dist/common/client-registry.js +128 -0
  9. package/dist/common/register-clients.js +31 -0
  10. package/dist/common/server.js +77 -28
  11. package/dist/common/transport-http.js +377 -0
  12. package/dist/common/transport-stdio.js +43 -0
  13. package/dist/index.js +18 -60
  14. package/dist/pactflow/client/tools.js +4 -4
  15. package/dist/pactflow/client.js +39 -19
  16. package/dist/qmetry/client/auto-resolve.js +22 -0
  17. package/dist/qmetry/client/handlers.js +18 -4
  18. package/dist/qmetry/client/issues.js +98 -1
  19. package/dist/qmetry/client/project.js +18 -1
  20. package/dist/qmetry/client/testcase.js +79 -1
  21. package/dist/qmetry/client/testsuite.js +156 -1
  22. package/dist/qmetry/client/tools/index.js +17 -0
  23. package/dist/qmetry/client/tools/issue-tools.js +545 -0
  24. package/dist/qmetry/client/tools/project-tools.js +348 -0
  25. package/dist/qmetry/client/tools/requirement-tools.js +530 -0
  26. package/dist/qmetry/client/tools/testcase-tools.js +526 -0
  27. package/dist/qmetry/client/tools/testsuite-tools.js +772 -0
  28. package/dist/qmetry/client/tools/types.js +1 -0
  29. package/dist/qmetry/client.js +33 -11
  30. package/dist/qmetry/config/constants.js +14 -0
  31. package/dist/qmetry/config/rest-endpoints.js +10 -0
  32. package/dist/qmetry/types/common.js +287 -2
  33. package/dist/qmetry/types/issues.js +11 -1
  34. package/dist/qmetry/types/project.js +7 -0
  35. package/dist/qmetry/types/testcase.js +6 -0
  36. package/dist/qmetry/types/testsuite.js +19 -1
  37. package/dist/reflect/client.js +10 -4
  38. package/dist/{api-hub → swagger}/client/api.js +190 -2
  39. package/dist/{api-hub → swagger}/client/configuration.js +6 -1
  40. package/dist/swagger/client/index.js +6 -0
  41. package/dist/{api-hub → swagger}/client/portal-types.js +126 -0
  42. package/dist/swagger/client/tools.js +161 -0
  43. package/dist/swagger/client/user-management-types.js +24 -0
  44. package/dist/swagger/client.js +141 -0
  45. package/dist/swagger/config-utils.js +18 -0
  46. package/dist/zephyr/client.js +44 -6
  47. package/dist/zephyr/common/api-client.js +8 -0
  48. package/dist/zephyr/common/rest-api-schemas.js +5174 -0
  49. package/dist/zephyr/tool/priority/get-priorities.js +43 -0
  50. package/dist/zephyr/tool/project/get-project.js +39 -0
  51. package/dist/zephyr/tool/project/get-projects.js +7 -13
  52. package/dist/zephyr/tool/status/get-statuses.js +49 -0
  53. package/dist/zephyr/tool/test-case/get-test-case.js +39 -0
  54. package/dist/zephyr/tool/test-case/get-test-cases.js +64 -0
  55. package/dist/zephyr/tool/test-cycle/get-test-cycle.js +39 -0
  56. package/dist/zephyr/tool/test-cycle/get-test-cycles.js +72 -0
  57. package/dist/zephyr/tool/test-execution/get-test-execution.js +39 -0
  58. package/package.json +2 -2
  59. package/dist/api-hub/client/index.js +0 -5
  60. package/dist/api-hub/client/tools.js +0 -104
  61. package/dist/api-hub/client.js +0 -98
  62. package/dist/qmetry/client/tools.js +0 -1673
  63. package/dist/zephyr/common/types.js +0 -35
  64. /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/node-ci.yml"><img src="https://github.com/SmartBear/smartbear-mcp/actions/workflows/node-ci.yml/badge.svg?branch=next" alt="Test Status"></a>
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), [API Hub](https://www.smartbear.com/api-hub), [PactFlow](https://pactflow.io/), [Pact Broker](https://docs.pact.io/), [QMetry](https://www.qmetry.com/), and [Zephyr](https://smartbear.com/test-management/zephyr/).
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
- - [API Hub](https://developer.smartbear.com/smartbear-mcp/docs/api-hub-integration) - Portal management capabilities
34
- - [PactFlow](https://developer.smartbear.com/pactflow/default/getting-started) - Contract testing capabilities
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, API Hub, QMetry, or Zephyr)
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
- "API_HUB_API_KEY": "${input:api_hub_api_key}",
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": "api_hub_api_key",
112
+ "id": "swagger_api_key",
107
113
  "type": "promptString",
108
- "description": "API Hub API Key - leave blank to disable API Hub tools",
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
- "API_HUB_API_KEY": "your_api_hub_key",
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
  *