mcpField
T
Testrail Mcp Server

Testrail Mcp Server

ローカル
github.com/uarlouski開発ツール446 日前に更新

Testrail Mcp Server について

TestRail MCP Server は、TestRail API v2 を通じて Claude、Cursor、Windsurf、VS Code などの AI アシスタントからテストケース、テストラン、結果を管理できるオープンソースの MCP サーバーです。QA エンジニア向けで、CI/CD で使える付属のコマンドラインツールも含みます。

主な機能

  1. 01ケース、テストラン、結果を扱う 35 のツール
  2. 02読み取り、書き込み、削除のモードによる権限制御
  3. 03結果の記録とファイル添付のアップロード
  4. 04パイプラインで利用できる付属の testrail-cli
  5. 05TestRail Cloud とセルフホスト版への対応

活用シーン

  1. 01自然言語によるテストケースの検索と作成
  2. 02チャットからのテストラン作成とケース結果の記録
  3. 03testrail-cli による CI パイプラインからの自動テスト結果の登録

MCP 対応

本プロジェクトは MCP サーバーであり、TestRail のプロジェクト、ケース、テストラン、結果、添付ファイルの操作を MCP ツールとして公開します。stdio トランスポートで動作します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"testrail": {
"command": "npx",
"args": [
"-y",
"@uarlouski/testrail-mcp-server"
],
"env": {
"TESTRAIL_INSTANCE_URL": "<TESTRAIL_INSTANCE_URL>",
"TESTRAIL_USERNAME": "<TESTRAIL_USERNAME>",
"TESTRAIL_API_KEY": "<TESTRAIL_API_KEY>",
"TESTRAIL_ENABLE_SHARED_STEPS": "<TESTRAIL_ENABLE_SHARED_STEPS>",
"TESTRAIL_ENABLE_CASE_HISTORY": "<TESTRAIL_ENABLE_CASE_HISTORY>",
"TESTRAIL_ENABLE_RAG_TOOLS": "<TESTRAIL_ENABLE_RAG_TOOLS>",
"TESTRAIL_ALLOW_WRITE_OPERATIONS": "<TESTRAIL_ALLOW_WRITE_OPERATIONS>",
"TESTRAIL_ALLOW_READ_OPERATIONS": "<TESTRAIL_ALLOW_READ_OPERATIONS>",
"TESTRAIL_ALLOW_DELETE_OPERATIONS": "<TESTRAIL_ALLOW_DELETE_OPERATIONS>",
"TESTRAIL_ENABLE_DEPRECATED_TOOLS": "<TESTRAIL_ENABLE_DEPRECATED_TOOLS>",
"TESTRAIL_DISABLED_TOOLS": "<TESTRAIL_DISABLED_TOOLS>",
"TESTRAIL_REQUEST_TIMEOUT_MS": "<TESTRAIL_REQUEST_TIMEOUT_MS>"
}
}
}
}
起動コマンドnpx -y @uarlouski/testrail-mcp-server
設定が必要な環境変数
TESTRAIL_INSTANCE_URLBase URL of your TestRail instance (e.g. https://example.testrail.io)
TESTRAIL_USERNAMEEmail address used to authenticate with TestRail
TESTRAIL_API_KEYシークレットAPI key for authenticating with the TestRail API
TESTRAIL_ENABLE_SHARED_STEPSEnable shared steps management
TESTRAIL_ENABLE_CASE_HISTORYEnable test case history management
TESTRAIL_ENABLE_RAG_TOOLSEnable Knowledge Base and RAG export tools
TESTRAIL_ALLOW_WRITE_OPERATIONSAllow write operations on TestRail (defaults to true)
TESTRAIL_ALLOW_READ_OPERATIONSAllow read operations on TestRail (defaults to true)
TESTRAIL_ALLOW_DELETE_OPERATIONSAllow delete operations on TestRail (defaults to false)
TESTRAIL_ENABLE_DEPRECATED_TOOLSEnable deprecated tools for backward compatibility (defaults to true)
TESTRAIL_DISABLED_TOOLSComma-separated list of tool names to disable
TESTRAIL_REQUEST_TIMEOUT_MSTimeout in milliseconds for TestRail HTTP requests (defaults to 30000ms)

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

パッケージ
npm@uarlouski/testrail-mcp-server3.3.1

ツール

26

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

パラメーター型必須説明
payloadanyはい操作('one' または 'many')と対応するパラメーターを含むペイロード

詳細

🚀 TestRail MCP Server

Claude、Cursor、Windsurf、VS Code を TestRail に接続します。AI によるテスト管理を支援するオープンソースの Model Context Protocol(MCP)サーバーです。

TestRail のプロジェクト管理、テストケースの検索と作成、テストランの開始、結果の記録、ファイルの添付を、AI アシスタントとの自然言語での会話から実行できます。または、同梱の testrail-cli を使って CI/CD から実行できます。QA エンジニアと AI 支援によるテスト自動化のために構築されています。

npm バージョン npm ダウンロード数 CI ステータス ライセンス TypeScript GitHub スター数 スコアバッジ M8ven スコア M8ven 認証済み Smithery バッジ

対応製品: Claude Desktop Cursor Windsurf VS Code

📚 ドキュメント · はじめに · ツールリファレンス · よくある質問


TestRail MCP サーバーとは?

TestRail MCP Server は、無料のオープンソース Model Context Protocol サーバーです。TestRail API v2 を通じて、AI アシスタントが TestRail インスタンスに直接、構造化された形でアクセスできるようにします。設定すると、Claude Desktop、Cursor、Windsurf、または VS Code の GitHub Copilot などのアシスタントが、チャットウィンドウから離れることなく、テストケースの検索、新規テストケースの作成、テストランの開始、結果の記録、添付ファイルのアップロードを代行できます。

35 個のツールを公開し、MCP stdio トランスポート経由で Node.js 18+ 上でローカル実行され、ライセンスは Apache 2.0 です。ホストやデプロイは不要です。MCP クライアントが必要に応じて npx で起動します。

コンテキストの切り替えは不要です。面倒なコピー&ペーストも不要です。AI に尋ねるだけです。

メモ

互換性の基準:TestRail 10.6.2(API v2)でテストおよび検証済みです。古い TestRail インスタンス(7.x より前のページネーションを含む)も、組み込みの後方互換性によってサポートされます。TestRail Cloud とセルフホスト型の TestRail Server の両方で動作します。

目次

✨ 主な機能

機能説明
🔍 インテリジェントな検出プロジェクト、テストスイート、セクションを閲覧し、QA 組織を自動的に把握できます。
📋 包括的なケース管理充実したカスタムフィールドのサポートにより、テストケースの取得、作成、更新、一括編集ができます。
▶️ 実行可能なテストテストランを作成し、test_id または case_id で結果を更新し、ファイルを添付して、ステータスを追跡できます。
🧠 コンテキストを考慮した AIテンプレート、フィールド、優先度、ステータスを動的に公開し、LLM が有効で構造化されたデータを生成できるようにします。
🖥️ CLI と CI/CD に標準対応LLM のオーバーヘッドなしで、bash、GitHub Actions、GitLab CI、Jenkins からすべてのツールを実行できます。
🔐 最小権限の制御モードごとの権限とツールごとの許可リストに対応し、破壊的な削除はデフォルトで無効です。

🚀 クイックスタートガイド

1. TestRail API キーを取得する

TestRail の My Settings → API Keys に移動して、新しいキーを生成します。キーはすぐにコピーしてください。TestRail で表示されるのは一度だけです。また、Administration → Site Settings → API で、インスタンス全体の API を有効にする必要があります。

2. MCP クライアントを設定する

MCP クライアントの設定にサーバーを追加します。以下に Claude Desktop の例を示します。Cursor、Windsurf、VS Code も同じ形式です(折りたたみセクションを参照)。

🤖 Claude Desktop

claude_desktop_config.json に以下を追加します。

{
  "mcpServers": {
    "testrail": {
      "command": "npx",
      "args": ["-y", "@uarlouski/testrail-mcp-server@latest"],
      "env": {
        "TESTRAIL_INSTANCE_URL": "https://your-instance.testrail.io",
        "TESTRAIL_USERNAME": "[email protected]",
        "TESTRAIL_API_KEY": "your-api-key",
        "TESTRAIL_ENABLE_SHARED_STEPS": "true"
      }
    }
  }
}
⌨️ Cursor

Settings → MCP → Add new MCP server を開くか、プロジェクト内の .cursor/mcp.json(すべてのプロジェクトに適用する場合は ~/.cursor/mcp.json)を編集します。

{
  "mcpServers": {
    "testrail": {
      "command": "npx",
      "args": ["-y", "@uarlouski/testrail-mcp-server@latest"],
      "env": {
        "TESTRAIL_INSTANCE_URL": "https://your-instance.testrail.io",
        "TESTRAIL_USERNAME": "[email protected]",
        "TESTRAIL_API_KEY": "your-api-key"
      }
    }
  }
}
🌊 Windsurf

~/.codeium/windsurf/mcp_config.json を編集します。

{
  "mcpServers": {
    "testrail": {
      "command": "npx",
      "args": ["-y", "@uarlouski/testrail-mcp-server@latest"],
      "env": {
        "TESTRAIL_INSTANCE_URL": "https://your-instance.testrail.io",
        "TESTRAIL_USERNAME": "[email protected]",
        "TESTRAIL_API_KEY": "your-api-key"
      }
    }
  }
}
💻 VS Code

.vscode/mcp.json に追加します。inputs ブロックにより、API キーをファイルに記載せずに済みます。

{
  "inputs": [
    {
      "id": "testrail-api-key",
      "type": "promptString",
      "description": "TestRail API key",
      "password": true
    }
  ],
  "servers": {
    "testrail": {
      "command": "npx",
      "args": ["-y", "@uarlouski/testrail-mcp-server@latest"],
      "env": {
        "TESTRAIL_INSTANCE_URL": "https://your-instance.testrail.io",
        "TESTRAIL_USERNAME": "[email protected]",
        "TESTRAIL_API_KEY": "${input:testrail-api-key}"
      }
    }
  }
}
🌐 その他の MCP クライアント

このサーバーは標準の MCP stdio トランスポートを使用するため、MCP に準拠した任意のクライアントで利用できます。必要な環境変数とともに npx コマンドをクライアントに指定してください。ポート、URL、トランスポートの設定は不要です。

### 3. 実際に使ってみる

クライアントを完全に再起動してから、AI アシスタントに次のように尋ねて、QA ワークフローを大幅に効率化しましょう。

  • 「TestRail のすべてのプロジェクトを一覧表示して、最新のアクティブなプロジェクトを見つけてください。」
  • 「プロジェクト内のアクティブなユーザーをすべて表示して、適切な担当者を見つけてください。」
  • 「プロジェクト 3 のセクション 5 にあるすべてのテストケースを表示してください。」
  • 「『Login Validation』の包括的なテストケースを、詳細な手順とともに作成してください。」
  • 「セクション 5 のケースを含む新しいテストランを開始してください。」
  • 「テストケース C1042 を合格としてマークし、『staging で検証済み』というコメントを追加してください。」

トラブルシューティングを含む、クライアントごとのセットアップ手順については、Getting Started ガイドをご覧ください。


🖥️ コマンドラインインターフェース(CLI)と CI/CD 自動化

AI アシスタントを介した操作に加えて、testrail-cli または npx を使用し、LLM によるオーバーヘッドなしで、シェルスクリプト、ターミナル環境、自動化された CI/CD パイプライン(GitHub Actions、GitLab CI、Jenkins)から TestRail の任意のツールを直接呼び出せます。

  • 決定論的な実行:標準的な Unix の終了コード(成功時は 0、エラー時は 1)を返します。
  • パイプラインに適した出力:jq などのツールにパイプできる、整形済みの JSON を stdout に出力します。診断情報とエラーは stderr に出力されます。
  • 重複なし:MCP サーバーとまったく同じ API クライアント、再試行ロジック、検証スキーマを再利用します。
呼び出し方法
# Method 1: Direct npx subcommand (Recommended)
npx @uarlouski/testrail-mcp-server cli <command> [flags]

# Method 2: Global or local binary
testrail-cli <command> [flags]

# Method 3: Via package runner
npx -p @uarlouski/testrail-mcp-server testrail-cli <command> [flags]
例
プロジェクトを検索する(query_project)
# List all active projects
npx @uarlouski/testrail-mcp-server cli query_project --action many

# Query a single project by ID
npx @uarlouski/testrail-mcp-server cli query_project --action one --project_id 1
自動テストの結果を報告する(add_results_for_cases)
# Submit results by case_id — what your test framework already knows
npx @uarlouski/testrail-mcp-server cli add_results_for_cases \
  --run_id 88 \
  --results '[{"case_id":1042,"status_id":1,"comment":"Passed in CI"}]'
ナレッジベース/RAG 用にケースをエクスポートする(export_cases_for_rag)
# Export all cases for a project into Markdown & metadata sidecars
npx @uarlouski/testrail-mcp-server cli export_cases_for_rag \
  --project_id 1 \
  --output_dir ./rag_exports

# Export specific cases by ID (comma-separated list)
npx @uarlouski/testrail-mcp-server cli export_cases_for_rag \
  --case_ids C101,C102,103 \
  --output_dir ./rag_exports
コマンドの検索とフラグのドキュメント
# List all available commands
npx @uarlouski/testrail-mcp-server cli --help

# Show parameter options for a specific tool
npx @uarlouski/testrail-mcp-server cli query_project --help

GitHub Actions、GitLab CI、Jenkins のワークフロー全般については、CLI と CI/CD のガイドをご覧ください。


⚙️ 環境変数とセキュリティ制御

変数説明必須デフォルト
TESTRAIL_INSTANCE_URLTestRail インスタンスの URL(例:https://example.testrail.io)✅
TESTRAIL_USERNAMETestRail ユーザーのメールアドレス✅
TESTRAIL_API_KEYTestRail API キー(ガイド)✅
TESTRAIL_ENABLE_SHARED_STEPSShared Steps 管理ツールを有効にするには、true に設定しますfalse
TESTRAIL_ENABLE_CASE_HISTORYケース履歴とリビジョン追跡ツールを有効にするには、true に設定しますfalse
TESTRAIL_ENABLE_RAG_TOOLS実験的なナレッジベース/RAG エクスポートツール(export_cases_for_rag)を有効にするには、true に設定します。互換性を損なう API 変更が行われる場合があります。false
TESTRAIL_ALLOW_WRITE_OPERATIONS書き込み操作(例:テストケース、テストラン、セクションの追加/更新)を許可しますtrue
TESTRAIL_ALLOW_READ_OPERATIONS読み取り操作(例:プロジェクト、テストケース、テンプレートの取得)を許可しますtrue
TESTRAIL_ALLOW_DELETE_OPERATIONS削除操作(例:ケースや共有ステップの削除)を許可します。true の場合に限り有効になります。false
TESTRAIL_ENABLE_DEPRECATED_TOOLS既存のホスト設定との後方互換性のために保持されています。true
TESTRAIL_DISABLED_TOOLS無効にする特定のツール名をカンマ区切りで指定します(例:mutate_suite,delete_entity)。無効なツール名が指定された場合は失敗します。-

必須の認証情報を 3 つだけ設定した場合、35 個のツールのうち 27 個が登録されます。すぐに利用できる読み取り専用および最小権限の設定については、設定ガイドをご覧ください。


🧰 利用可能なツール

全35個のツールを領域ごとに分類しています。それぞれに read、write、delete のいずれかのモードが設定されており、サーバーはこれを MCP アノテーション(readOnlyHint、destructiveHint、idempotentHint、openWorldHint)としてクライアントに公開します。

領域ツールリファレンス
検出とナビゲーションquery_project、query_suite、mutate_suite、query_section、mutate_section、get_usersドキュメント
テストケース管理get_case、get_cases、add_case、update_case、update_cases、get_case_fields、resolve_case_field、get_case_history、export_cases_for_ragドキュメント
実行と追跡query_run、mutate_run、query_test、get_tests、get_results、add_results、add_results_for_casesドキュメント
添付ファイルとメディアadd_attachment、query_attachmentドキュメント
共有ステップget_shared_step、get_shared_steps、get_shared_step_history、add_shared_step、update_shared_stepドキュメント
システムメタデータget_statuses、get_priorities、get_case_fields、get_templates、get_labels、get_configurationsドキュメント
削除delete_entityドキュメント

❓ よくある質問

どの AI アシスタントと MCP クライアントに対応していますか?

サーバーは標準の MCP stdio トランスポートを使用するため、MCP 準拠のクライアントであればどれでも利用できます。Claude Desktop、Cursor、Windsurf、VS Code でセットアップを検証済みです。ほかのクライアントも同じ方法で利用できます。3 つの環境変数を設定して npx -y @uarlouski/testrail-mcp-server@latest を実行してください。

どのバージョンの TestRail に対応していますか?

このサーバーは TestRail API v2 を対象としており、TestRail 10.6.2 でテストされています。古いインスタンスも利用できます。クライアントが、エンドポイントから最新のページネーション形式のレスポンスが返されるか、従来の単純な配列が返されるかを判定するため、7.x より前のインスタンスでも設定は不要です。TestRail Cloud とセルフホストの TestRail Server の両方に対応しています。

AI アシスタントに TestRail への書き込みアクセスを許可しても安全ですか?

アクセスは、すべて許可するか一切許可しないかではなく、段階的に制御できます。各ツールには read、write、delete のいずれかのモードが設定されており、TESTRAIL_ALLOW_DELETE_OPERATIONS=true を明示的に設定しない限り、削除は無効です。TESTRAIL_ALLOW_WRITE_OPERATIONS=false ですべての書き込みを無効にするか、TESTRAIL_DISABLED_TOOLS でツール名を指定して個別にブロックできます。サーバーはローカルで実行され、お使いの TestRail インスタンスとのみ通信します。テレメトリーはなく、間に第三者サービスも介在しません。

無料で使えますか?

はい。Apache 2.0 ライセンスで、追加料金のプラン、ライセンスキー、利用制限はありません。ご自身の TestRail サブスクリプションと、AI アシスタントの利用料金は別途必要です。CLI の LLM 利用料金は一切かかりません。

AI アシスタントなしで CI/CD に使えますか?

はい。このパッケージには testrail-cli バイナリが含まれており、すべてのツールをサブコマンドとして利用できます。同じ API クライアント、リトライ処理、検証スキーマを再利用します。標準出力には JSON、標準エラー出力には診断情報を出力し、終了コードは 0 または 1 です。CLI ガイドをご覧ください。

存在しないカスタムフィールドを AI が勝手に作らないようにするにはどうすればよいですか?

その心配はありません。add_case または update_case がデータを送信する前に、サーバーは各フィールドキーをお使いのインスタンスの実際のスキーマ(get_case_fields で取得)と照合し、未知のキーを拒否します。テンプレート、優先度、ステータス、構成もツールとして公開されているため、モデルは推測ではなく、正しい ID を検索して使用します。

コンテキストウィンドウを圧迫せずに、何千ものテストケースを扱うにはどうすればよいですか?

get_cases に output_file を渡すか、export_cases_for_rag に output_dir を渡してください。サーバーはすべての結果をページネーションで取得し、生の JSON をディスクに書き込み、モデルには短い概要のみを返します。

詳しくはFAQ 全文をご覧ください。


📚 ドキュメントとツールの完全なリファレンス

包括的なガイド、詳細な設定オプション、利用可能なすべてのツールの完全な説明については、公式ドキュメントサイトをご覧ください。

👉 TestRail MCP Server のドキュメント

  • 🚀 はじめに:Claude、Cursor、Windsurf、VS Code のクライアントごとのセットアップ。
  • ⚙️ 設定:すべての環境変数、権限、機能フラグ。
  • 🧰 すべてのツール:35 個のツールすべてを、モードや機能フラグとともに 1 つの表にまとめています。
  • 🔭 探索とナビゲーション:プロジェクト、スイート、セクションの探索。
  • 📋 テストケース管理:テストケースの取得、作成、一括更新。
  • ▶️ 実行と追跡:テストランの管理とテスト結果の送信。
  • 📎 添付ファイル:ファイルやディレクトリの自動圧縮とアップロード。
  • 🔗 共有ステップ:再利用可能なステップ定義の管理。
  • 🖥️ CLI と CI/CD:LLM を使わないパイプラインの自動化。

🤝 貢献

オープンソースへの貢献を歓迎します!機能のリクエストについては、issue を作成するか、改善のためのプルリクエストをお送りください。

📜 ライセンス

このプロジェクトは Apache License 2.0 のライセンスに基づいています。


TestRail MCP Server · Model Context Protocol を使用して構築

コメント

MCP は初めてですか?

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

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