Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,13 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.9.0] - 2025-10-22

### Added
- [Qmetry] Added 4 New QMetry tools to enhance test management capabilities [#194](https://github.com/SmartBear/smartbear-mcp/pull/194)
- [Qmetry] Implement comprehensive test case tooling with enhanced error handling [#193](https://github.com/SmartBear/smartbear-mcp/pull/193)
- [API Hub] Add `scan_api_standardization` tool for validating API definitions against organization standardization rules [#176](https://github.com/SmartBear/smartbear-mcp/pull/176)

## [0.8.0] - 2025-10-13

### Added
Expand Down
39 changes: 32 additions & 7 deletions docs/custom-words.txt
Original file line number Diff line number Diff line change
@@ -1,13 +1,38 @@
armeabi
Asgi
Aspnet
autoplay
frankkilcommins
bugsnag
cvpv
dsym
Dsyms
Eventmachine
frankkilcommins
jailbroken
latestby
Magento
minidump
modelcontextprotocol
smartbear
SWAGGERHUB
undiscarded
undiscard
Negroni
pactflow
pacticipant
latestby
cvpv
qmetry
Reactnative
reindexing
smartbear
sogou
stackframe
stackframes
SWAGGERHUB
symbolicate
Symfony
Tvos
Unbucketed
undiscard
undiscarded
Unrealengine
unstar
unthrottled
Watchos
Webapi
Wsgi
22 changes: 17 additions & 5 deletions docs/products/SmartBear MCP Server/getting-started.md
Original file line number Diff line number Diff line change
Expand Up @@ -476,11 +476,23 @@ Once configured, you can interact with SmartBear tools through natural language
### QMetry Test Management

- "Set current QMetry project for your account"
- "Fetch current QMetry project for your account"
- "List all QMetry Test Cases for your account"
- "Get the QMetry Test Case details"
- "Get the QMetry Test Case detail for specific version"
- "Get the QMetry Test Case steps"
- "Get current QMetry project for your account"
- "Get QMetry releases and cycles from your account."
- "Get QMetry builds from the current project."
- "Get QMetry platforms from the current project."
- "List all QMetry requirements for your account."
- "Get the QMetry requirement details."
- "List all QMetry Test Cases for your account."
- "Get the QMetry Test Case details."
- "Get the QMetry Test Case detail for specific version."
- "Get the QMetry Test Case steps."
- "Get test cases that are linked to a specific requirement."
- "Get requirements that are linked to a specific test case."
- "Get execution records for a specific test case by ID."
- "Get test suites that can be linked to test cases in QMetry."
- "Get executions for a given test suite in QMetry."
- "Get test case runs under a specific test suite run execution in QMetry."
- "Get issues that are linked to a specific test case run in QMetry."

### Zephyr Test Management

Expand Down
123 changes: 109 additions & 14 deletions docs/products/SmartBear MCP Server/qmetry-integration.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,34 +12,129 @@ The QMetry client provides the following test management capabilities as listed

### `get_qmetry_project`

- Purpose: Fetch current QMetry project for your account.
- Purpose: Fetch the current QMetry project for your account.
- Returns: Complete list of project information available within your account.
- Use case: Retrieve available current project details.
- Use case: Retrieve current project details.

### `get_qmetry_releases_cycles`

- Purpose: Fetch QMetry releases and cycles from your account.
- Returns: Project hierarchy containing releases and their associated cycles.
- Use case: Retrieve all releases and cycles.

### `get_qmetry_builds`

- Purpose: Fetch QMetry builds from the current project.
- Returns: List of available builds with pagination metadata.
- Use case: Retrieve all builds.

### `get_qmetry_platforms`

- Purpose: Fetch QMetry platforms from the current project.
- Returns: List of available platforms for cross-platform testing.
- Use case: Retrieve all platforms.

### `list_qmetry_requirements`

- Purpose: Fetch QMetry requirements from the current project.
- Parameters: Requirement required parameters (`viewId`, `folderPath`).
- Returns: Complete list of requirements available within your current project.
- Use case: Retrieve available requirements.

### `qmetry_requirement_details`

- Purpose: Get the QMetry requirement details.
- Parameters: Requirement identifier (`id`), Version identifier (`version`).
- Returns: Complete details for the given requirement.
- Use case: Retrieve requirement details.

### `qmetry_testcases_linked_to_requirement`

- Purpose: Get test cases that are linked to a specific requirement.
- Parameters: Requirement identifier (`rqID`).
- Returns: Complete list of test cases linked to a requirement.
- Use case: Retrieve available test cases linked to a requirement.

### `list_qmetry_testcases`

- Purpose: List all QMetry Test Cases for your account.
- Purpose: List all QMetry test cases from the current project.
- Parameters: Test Case required parameters (`viewId`, `folderPath`).
- Returns: Complete list of Test Cases available within your account.
- Use case: Retrieve available Test Cases.
- Returns: Complete list of test cases available within the current project.
- Use case: Retrieve available test cases.

### `qmetry_testcase_details`

- Purpose: Get the QMetry Test Case details.
- Purpose: Get the QMetry test case details.
- Parameters: Test Case identifier (`tcID`).
- Returns: Complete details for given Test Case.
- Use case: Retrieve Test Case details.
- Returns: Complete details for given test case.
- Use case: Retrieve test case details.

### `qmetry_testcase_details_by_version`

- Purpose: Get the QMetry Test Case detail for specific version.
- Purpose: Get the QMetry test case detail for specific version.
- Parameters: Test Case identifier (`id`), Version identifier (`version`).
- Returns: Complete details for given Test Case version.
- Use case: Retrieve Test Case details for a specific version.
- Returns: Complete details for given test case version.
- Use case: Retrieve test case details for a specific version.

### `qmetry_testcase_steps`

- Purpose: Get the QMetry Test Case steps.
- Purpose: Get the QMetry test case steps.
- Parameters: Test Case identifier (`id`).
- Returns: Complete Test Case Steps Details for given Test Case.
- Use case: Retrieve Test Case steps.
- Returns: Complete test case steps details for given test case.
- Use case: Retrieve test case steps.

### `qmetry_requirements_linked_to_testcase`

- Purpose: Get requirements that are linked to a specific test case.
- Parameters: Test Case identifier (`tcID`).
- Returns: Complete list of requirements linked to a test case.
- Use case: Retrieve available requirements linked to a test case.

### `qmetry_testcase_executions`

- Purpose: Get execution records for a specific test case by ID.
- Parameters: Test Case identifier (`tcID`).
- Returns: Complete list of test case executions.
- Use case: Retrieve available test case execution records.

### `get_issues_linked_to_tc`

- Purpose: Get issues that are linked to a specific test case in QMetry.
- Parameters: Test Case identifier (`tcID`).
- Returns: Complete list of issues linked to the test case with issue details, priorities, and status information.
- Use case: Retrieve defects and issues associated with a specific test case for traceability and defect tracking.

### `get_testsuites_by_testcase`

- Purpose: Get test suites that can be linked to test cases in QMetry.
- Parameters: Test Suite folder ID identifier (`tsFolderID`).
- Returns: Complete list of test suites for the given test case.
- Use case: Retrieve available test suites that can be linked to a test case.

### `get_testcases_by_testsuite`

- Purpose: Get test cases that are linked to a specific test suite in QMetry.
- Parameters: Test Suite identifier (`tsID`).
- Returns: Complete list of test cases linked to the test suite with test case details and metadata.
- Use case: Retrieve all test cases associated with a specific test suite for execution planning and management.

### `qmetry_executions_by_testsuite`

- Purpose: Get executions for a given test suite in QMetry.
- Parameters: Test Suite identifier (`tsID`), Test Suite folder ID (`tsFolderID`).
- Returns: Complete list of executions for the test suite with execution details.
- Use case: Retrieve test suite execution data.

### `get_testcase_runs_by_testsuite_run`

- Purpose: Get test case runs under a specific test suite run execution in QMetry.
- Parameters: Test Suite Run identifier (`test suite run ID`), Test Execution View identifier (`viewId`).
- Returns: Complete list of test case runs with detailed execution information, status, tester details, and run metadata.
- Use case: Retrieve individual test case execution results and status within a specific test suite run.

### `get_linked_issues_by_testcase_run`

- Purpose: Get issues that are linked to a specific test case run in QMetry.
- Parameters: Test Case Run identifier (`entityId`).
- Returns: Complete list of issues linked to the test case run with issue details, priorities, status, owner information, and linkage metadata.
- Use case: Retrieve issues associated with specific test case executions for defect tracking, traceability analysis, and test execution quality monitoring.
2 changes: 1 addition & 1 deletion docs/products/SmartBear MCP Server/zephyr-integration.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
![zephyr.svg](images/embedded/zephyr.svg)
![zephyr.svg](./images/embedded/zephyr.svg)

The Zephyr client provides test management and execution capabilities within Zephyr as listed on [Available Tools](#Available-Tools).

Expand Down
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@smartbear/mcp",
"version": "0.8.0",
"version": "0.9.0",
"description": "MCP server for interacting SmartBear Products",
"keywords": [
"smartbear",
Expand Down
8 changes: 8 additions & 0 deletions src/api-hub/client.ts
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@ import {
type PortalsListResponse,
type Product,
type ProductsListResponse,
type ScanStandardizationParams,
type StandardizationResult,
type SuccessResponse,
TOOLS,
type UpdatePortalArgs,
Expand Down Expand Up @@ -129,6 +131,12 @@ export class ApiHubClient implements Client {
return this.api.createApiFromTemplate(args);
}

async scanStandardization(
args: ScanStandardizationParams,
): Promise<StandardizationResult | FallbackResponse> {
return this.api.scanStandardization(args);
}

registerTools(
register: RegisterToolsFunction,
_getInput: GetInputFunction,
Expand Down
Loading