mcpField
Q
QTM4J

QTM4J

ローカル
github.com/denis-platonov開発ツール028 週間前に更新

QTM4J について

QTM4J は、QMetry Test Management for Jira Open API を通じてテストケースやテストサイクルを管理する MCP サーバーです。検索、編集、整理、実行結果の更新など、QA ワークフローを支援します。

主な機能

  1. 01テストケースの検索と取得
  2. 02テストケースの作成と更新
  3. 03テストステップとフォルダーの管理
  4. 04テストサイクルの作成と終了
  5. 05サイクルへのケース追加と結果更新

活用シーン

  1. 01キーやプロジェクト条件でケースを検索
  2. 02テストケースをプロジェクトのフォルダーに整理
  3. 03合格・不合格の実行結果を記録

MCP 対応

QTM4J Open API の操作を、テストケース、フォルダー、ステップ、サイクル管理などのツールとして MCP クライアントに公開します。利用には QTM4J API キーが必要です。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"denis-platonov-qtm4j": {
"command": "npx",
"args": [
"-y",
"@denis-platonov/qtm4j-mcp-server"
],
"env": {
"QTM4J_API_KEY": "<QTM4J_API_KEY>",
"QTM4J_BASE_URL": "<QTM4J_BASE_URL>",
"QTM4J_PROJECT_ID": "<QTM4J_PROJECT_ID>",
"NODE_TLS_REJECT_UNAUTHORIZED": "<NODE_TLS_REJECT_UNAUTHORIZED>"
}
}
}
}
起動コマンドnpx -y @denis-platonov/qtm4j-mcp-server
設定が必要な環境変数
QTM4J_API_KEYシークレットQTM4J Open API key.
QTM4J_BASE_URLBase URL for the QTM4J Open API.
QTM4J_PROJECT_IDDefault QTM4J project ID used when tool calls omit projectId.
NODE_TLS_REJECT_UNAUTHORIZEDシークレットSet to 0 only when you must allow self-signed TLS certificates.

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@denis-platonov/qtm4j-mcp-server1.1.0

ツール

21

掲載時のツール一覧 · 3 週間前に更新

パラメーター型必須説明
summarystringはいテストサイクル名/概要
projectIdnumberいいえQMetry プロジェクト ID(デフォルト:なし)

詳細

qtm4j-mcp-server

CI npm version Release License: MIT

qtmcloud.qmetry.com/rest/api/latest にある QTM4J(QMetry Test Management for Jira)Open API 用の MCP サーバーです。

公開パッケージ:@denis-platonov/qtm4j-mcp-server

MCP Registry 名:io.github.denis-platonov/qtm4j

対応クライアント

クライアントステータス備考
Cursor対応~/.cursor/mcp.json で npx を設定
JetBrains IDEs対応AI Assistant MCP 設定で設定
VS Code対応.vscode/mcp.json またはユーザープロファイルの mcp.json で設定
Antigravity対応raw config を使用して mcp_config.json で設定

ツール

ツール説明
create_test_cycle新しいテストサイクル(実行)を作成
search_test_caseキー(例:PE26-TC-2)でテストケースを検索
search_test_casesページネーションと任意の概要フィルターを使用してテストケースを検索
list_all_project_test_casesプロジェクト全体のページネーションされたテストケース結果を取得して統合
create_test_case新しいテストケースを作成し、必要に応じてフォルダーに配置
list_cycle_test_casesサイクル内のすべてのテストケースを一覧表示
add_test_case_to_cycleテストケースをサイクルに追加
update_execution_status実行結果(Pass/Fail)を更新
close_test_cycleテストサイクルを終了
get_attachment_url添付ファイルのアップロード用署名付き URL を取得
add_test_case_stepsテストケースのバージョンに 1 つ以上のステップを追加
add_test_case_to_foldersテストケースのバージョンを 1 つ以上のフォルダーに追加
create_test_case_folderプロジェクトにテストケースフォルダーを作成
get_test_caseID またはキーでテストケースを取得
get_test_case_details特定のテストケースのバージョンの詳細をすべて取得
get_test_case_stepsテストケースのバージョンのステップを一覧表示または検索
list_test_case_foldersプロジェクトのテストケースフォルダーをフラットパス形式で一覧表示
remove_test_case_from_foldersテストケースのバージョンをフォルダーから削除
update_test_case_descriptionテストケースのバージョンの説明を更新
update_test_case_step既存のテストステップを更新
update_test_case_summaryテストケースのバージョンの概要を更新

startAt を使う search_test_cases、list_all_project_test_cases、フォルダーおよびステップ用ヘルパーを含む全ツールは、src/tools.ts で定義されています。npm run build の後に npm run list-tools を実行すると、登録済みのすべてのツール名が表示されます。Cursor がこのビルドを使用していることを確認するには、これを使ってください(list_all_project_test_cases が表示されるはずです)。

Cursor:すべての機能を利用するにはローカルビルドを使用

npx @denis-platonov/qtm4j-mcp-server は古い npm リリースである場合があります。list_all_project_test_cases などのツールと正しい startAt の処理を確実に利用するには:

  1. このディレクトリで npm install && npm run build を実行します。
  2. cursor-mcp.example.json をユーザー用 Cursor 設定 ~/.cursor/mcp.json に統合します(Windows:%USERPROFILE%\.cursor\mcp.json)。args のパスを絶対パスの dist/index.js に変更します。
  3. npm run list-tools を実行し、ツール数が想定どおりであることを確認します。
  4. Cursor を再起動するか、MCP サーバーをオフ/オンに切り替えます。
Cursor ワークスペースのツール記述子

エージェント向けのヒントとして Cursor のワークスペース mcps/<server>/tools/*.json を使用する場合は、それらの JSON スキーマを src/tools.ts と同期させてください(Zod 定義と同じパラメーター名を使用)。ツールを変更した後は、MCP を再ビルドして再起動してください。

セットアップ

前提条件
  • Node.js 20+
  • QTM4J Open API キー(Jira の「QMetry」>「Configuration」>「Open API」から生成)
Cursor での使用

~/.cursor/mcp.json に追加します。

{
  "mcpServers": {
    "qtm4j": {
      "command": "npx",
      "args": ["-y", "@denis-platonov/qtm4j-mcp-server"],
      "env": {
        "QTM4J_API_KEY": "your-api-key",
        "QTM4J_BASE_URL": "https://qtmcloud.qmetry.com/rest/api/latest",
        "QTM4J_PROJECT_ID": "10800"
      }
    }
  }
}
JetBrains IDE での使用

JetBrains AI Assistant で「Tools > AI Assistant > Model Context Protocol (MCP)」を開き、次を追加します。

{
  "mcpServers": {
    "qtm4j": {
      "command": "npx",
      "args": ["-y", "@denis-platonov/qtm4j-mcp-server"],
      "env": {
        "QTM4J_API_KEY": "your-api-key",
        "QTM4J_BASE_URL": "https://qtmcloud.qmetry.com/rest/api/latest",
        "QTM4J_PROJECT_ID": "10800"
      }
    }
  }
}

設定を保存した後、AI Assistant を再起動します。

VS Code での使用

ユーザーまたはワークスペースの MCP 設定ファイル(通常は .vscode/mcp.json またはプロファイルレベルの mcp.json)に、次を追加します。

{
  "servers": {
    "qtm4j": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@denis-platonov/qtm4j-mcp-server"],
      "env": {
        "QTM4J_API_KEY": "your-api-key",
        "QTM4J_BASE_URL": "https://qtmcloud.qmetry.com/rest/api/latest",
        "QTM4J_PROJECT_ID": "10800"
      }
    }
  }
}
Antigravity での使用

Antigravity で「Manage MCP Servers」を開き、次に「View raw config」を開いて、mcp_config.json に次を追加します。

{
  "mcpServers": {
    "qtm4j": {
      "command": "npx",
      "args": ["-y", "@denis-platonov/qtm4j-mcp-server"],
      "env": {
        "QTM4J_API_KEY": "your-api-key",
        "QTM4J_BASE_URL": "https://qtmcloud.qmetry.com/rest/api/latest",
        "QTM4J_PROJECT_ID": "10800"
      }
    }
  }
}
ビルド
npm install
npm run build
テスト

密閉型テストスイートを実行します。

npm test

ウォッチモードを使わずに一度だけ実行します。

npm run test:run

カバレッジレポートを生成します。

npm run test:coverage

実際の QTM4J 環境に対して、オプトイン方式のライブ統合テストを実行します。

npm run test:live

必要な環境が整っていない場合、ライブテストはスキップされます。現在、ライブテストスイートは次に対応しています。

  • QTM4J_API_KEY、QTM4J_BASE_URL、QTM4J_PROJECT_ID を使用した読み取り中心のチェック
  • QTM4J_LIVE_TEST_CASE_KEY による検索のカバレッジ
  • QTM4J_LIVE_TEST_CYCLE_ID によるサイクル一覧のカバレッジ
  • QTM4J_LIVE_TEST_EXECUTION_ID による添付ファイル URL のカバレッジ
  • オプションの変更チェックは QTM4J_LIVE_ENABLE_MUTATIONS=1 の場合のみ実行

例:

QTM4J_API_KEY=your-api-key \
QTM4J_PROJECT_ID=10800 \
QTM4J_LIVE_TEST_CASE_KEY=PE26-TC-2 \
QTM4J_LIVE_TEST_CYCLE_ID=PE26-R1 \
QTM4J_LIVE_TEST_EXECUTION_ID=12345 \
npm run test:live
ローカル開発

cursor-mcp.example.json を ~/.cursor/mcp.json にコピーし(既存の mcpServers とマージします)、args に dist/index.js の絶対パスを設定します。たとえば Windows の場合:

"args": ["C:/Users/you/projects/qa-all-in-one/tools/qtm4j-mcp-server/dist/index.js"]

オプション:自己署名 TLS を使用する必要がある場合に限り、env に NODE_TLS_REJECT_UNAUTHORIZED": "0" を設定します。

公開

このリポジトリでは、タグをトリガーとする GitHub Actions のリリースワークフローを使用します。

  1. package.json と server.json のリリースバージョンを一致させます。
  2. ローカルでビルドして検証します。
npm run build
npm run test:run
  1. リリース準備の変更をコミットします。
  2. リリースタグを作成してプッシュします。
git tag v1.1.0
git push origin sync/desktop-qtm4j-source
git push origin v1.1.0
  1. GitHub Actions がタグと package.json および server.json のバージョンが一致することを検証し、npm パッケージを公開した後、server.json を MCP Registry に公開します。

その後、次を実行して検出を確認できます。

curl "https://registry.modelcontextprotocol.io/v0.1/servers?search=io.github.denis-platonov/qtm4j"
GitHub Actions

このリポジトリには次の 2 つのワークフローが含まれています。

  • CI:main へのプッシュ時とプルリクエスト時に、npm run build、npm run test:run、npm run test:coverage を実行します
  • Release:v* に一致するタグで実行され、タグと package.json および server.json のバージョンが一致することを検証してから、npm に公開し、その後 server.json を MCP Registry に公開します

リリースワークフローを使用するには、次のリポジトリシークレットを追加します。

  • NPM_TOKEN:@denis-platonov/qtm4j-mcp-server の公開権限を持つ npm アクセストークン

次のようにリリースを作成します。

git tag v1.1.0
git push origin v1.1.0
環境変数
変数必須デフォルト説明
QTM4J_API_KEYはい—QTM4J Open API キー
QTM4J_BASE_URLいいえhttps://qtmcloud.qmetry.com/rest/api/latestAPI ベース URL
QTM4J_PROJECT_IDいいえ—デフォルトのプロジェクト ID(毎回の呼び出しで指定する必要がなくなります)
NODE_TLS_REJECT_UNAUTHORIZEDいいえ—自己署名証明書の場合は 0 に設定

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。