← 記事一覧に戻る
チュートリアル

Bugoon MCP をチームに展開する ── .claude/commands でバグ対応を1コマンドで完結させる

Bugoon MCP をチームに展開する ── .claude/commands でバグ対応を1コマンドで完結させる

チームでバグ対応をするとき、毎回 MCP ツールを呼び出す手順を確認していませんか?

「Bugoon MCP サーバーを導入した。でもチームメンバーが毎回ツール名を調べている」「スクリプト的に使いたいのに、会話のたびに指示を書き直している」──そういう声をよく聞きます。

Claude Code には .claude/commands/ というディレクトリにMarkdownファイルを置くだけで、/コマンド名 として呼び出せる カスタムスラッシュコマンド の機能があります。Bugoon MCP ツールとこれを組み合わせると、バグのトリアージから修正・ステータス更新まで、チーム全員が同じ1コマンドで完結できます。本記事ではその具体的な設定方法を解説します。

1. .claude/commands/ の仕組みと Bugoon MCP ツールの呼び出し方

Claude Code はプロジェクトルートの .claude/commands/ 以下に置いた .md ファイルを自動的にスラッシュコマンドとして認識します。ファイル名がそのままコマンド名になります(例: triage-today.md/triage-today)。

コマンドファイルの中に書いた指示は、/コマンド名 を実行した瞬間にそのままプロンプトとして Claude に送られます。ここで Bugoon MCP の各ツールを呼び出すよう指示を書いておけば、チーム全員がツール名や引数を覚えていなくても同じ操作を再現できます。

前提として、プロジェクトルートの .mcp.json に Bugoon MCP サーバーの設定が済んでいる必要があります。

{
  "mcpServers": {
    "bugoon": {
      "command": "npx",
      "args": ["-y", "@rubyjobs-jp/bugoon-mcp-server"],
      "env": {
        "BUGOON_SECRET_KEY": "YOUR_SECRET_KEY",
        "BUGOON_API_URL": "https://bugoon.com"
      }
    }
  }
}

設定できたら、コマンドファイルの中で次のような形式で MCP ツールを呼び出すよう記述します。

bugoon の list_bug_reports ツールを使って、今日報告されたバグ一覧を取得してください。

Claude Code がその指示を解釈し、適切な MCP ツールを自動的に実行します。

2. サンプル:/triage-today コマンド(当日バグ一覧をAIにトリアージさせる)

朝一番に「今日来たバグを重要度順に並べたい」というユースケースは非常に多いです。.claude/commands/triage-today.md を以下の内容で作成してください。

---
description: 当日報告されたバグを取得し、重要度・影響範囲でトリアージする
allowed-tools: mcp__bugoon__list_bug_reports, mcp__bugoon__get_bug_report
---

# 本日のバグトリアージ

以下の手順でトリアージを実施してください。

1. `list_bug_reports` ツールで本日(今日の日付)のバグ報告を全件取得する
2. 各バグについて `get_bug_report` でスクリーンショットパスと再現手順を確認する
3. 以下の基準でトリアージ結果を出力する:

## トリアージ基準
- **Critical**: 決済・認証・データ損失に関わるもの → 即対応
- **High**: 主要フローがブロックされるもの → 当日対応
- **Medium**: 回避策があるもの → 今週中
- **Low**: UI の軽微な問題 → バックログ

## 出力形式
| 優先度 | バグID | タイトル | 理由 |
|--------|--------|----------|------|
| ...    | ...    | ...      | ...  |

取得したバグ件数と、Critical/High 件数のサマリーも末尾に記載してください。

これで /triage-today を実行するだけで、その日の全バグを自動取得してトリアージ表を生成します。朝のスタンドアップ前に走らせると、チームの優先度議論をデータドリブンで進められます。

3. サンプル:/fix-bug コマンド(IDを渡すだけで修正〜ステータス更新まで完結)

次に、バグIDを指定して修正からステータス更新まで一括で行うコマンドです。.claude/commands/fix-bug.md を作成します。

---
description: バグIDを指定して詳細取得 → コード修正提案 → ステータス更新を一括実行
allowed-tools: mcp__bugoon__get_bug_report, mcp__bugoon__get_screenshot, mcp__bugoon__update_bug_report_status, Bash, Read, Edit
---

# バグ修正フロー

引数として渡されたバグID($ARGUMENTS)を使って以下を実行してください。

## Step 1: バグ詳細の取得
`get_bug_report` ツールでバグID $ARGUMENTS の詳細を取得する。
- スクリーンショットパスがある場合は `get_screenshot` でも取得して内容を確認する
- 再現手順・ブラウザ情報・コンソールエラーを整理して表示する

## Step 2: 原因特定とコード修正
取得した情報をもとに:
1. 関連ファイルを Read ツールで調査する
2. 原因を特定して修正案を提示する
3. ユーザーの承認を得てから Edit ツールで修正を適用する

## Step 3: ステータス更新
修正が完了したら `update_bug_report_status` ツールでバグID $ARGUMENTS のステータスを `resolved` に更新する。

## 注意事項
- コード修正前に必ず原因の説明と修正方針をユーザーに提示すること
- テストがある場合は `Bash` で実行して通過を確認してからステータスを更新すること

$ARGUMENTS は Claude Code がコマンド呼び出し時の引数を展開するプレースホルダーです。/fix-bug BUG-042 と入力すると、$ARGUMENTSBUG-042 に置き換わります。これにより、バグIDを渡すだけで詳細確認からコード修正・ステータス更新まで一気通貫で処理できます。

4. CLAUDE.md へのMCPツール使用指針の記載(チーム標準化)

コマンドファイルを作っただけでは、新しいメンバーがどのツールをどう使うべきか分かりません。CLAUDE.md にチームとしての使用指針を明記することで、AI の挙動を標準化できます。以下のセクションを CLAUDE.md に追加してください。

## Bugoon MCP 使用指針

### 利用可能なツール
| ツール名 | 用途 |
|----------|------|
| `list_bug_reports` | プロジェクトのバグ一覧取得 |
| `get_bug_report` | 特定バグの詳細・環境情報取得 |
| `get_screenshot` | バグのスクリーンショット取得 |
| `update_bug_report_status` | バグのステータス更新(open/in_progress/resolved) |
| `get_project` | プロジェクト情報の確認 |

### 必須ルール
- バグのステータスを `resolved` に更新するのは、修正コミット後かつテスト通過後のみ
- スクリーンショットは修正前に必ず確認する(UI 系バグは視覚的確認が必須)
- バグ修正は `/fix-bug` コマンドを使うこと(手順の統一のため)

### 推奨ワークフロー
朝: `/triage-today` でその日の対応優先度を決める
作業中: `/fix-bug {ID}` で個別バグを修正する
夕: `list_bug_reports` で未対応バグの残件を確認する

CLAUDE.md に書かれた内容は Claude Code がセッション開始時に自動で読み込むため、すべてのチームメンバーが同じルールで AI を操作できます。「なぜそのコマンドを使うのか」という背景も書いておくと、新メンバーのオンボーディングにも役立ちます。

5. 複数プロジェクト運用時の .mcp.json 管理(環境変数で SECRET_KEY を切り替える)

複数の Bugoon プロジェクトを管理している場合、各リポジトリの .mcp.json に直接 BUGOON_SECRET_KEY を書くのはセキュリティ上避けるべきです。代わりに、シェルの環境変数を参照する構成にします。

{
  "mcpServers": {
    "bugoon": {
      "command": "npx",
      "args": ["-y", "@rubyjobs-jp/bugoon-mcp-server"],
      "env": {
        "BUGOON_SECRET_KEY": "${BUGOON_SECRET_KEY}",
        "BUGOON_API_URL": "https://bugoon.com"
      }
    }
  }
}

各リポジトリで作業を始める前に、対応するプロジェクトのシークレットキーを環境変数にセットします。

# プロジェクトAで作業するとき
export BUGOON_SECRET_KEY="sk_project_a_xxxx"

# プロジェクトBへ切り替えるとき
export BUGOON_SECRET_KEY="sk_project_b_yyyy"

direnv を使っているチームなら、各リポジトリのルートに .envrc を置いておくと、ディレクトリを移動するだけで自動的に切り替わります。

# .envrc(各リポジトリに配置、.gitignore に追加すること)
export BUGOON_SECRET_KEY="sk_project_a_xxxx"

.mcp.json 自体はチームで共有するためリポジトリに含めて問題ありません(シークレットキーの実値が入っていなければ)。.envrc.env.local など実値を含むファイルは必ず .gitignore に追加してください。

6. シリーズまとめ:コマンド1本でバグ対応を完結させる

本記事で紹介した構成をまとめると、次のファイル群をリポジトリに追加するだけでチーム全体のバグ対応フローが整います。

  • .mcp.json — Bugoon MCP サーバーの接続設定
  • .claude/commands/triage-today.md — 当日バグのAIトリアージ
  • .claude/commands/fix-bug.md — ID指定で修正〜ステータス更新まで一括
  • CLAUDE.md — MCPツール使用指針(チーム標準化)

これらをリポジトリにコミットしてチームで共有すれば、新メンバーでも初日から同じワークフローでバグ対応を始められます。ツール名を覚える必要も、手順を確認する必要もありません。

Bugoon のウィジェットを埋め込めば、QAチームや非エンジニアからの報告も自動的に構造化データとして蓄積され、MCP ツール経由で AI がそのまま読める状態になります。報告から修正まで、人手を介さずに流れる開発体験をぜひ試してみてください。

Bugoon を無料で試す

チームのバグ報告を、もっとスムーズに。

Bugoon は無料で始められます。サイトにタグを 1 行追加するだけで、QA と開発の往復がなくなります。

無料で始める