公開日 更新日

KitsuneMCP

普段使いの Firefox を Claude Code から操作する MCP サーバーと拡張機能。公開準備中

概要

普段使いの Firefox を、ログインや cookie をそのままに Claude Code から操作する MCP サーバーと Firefox 拡張機能。使い捨てのブラウザは立ち上げず、実行中の Firefox を操作する。Chrome には Claude の公式のブラウザ拡張機能があるが Firefox には無く、その間を埋めるために作った。nanogenomic/ClaudeCodeBrowser(MIT)の fork を Python から TypeScript に移植し、Firefox 専用に絞った。MIT ライセンスで、公開に向けて準備している。

できること

  • fox_* の 21 個のツールで、ページの移動、クリックや入力、スクリーンショット、タブ管理、ログの収集を行う
  • 使うツールの組を FOX_CAPS で選び、読み込む量を抑える
  • 8 層の安全ガードで操作を判定し、結果を JSONL の監査ログに残す
  • 銀行や決済などの保護対象のサイトでは、人の承認を求める
  • Firefox のコンテナでエージェントの見える範囲を分ける(任意)
  • 拡張機能を使わない場合は、Playwright のヘッドレスの Firefox で動かす

設計の判断

  • 承認はページの外で尋ねる。Claude Code の確認ダイアログか、ツールバーのポップアップで答え、1 回の承認で通るのは同じ引数の 1 回の呼び出しだけにした
  • 設定ファイルが壊れていたり、知らないキーがあったりしたら、すべてのツールを拒否する
  • 似た操作は 1 つのツールにまとめ、41 個あったツールを 21 個に減らした

つまずいた点

  • 設定のキーの綴りを誤ると黙って無視され、締めたつもりのポリシーが効いていなかった。知らないキーはエラーにした
  • URL の照合が文字列の部分一致だと、許可したホスト名を含む別のホストに一致してしまう。URL を解析してホストやパスと比べる形に直した

技術

  • 言語:TypeScript(Node.js)
  • ブラウザ:Firefox の WebExtension と Native Messaging
  • ヘッドレス:Playwright
  • テスト:Vitest

リンク

  • リポジトリ:公開準備中
  • 関連記事:準備中