M00N Report について
M00N ReportのMCPサーバーは、M00N Reportのテスト管理プラットフォームを通じて、AIアシスタントによるテストケース、手動実行、リリース、プロジェクトの健全性管理を可能にします。MCPクライアント向けのローカルstdioパッケージと、claude.aiおよびclaude.com向けのホスト型コネクターを提供します。
主な機能
- 01テストケースの作成・編集
- 02手動実行の計画と記録
- 03自動テストとケースの関連付け
- 04リリースと実行リンクの管理
- 05健全性とカバレッジの確認
- 06分析データとテスト履歴の検索
活用シーン
- 01未カバー機能のテストケース作成
- 02手動テストサイクルの結果記録
- 03リリース準備状況とカバレッジ不足の確認
- 04不安定なテストやリグレッションの調査
MCP 対応
M00N Reportの操作をMCPツール、ガイド付きプロンプト、読み取り専用リソースとして公開します。MCPキーを使うローカル実行と、claude.aiおよびclaude.com限定のホスト型OAuth 2.1コネクターに対応します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @m00nsolutions/mcp-serverM00N_API_URLYour M00N Report URL. Root origin, no /api suffix.M00N_API_KEYシークレットAn MCP key from Settings. Anything without the m00n_mcp_ prefix is refused before the first request.M00N_DEBUGAdds per-request detail to stderr, including each tool call's arguments.M00N_TIMEOUT_MSRequest timeout in milliseconds. A bare number; anything else falls back to the default.M00N_INSECURE_SSLAccept a self-signed certificate. Self-hosted instances only.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
@m00nsolutions/mcp-server
MCP を介したエージェント型テスト管理です。このサーバーを使うと、AI アシスタントは説明を読むだけでなく、実際に作業できます。M00N Report は AI ネイティブなテスト管理プラットフォームで、テストケースの作成、手動テスト実行の計画と登録、自動テストを対象のテストケースに紐付け、リリースの作成、プロジェクトの健全性の確認ができます。
どのインストール方法が必要ですか?
| この npm パッケージ(stdio) | ホスト型リモートコネクター | |
|---|---|---|
| 実行方法 | npx @m00nsolutions/mcp-server をローカルプロセスとして実行 | ローカルプロセスは不要です。クライアントは HTTP 経由で API と通信します |
| 認証 | M00N_API_KEY に設定する MCP キー | PKCE を使用した OAuth 2.1、ブラウザーの同意画面 |
| クライアント | Claude Code、Claude Desktop、Cursor など、任意の MCP クライアント | claude.ai と claude.com のみ |
claude.ai または claude.com 以外から接続する場合は、MCP キーを使ってこのパッケージを使用してください。README の以降の内容は、この方法について説明します。コネクターについては、コネクターガイドを参照してください。
要件
Node 20 以降、および MCP 対応クライアント。
インストール
インストール手順はありません。以下の設定に従って、クライアントが npx で起動します。
共有環境または CI 環境でバージョンを固定するには、args のパッケージ名にバージョンを追加します(例:["-y", "@m00nsolutions/mcp-server@<version>"])。公開済みのバージョンは npm view @m00nsolutions/mcp-server versions で確認できます。ここでは意図的にバージョン番号ではなくプレースホルダーを使っています。具体的なバージョンを例示すると次のリリースですぐに古くなり、現在の修正が含まれないバージョンへの固定を勧めることになるためです。
クイックスタート
1. MCP キーを取得する
M00N Report で Settings -> MCP Keys を開き、キーを作成します。キーは m00n_mcp_ に続く 48 個の 16 進数で始まります。これはテストレポーターが使用する認証情報とは異なります。そちらは m00n_ で始まり、このサーバーでは拒否されます。
MCP キーが持つ権限は、紐付けられたアカウントの権限と完全に同じで、それを超えることはありません。また、権限の範囲をさらに絞ることもできます。範囲を絞ると、クライアントに表示されるツールの一覧からツールが削除されます。想定よりツールの一覧が短い場合は、障害ではなく権限範囲の設定によるものです。
キーは、お使いのマシン上にあるご自身の MCP クライアント設定に記述してください。リポジトリ内にあるワークスペースファイルには記述しないでください。
2. クライアントを接続する
Claude Code の場合は、次の 1 行を使用します。
claude mcp add m00n --env M00N_API_URL=https://m00nreport.com --env M00N_API_KEY=m00n_mcp_... -- npx -y @m00nsolutions/mcp-server
それ以外のクライアントでは、同じ JSON ブロックを使用します。
{
"mcpServers": {
"m00n": {
"command": "npx",
"args": ["-y", "@m00nsolutions/mcp-server"],
"env": {
"M00N_API_URL": "https://m00nreport.com",
"M00N_API_KEY": "m00n_mcp_your_key_here"
}
}
}
}
このブロックを記述する場所:
| クライアント | 設定ファイル |
|---|---|
| Cursor | ~/.cursor/mcp.json |
| Claude Desktop、macOS | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Claude Desktop、Windows | %APPDATA%\Claude\claude_desktop_config.json |
セルフホスト環境の場合は、M00N_API_URL に独自のルートオリジンを設定します。/api は付けないでください。末尾のスラッシュは自動的に削除されます。
3. 接続を確認する
クライアントを再起動してから、次のように尋ねます。
M00N Report のプロジェクトを一覧表示してください
プロジェクトの一覧が表示されれば、サーバーが接続され、キーが有効です。エラーが表示される場合、またはアシスタントがそのようなツールはないと答える場合は、接続されていません。トラブルシューティングを参照してください。
ツール
8 つの領域があります。引数を含む全リストは、コードと並べて管理されている /documentation/mcp/tools にあります。サーバーは起動時にインスタンスから独自のリストを取得するため、クライアントに表示される内容は、クライアント接続時にインスタンスがサポートしていたものです。
| 領域 | 対象 |
|---|---|
| プロジェクトと分析 | プロジェクト、ローンチの傾向と統計、テストごとの履歴、自動テスト全体の検索 |
| テストケース | 自動テストの作成、読み取り、更新、移動、削除、一括編集、および対象となるケースとのリンク |
| フォルダーとスイート | フォルダーとスイートの階層、およびフォルダーごとの統計 |
| テストコレクション | 任意の実行に追加できる、再利用可能な名前付きケースセット |
| 手動実行 | スイート、コレクション、または個別のケースから実行を作成し、ケースごとの結果を記録 |
| リリース | リリースの作成と管理、および対象となるローンチの追加と解除 |
| ヘルスとカバレッジ | 総合的なヘルスチェック、双方向のカバレッジギャップ、ケースの提案、機能スキャン、レポートのエクスポート |
| 外部リンク | ケースに Jira または Linear のチケットを追加・削除 |
実行とは手動テストの実施です。担当者、環境、日付、およびケースを追加した時点のスナップショットに基づいて記録されるステップごとの結果が含まれます。
キーから参照できるツールの数は、インスタンスによって決まります。
curl -s -H "X-MCP-Key: $M00N_API_KEY" "$M00N_API_URL/api/mcp/tools" | jq .count
スコープが限定されたキーでは、参照できる数が少なくなります。意図的にここでは数を記載していません。提供内容はリリースによって変わるため、README に記載した数字は、誰も更新を忘れない場所に記載された数字だからです。
プロンプト
クライアントが名前で提示できる、ガイド付きの複数ステップのワークフローです。それぞれに、名前または UUID を指定する単一の省略可能な project 引数があります。省略した場合、対象範囲内にプロジェクトが 1 つだけであれば、サーバーがそのプロジェクトを選択します。
| プロンプト | 機能 |
|---|---|
analyze_flaky_tests | コード変更なしで成功と失敗を繰り返すテストを見つけ、順位付けします |
debug_test_failure | 履歴とトレースをたどり、個々の失敗の原因を調査します |
release_readiness | リリースを安全に出荷できるか判断します |
generate_test_cases | テストケースがない領域の手動テストケースを作成します |
weekly_health_report | プロジェクト全体の週次サマリーを作成します |
investigate_regression | 成功した実行と失敗した実行の間で何が変わったかを見つけます |
run_manual_execution | 手動テストサイクルの準備からケースごとの結果記録までを実施します |
リソース
クライアントがツールを呼び出さずに取得できる読み取り専用ビューです。すべてのプロジェクト、プロジェクトのヘルスサマリー、不安定なテストのレポート、現在失敗しているテスト、フォルダー構造、ローンチレポート、テストケースの内容、リリースのサマリーが含まれます。
設定
| 環境変数 | 必須 | デフォルト | 説明 |
|---|---|---|---|
M00N_API_URL | 接続に必要 | M00N Report の URL です。ルートオリジンを指定し、/api のサフィックスは付けません。末尾のスラッシュは自動的に削除されます。 | |
M00N_API_KEY | 接続に必要 | MCP キー(m00n_mcp_...)です。このプレフィックスがない値は、最初のリクエストの前に拒否されます。 | |
M00N_DEBUG | いいえ | false | リクエストごとの詳細を標準エラー出力に追加します。各ツール呼び出しの引数も含まれます。起動手順とエラーは、どちらの場合もログに記録されます。 |
M00N_TIMEOUT_MS | いいえ | 30000 | ミリ秒単位の数値のみを指定するリクエストタイムアウトです。60s、1e4、30,000、1.5 は拒否され、標準エラー出力に警告が表示され、デフォルト値が使用されます。 |
M00N_INSECURE_SSL | いいえ | false | 自己署名証明書を受け入れます。セルフホスト可能なインスタンスのみで使用してください。 |
2 つのブール値は、大文字と小文字を問わず true、1、yes の場合にオンになります。それ以外の値(false と 0 を含む)ではオフのままです。
最初の 2 つの値は、両方設定するか、どちらも設定しないでください。片方だけを設定すると誤りとして拒否されます。設定が不完全でも起動するサーバーは、起動しないサーバーよりも診断が難しくなるためです。
ここでのベース URL は M00N_API_URL です。テストレポーターでは、同じ URL を M00N_SERVER_URL と呼びます。6 つのパッケージすべてが M00N_API_KEY を読み取りますが、それらが使うのは MCP キーではなくプロジェクト API キーなので、エクスポートした 1 つのシェル変数を両方に使うことはできません。
キーなしでの実行
M00N_API_URL と M00N_API_KEY のどちらも設定せずに起動すると、サーバーはプレビューモードで実行されます。バンドルされたスナップショットからツール、プロンプト、リソースを一覧表示し、設定すべき項目を示すメッセージとともに、すべての呼び出しを拒否します。送信先がないため、何も送信されません。
これにより、誰もサインアップする前に、インスペクター、クライアント、ディレクトリからツールの一覧を確認できます。これはサーバーの説明であり、実際に動作するものではありません。そのため、一覧はお使いのインスタンスではなくスナップショットから取得されます。通常、スコープが限定されたキーで表示されるツールは、スナップショットに表示されるツールより少なくなります。
メンテナーは、スコープの限定されていないキーを使って npm run snapshot:refresh を実行し、スナップショットを更新します。
セルフホスト
M00N_API_URL にご自身のインスタンスを指定し、そのインスタンスから MCP キーを発行してください。それ以外はすべて同じです。テストデータをネットワークの外に出せないことがセルフホストの理由である場合に重要な点です。
自己署名証明書を使う場合は、同じ env ブロックに "M00N_INSECURE_SSL": "true" を追加してください。詳細は /documentation/mcp/self-hosted をご覧ください。
送信される内容
HTTPS 経由で M00N_API_URL に送信されるのは、アシスタントが行うツール呼び出しとその引数です。サーバーはご自身のインスタンスへのプロキシであり、それ自体には何も保存しません。
すべてのツール呼び出しは、アプリ内の UI から確認できる MCP 監査ログに記録されます。また、キーごとのレート制限により、エージェントが暴走した場合の呼び出し数が制限されます。キーがこのログや stderr に書き込まれることはありません。M00N_DEBUG を有効にすると、すべてのツール呼び出しの引数が stderr に出力されるため、その出力もデータそのものと同様に扱ってください。
トラブルシューティング
| 症状 | 原因 |
|---|---|
| クライアントに M00N Report のツールが表示されない | 設定が再読み込みされていません。会話だけでなく、クライアントを完全に再起動してください。 |
ツールは一覧に表示されるが、すべての呼び出しで running unconfigured と返される | M00N_API_URL も M00N_API_KEY もプロセスに渡されていないため、プレビューモードで起動しました。env ブロックが実際にこのサーバーに適用されていることを確認してください。 |
M00N_API_KEY should start with "m00n_mcp_" | これはプロジェクト API キーで、テストレポーターが使う種類のキーです。MCP キーは別のキーです。Settings -> MCP Keys を確認してください。 |
Authentication failed: Invalid or expired MCP key | キーが誤っているか、失効しているか、別のインスタンスのものです。または M00N_API_URL に /api のサフィックスが含まれているため、キーが正しくてもすべてのリクエストが 401 になります。まず URL を確認し、その後新しいキーを発行してください。 |
WARNING: M00N_API_URL is http://... | エラーではなく、サーバーは稼働を続けます。すべてのリクエストでキーが暗号化されずに送信されることを示しています。インスタンスが信頼できるプライベートネットワーク上にない限り、https を使用してください。ループバックアドレスでは警告されません。 |
... redirected to ... | URL がリダイレクトを返しています。MCP キーがリダイレクト先に送られるため、リダイレクトは追跡されません。直接応答するアドレス(通常は https:// 形式)を M00N_API_URL に設定してください。 |
Cannot connect to M00N Report API at ... | その URL で待ち受けているものがありません。インスタンスが停止しているか、ポートにアクセスできません。 |
Cannot resolve M00N Report API host | ホスト名を解決できません。入力ミスか、ネットワーク外からアクセスしているプライベートな名前が原因です。 |
Request to M00N Report API timed out | M00N_TIMEOUT_MS を増やすか、ネットワーク経路を確認してください。 |
SSL certificate error connecting to ... | セルフホスト可能なインスタンスで自己署名証明書が使われています。M00N_INSECURE_SSL を true に設定してください。 |
Not found during ... | 行の残りはサーバー自身の応答で、通常は存在するプロジェクトなど、解決方法が示されています。設定を変更する前に内容を確認してください。 |
Rate limit exceeded. Retry after Ns. | スライディングウィンドウ方式で、キーごとに毎分 1000 回のツール呼び出しが可能です。メッセージに待機時間が示されます。タスクに取り組むエージェントが上限に近づくことはほとんどありません。上限に達した場合は、通常ループが原因です。 |
| 想定より少ないツールしか表示されない | キーに権限の範囲が設定されているか、インスタンスのバージョンがパッケージより古い可能性があります。ツール一覧はお使いのインスタンスから取得されます。 |
サーバーは M00N_DEBUG の設定にかかわらず stderr にログを出力し、ほとんどのクライアントでは MCP パネルに表示されます。各リクエストとその引数も出力するには、M00N_DEBUG を true に設定してください。
既知の制限事項
- ツール一覧は起動時に一度だけ読み込まれます。 キーの権限範囲を変更したり、インスタンスをアップグレードしたりしても、クライアントを再起動するまでは古い一覧が表示されます。
- 設定済みの場合、
GET /api/healthにアクセスできる必要があります。 これは最初にチェックされ、失敗するとサーバーが停止します。そのため、プロキシが/api/mcp/*のみを転送していると、すべてのツールが動作する場合でもツールはまったく表示されません。 - ツールが 0 個に制限されたキーでは起動しません。 空の一覧で接続するのではなく、サーバーは終了します。これは設定済みの場合の動作です。認証情報がない場合は、代わりにプレビューモードで起動します。
- プロンプトとリソースはオプションです。 それらの一覧取得に失敗しても、サーバーは stderr に理由を出力して起動します。そのセッション中、クライアントには一切表示されません。
- リダイレクトは拒否され、追跡されません。 キーはカスタムヘッダーで送信されます。リダイレクトを追跡するクライアントは認識している認証ヘッダーのみを削除するため、リダイレクトを追跡すると、キーが次に応答したホストに渡されてしまいます。リダイレクトが発生した場合は、転送先のアドレスが表示されます。
- stdio のみです。 HTTP トランスポートを使う場合は、ホスト型コネクターを使用してください。
サポート
ライセンス
MIT License です。LICENSE を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。