コンテンツへスキップ
Latchkey
無料で始める
ドキュメントメニュー

AI エージェントを接続する (MCP)

Claude Code、Cursor、または MCP 対応の任意のエージェントに、CI の失敗への安全な読み取り専用アクセスを与え、エディタからトリアージと修正を行えるようにします。

API Keys 設定タブ
Settings, API Keys: キーを作成し、すぐに使える接続コマンドをコピーします。

Latchkey は MCP サーバー を提供します。AI コーディングエージェントは Latchkey の API キーで接続し、実際の CI 失敗コンテキスト (失敗した実行、ログ、診断バンドル) をエディタセッションに直接取り込めます。ログをチャットにコピー&ペーストする代わりに、エージェントが Latchkey に直接問い合わせ、失敗を修正するために必要なものをすべて取得します。

これは 自己修復 の引き継ぎ側です。自己修復は実行中に環境の失敗を修正し、ソースには一切触れません。そのため、本当の問題がコードのバグである場合、ビルドは正直に失敗し、その失敗はエージェント向けのすぐ修正できるバンドルとしてここに届きます。

入り口は 2 つあります。Settings, API Keys で自分でキーを作成するか (以下のセットアップ)、AI Insight ページに任せるかです。自分のコーディングエージェントで修正する方がよい検出結果には、エージェントに貼り付けられる既製のプロンプト Copy prompt と、coding-agent という名前のキーを作成して正確な接続コマンドを表示する Set up MCP ショートカットが用意されています。

接続したエージェントができること#

サーバーは 7 つの機能を公開します。エージェントがデータと操作のために呼び出す 5 つの ツール と、タスク全体をオーケストレーションする 2 つの プロンプトフロー です:

tool失敗した実行の一覧最近の失敗したワークフロー実行を、主要なメタデータとともに列挙します。
tool失敗バンドルの取得1 つの失敗の完全なコンテキスト (ログ、診断、ワークフローの詳細) を取得します。
tool実行ステータスの確認任意の実行のステータス、結果、ジョブごとの所要時間をポーリングします。
tool実行ログのテール完了した任意のジョブの、シークレット除去済みログの末尾を読み取ります。成功した実行も対象です。
toolワークフローの再実行修正を検証するために workflow_dispatch 実行をトリガーします。ディスパッチ有効のキーが必要です。
promptCI 失敗の修正特定の失敗について、エディタ内からガイド付きの修正を実行します。
promptCI 失敗のトリアージ監視対象リポジトリ全体で何が失敗しているかを調べ、優先順位を付けます。

これらを名前で呼び出すことはありません。エージェントに平易な言葉で質問すると、エージェントがどの機能で答えるかを判断します。いくつかの対応例:

エージェントへの質問エージェントが使う機能
「今、私たちのリポジトリ全体で何が失敗している?」CI 失敗のトリアージ
「このリポジトリの最近の失敗した実行を見せて」失敗した実行の一覧
「あの失敗した実行について持っている情報をすべて取得して」失敗バンドルの取得
「失敗しているビルドを修正して」CI 失敗の修正
「あの実行は通った? 各ジョブはどれくらいかかった?」実行ステータスの確認
「デプロイジョブのログの末尾を見せて」実行ログのテール
「修正をプッシュした。CI を再実行して見守って」ワークフローの再実行

セッションの様子#

2 つの例示的なセッションです。正確な言い回しやエージェントの実際の返答はエージェントによって異なります。重要なのはやり取りの形です。

エディタを開いて「私たちのリポジトリで何が失敗している?」と尋ねます。エージェントは CI 失敗のトリアージ フローを実行し、監視対象リポジトリ全体の失敗を優先順位付きで調べて返します。さらに「リリースにとって最も重要なのはどれ?」と絞り込むと、CI のタブを一度も開かずに、エージェントが同じデータをもとに推論します。

価値は、ループが 1 か所に留まることです。質問、コンテキスト、次の質問。そのすべてが、修正を行うことになるエディタセッションの中で完結します。

「最新の赤いビルドの失敗バンドルを取得して修正して」と尋ねます。エージェントは最近の失敗した実行を一覧して該当するものを見つけ、その完全なバンドル (ログ、診断、ワークフローの詳細) を取得し、エディタ内からガイド付きの修正を実行して、レビュー用の変更を提案します。

起きなかったことに注目してください。エージェントはそのキーを通じて Latchkey の設定にも GitHub にも一切触れていません。読み取ったのは失敗コンテキストだけで、コードの変更はあなたを経由しました。

失敗バンドルに含まれるもの#

失敗バンドルは、エージェントが本来手作業で再構築するものを渡します:

  • 根本原因 を平易な言葉で。
  • 失敗したステップの 終了コード と、エラーが表面化した正確なソースファイル。
  • 失敗したステップの 完全な、省略されていないログ。GitHub がログビューアで隠す出力も含みます。ログが Latchkey を離れる前にシークレットは除去されます。
  • 自己修復がすでに調査した内容 と、なぜ引き下がったか、加えてワークフロー定義。

セットアップ#

API キーを作成する

Settings, API Keys を開きます (キーの管理はオーナーと管理者が行います)。Generate key をクリックし、設置場所にちなんだ名前を付け (例: 「私のノート PC の Cursor」)、有効期限を選びます: 無期限 (デフォルト)、30 日、60 日、90 日、または 1 年。

キーをすぐにコピーする

完全なキー (lk_live_ で始まります) は作成時に 一度だけ 表示されます。その後、UI にはプレースホルダーしか表示されません。パスワードのように扱ってください。紛失した場合は取り消して新しいものを作成します。

エージェントを接続する

同じ設定タブの Connect your agent ブロックに、あなたのワークスペース向けの正確なコマンドが表示されます。Claude Code の場合は次のようになります:

terminal
$ claude mcp add --transport http latchkey \
    https://latchkey.dev/mcp \
    --header "Authorization: Bearer lk_live_YOUR_KEY"

使ってみる

失敗している CI についてエージェントに尋ねます (「私たちのリポジトリで何が失敗している?」「最新の赤いビルドの失敗バンドルを取得して修正して」)。ベアラーヘッダー付きの HTTP トランスポートに対応する MCP 互換クライアントであれば、どれも同じように動作します。

修正後にワークフローを再実行する (オプトイン)#

デフォルトではキーは読み取り専用です。ループを閉じたい場合 (エージェントがコードを修正し、プッシュし、CI を再実行し、グリーンになるのを見届ける)、Allow workflow dispatch にチェックを入れてキーを作成します。そのキーは追加で mcp:dispatch スコープを持ち、エージェントは監視対象リポジトリで workflow_dispatch 実行をトリガーし、実行ステータスツールでポーリングし、完了後にログを読めるようになります。グリーンの実行も読み取れるため、エージェントは失敗を観察するだけでなく、修正を確認できます。

  • ディスパッチは、ワークスペースが監視しているリポジトリでのみ、かつ workflow_dispatch トリガーを宣言しているワークフローに対してのみ機能します。
  • 既存のキーが遡ってディスパッチ権限を得ることはありません。チェックボックスを有効にして新しいキーを作成してください。
  • 再実行は、ディスパッチ先のブランチにあるものをそのまま実行します。まず修正をプッシュしてから、ディスパッチしてください。

セキュリティモデル#

  • デフォルトで読み取り専用。 キーは CI の失敗と実行のデータを読み取れます。Latchkey や GitHub の変更はデフォルトで無効です。キーが作成時にオプトインできる唯一の書き込みはワークフローのディスパッチ (mcp:dispatch) で、Latchkey の設定や任意の GitHub 操作に及ぶことはありません。
  • ワークスペーススコープ。 ワークスペースはキー自体から導出されるため、キーは自分のワークスペースのデータしか見られません。
  • 取り消し可能。 Settings, API Keys から任意のキーを即座に取り消せます。取り消したキーは監査用に一覧されます。

これら 3 つの性質が実際に何を意味するか。デフォルト読み取り専用は漏洩時の影響範囲を限定します。盗まれたデフォルトキーは CI の失敗データ (ログの抜粋を含む) を露出させるため、依然として保護すべきですが、PR を開いたり、設定を変更したり、あなたに代わって GitHub 上で操作したりはできません。盗まれたディスパッチ有効キーは、それに加えて監視対象リポジトリのディスパッチ可能なワークフローをトリガーできます。だからこそディスパッチはデフォルトではなく、作成時に警告付きのキーごとのオプトインになっています。ワークスペーススコープは、設定すべきものも間違えるものも何もないことを意味します。キー自体が見られる範囲を決定し、他のワークスペースを見ることは決してできません。そして取り消しは即座で、取り消したキーは監査用に一覧され続けるため、少しでも疑わしければ取り消して再発行するのが安全な対応です。

これをきれいに保つ、手間のかからない 2 つの習慣。ツールやマシンごとに別々のキーを作成すること (作成時の命名プロンプト、たとえば「私のノート PC の Cursor」は、まさにこのために存在します)。そうすれば 1 つのキーを取り消しても他のキーは壊れません。そして、自分の働き方に合った最短の有効期限を選び、無期限 は積極的に把握している構成のためだけに使うこと。キー管理はオーナーと管理者が担当します。より広いモデルについては チームとロールセキュリティと権限 を参照してください。

References