Footgun について
Footgunは、コーディングエージェント向けに日付と検証情報付きのAPI障害事例を集め、依存パッケージに合う事例をローカルでスキャンします。
主な機能
- 01日付付きの検証済みAPI事例集
- 02パッケージバージョン別のローカルスキャン
- 03Claude Codeプラグインとスラッシュコマンド
- 04CIチェック向けのコマンドライン出力
- 05MCP経由の事例検索
活用シーン
- 01実装前に最近のAPI動作を確認
- 02既存プロジェクトの既知の罠を検出
- 03破壊的な問題でCIを失敗させる
MCP 対応
streamable HTTPを通じて、MCPクライアントにFootgunの検索、事例の登録や確認機能を提供します。登録と確認にはAuthorization bearerキーが必要です。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://getfootgun.com/api/mcpclaude mcp add --transport http com-getfootgun-footgun https://getfootgun.com/api/mcp{"mcpServers":{"com-getfootgun-footgun":{"type":"http","url":"https://getfootgun.com/api/mcp"}}}Cursor で開く{"servers":{"com-getfootgun-footgun":{"type":"http","url":"https://getfootgun.com/api/mcp"}}}VS Code で開く{"mcpServers":{"com-getfootgun-footgun":{"type":"http","url":"https://getfootgun.com/api/mcp"}}}{"mcpServers":{"com-getfootgun-footgun":{"serverUrl":"https://getfootgun.com/api/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
https://getfootgun.com/api/mcp認証が必要ツール
詳細
Footgun
AI エージェントは API の仕組みを把握しています。Footgun は、API がどのように壊れるかを教えます。
Footgun は、ドキュメントに書かれていない落とし穴を集めた、日付付きの検証済みレジストリです。気付かれないまま行われる非推奨化、ひそかな制限、保存はされても何も起きない設定などが含まれます。コーディングエージェントは、コードを書く前に Footgun を確認します。getfootgun.com ですべての落とし穴をご覧ください。
役に立ちますか?
最近の API 変更に関わる 17 件のコーディングタスクをそれぞれ 5 回実行したところ、Claude Code が初回で正しいコードを書けた割合は、Footgun を使った場合が 82%、使わなかった場合が 52%でした。また、動作する結果 1 件あたりのコストは 18%低くなりました。モデルがすでに把握している古い API では、違いはありませんでした。手法と全結果は getfootgun.com/benchmark でご覧いただけます。
AI が構築した 200 個のアプリでわかったこと
200 個のうち 89 個は、GitHub が現在 Node 24 で実行している、Node 20 向けに構築された GitHub Actions を依然として使用しています。93 個には、現在または今後問題を引き起こす問題が少なくとも 1 つあります。実際のコードを人が確認したルールのみを数えています。手法と結果は getfootgun.com/scan でご覧いただけます。
Claude Code へのインストール
/plugin marketplace add getfootgun/footgun
/plugin install footgun@footgun
アカウントがなくても、検索と問題の報告ができます。報告された落とし穴は、他の人が確認できるようになる前に、公式情報源に照らして検証されます。落とし穴を確認するには、getfootgun.com/account で API キーを作成し、プラグインに入力してください。
プラグインは /footgun:scan も追加します。このコマンドは、お使いの正確なパッケージバージョンに該当する既知の落とし穴がないか、プロジェクトをマシン上で確認します。コードがマシンの外に送信されることはありません。送信されるのはルールのダウンロードと、匿名の検出件数のみです。件数の送信と、エージェントが学習した修正の報告を停止するには、プラグイン設定 share_learnings をオフにしてください。設定 auto_context を有効にすると、各セッションの開始時に該当する落とし穴について短いメモが追加されます。デフォルトで有効です。無効にするには false に設定してください。
コマンドライン
cli/ には、同じスキャナーをコマンドとして利用できるようにしたものがあり、npm で @getfootgun/footgun として公開されています。使用方法は npx @getfootgun/footgun scan [path] です(Node 20 以降)。機械可読な出力には --json を、CI ジョブを失敗させるには --fail-on breaks を追加してください。
まず「リリース前」のチェックが行われます。秘密鍵がブラウザーのコードに含まれている場合や、Supabase のテーブルで RLS がオフになっている場合など、データ漏えいや請求額の増加につながる問題が対象です。コードではなくダッシュボードにある項目は、そのパッケージを使う際に毎回自分で確認する項目として一覧表示されます。
スキャン後、日付付きの README バッジが表示されます。スキャンでリリース前の注意事項以外に何も見つからなかった場合に限り「既知の API の落とし穴はありません」と表示され、それ以外の場合は「スキャン済み」と表示されます。
Pro キーまたは Team キーを使うと、scan --watch でプロジェクトが Footgun Watch に追加されます。Footgun Watch は、Projects ページに、お使いの正確なパッケージバージョンに該当する新規および変更された落とし穴を表示します。送信されるのはプロジェクト名、各パッケージファイルのフォルダー、パッケージ名とバージョン、各検出項目の落とし穴・ファイル・行番号であり、コードは送信されません。getfootgun.com/docs をご覧ください。
GitHub Actions では、GetFootgun/scan-action を使用してください。ジョブのサマリーに検出項目が一覧表示され、breaks または will-break でジョブを失敗させることができます。また、watch: "true" を指定すると、プロジェクトが Footgun Watch に送信されます。
その他の MCP クライアント
claude mcp add --transport http footgun https://getfootgun.com/api/mcp
Cursor、Codex、その他のクライアントでは、https://getfootgun.com/api/mcp(ストリーミング可能な HTTP)を指定してください。落とし穴の報告と確認には、ヘッダー Authorization: Bearer <your key> を追加してください。
データ
data/traps/<tool>/<trap>.json には、公開されている検証済みの落とし穴がすべて含まれています。症状、原因、修正方法、最終検証日、信頼度スコアが記録されています。data/providers.json には、対象となるツールが一覧表示されています。データは getfootgun.com からエクスポートされ、落とし穴の追加、確認、または廃止に応じて更新されます。
ライセンス
data/ の落とし穴データは CC BY 4.0 の下でライセンスされています。「Footgun, getfootgun.com」とクレジットを表記してください。プラグインファイルは MIT ライセンスです(LICENSE を参照)。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。