Mcp Guardian について
MCP Guardianは、AIアシスタントとMCPツール間の呼び出しを管理するセキュリティプロキシです。YAMLポリシーでリクエストを評価して不許可の呼び出しを遮断し、監査履歴と監視ダッシュボードを提供します。
主な機能
- 01MCPツール呼び出しの仲介と制御
- 02ホットリロード対応YAMLポリシー
- 03呼び出しの監査と履歴
- 04健全性とコストのダッシュボード
- 05インジェクション検知とセマンティックチェック
活用シーン
- 01ポリシー違反のツール呼び出しを遮断
- 02呼び出し履歴と遮断イベントを確認
- 03MCP基盤の健全性とコストを監視
MCP 対応
上流のMCPサーバーをラップし、実サービスに届く前にツール呼び出しを検査します。stdio、HTTP、SSE、WebSocket、Streamable HTTPに対応します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @mcp-guardian/serverMCP_GUARDIAN_DB_PATHPath to SQLite history databaseALERT_WEBHOOK_URLシークレットSlack or Discord webhook for critical alertsMETRICS_ENABLEDExpose Prometheus metricsローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
60掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| configPath | string | いいえ | MCP 設定ファイルのパス。省略すると、設定ファイルを自動検出します。 |
詳細
MCP Guardian
AI アシスタントと使用するツールの間に入る安全レイヤーです。
バージョン 4.1.8 · ウェブサイト · npm · インストールとトラブルシューティング · 変更履歴
4.1.8 の新機能
- インシデントポリシーのワークフロー — Enterprise AI の調査ドロワーから、インシデントに基づくブロックルールを生成、プレビュー、承認、または却下できます
- npm 公開の強化 — サーバー公開前にレジストリ依存関係の解決を確認し、クリーンインストールを検証する、順序付きの公開スクリプト
- ダッシュボードの安定性向上 — Security/Health パネルの React フックの順序を修正し、読み込み時にエラー #310 が発生する問題を解消
4.1.7 の新機能
- Active Rules の操作機能 — Security → Policy に、YAML と同期する一覧表示/検索、ソフト無効化/有効化、完全削除の操作を追加
- ポリシーの実行時セマンティクス — ルール戦略全体で
enabled: falseが適用され、後方互換性のあるデフォルト値を使用 - ポリシー変更 API — 一覧表示/切り替え/削除に対応するクラウドおよびローカルのダッシュボードエンドポイントと、更新された README のガイダンス
4.1.6 の新機能
mcp-guardian start— プロキシとウェブダッシュボードをポート 4000 で起動するコマンド(ローカル開発時のデフォルト)mcp-guardian setup— git クローン向けの一括インストール(pnpm install、ビルド、ダッシュボード SPA)- npm tarball — 公開時にビルドされる、ビルド済みのダッシュボード UI(
deploy/dashboard-spa/out/) - インストールガイド — README と docs/INSTALL.md のトラブルシューティングを拡充
4.1.5 の新機能
- npm install — 壊れていた
@mcp-guardian/[email protected]のレジストリマニフェスト(workspace:依存関係)を修正しました。4.1.5 以降をお使いください。
4.1.4 の新機能
- グローバル npm からの
mcp-guardian onboard—cwdではなくインストール済みパッケージのルートを特定し、現在のディレクトリにguardian-configs/を書き込みます。また、npm tarball にscripts/guardian-proxy.shとpolicy-audit.yamlを同梱します
4.1.3 の新機能
npm install の修正 — レジストリマニフェストが公開済み tarball と一致するようになりました(workspace: ではなく ^4.1.3 の semver 依存関係)。@mcp-guardian/[email protected] 以降をお使いください。公開には ./scripts/publish-npm-all.sh を使用してください(メタデータを正しく保つため、server/CLI は .tgz から公開されます)。
4.1.1 の新機能
npm install の適正化 — 4.1.0 で検出されたサプライチェーンスキャナーの指摘を修正しました。
- 公開 tarball に
postinstallやその他のライフサイクルスクリプトが含まれなくなりました workspace:依存関係はパック時に semver(^4.1.1)へ書き換えられます./scripts/publish-npm-all.shを使ってすべてのパッケージを公開してください(core → plugin-sdk → server → cli)
4.1.0 の新機能
業界ロードマップ計画への準拠 — フリート全体を対象とする11個すべてのモジュール(A1~C5、B1~B3)について、実行時検証とダッシュボード連携を実装しました。
guardian roadmap audit— CLI とGET /api/agentic/plan-compliance/auditで、リリース済みの各モジュールを検証します。本番運用可能な場合は終了コード 0 を返します。- ダッシュボードの Agentic AI パネル — PlanCompliance、Reputation、ZeroTrust、FederatedLearning、Observatory のメッシュ同期、SandboxWizard のキャプチャ済みトラフィックスコアカード、ChainGraph(A1)
- Protection のホームストリップ — メインの Protection タブにロードマップ準拠スコアを表示し、Agentic AI へのリンクを追加
- A1 ONNX グラフパス —
GUARDIAN_FLEET_GRAPH_ONNX_MODELによる、オプションのフリートチェーン分類器 - B3 MPC-lite マスキング — ペアごとにマスクされた連合勾配(
GUARDIAN_FEDERATED_MPC) - B2/B1 メッシュリレー — Observatory と Reputation のメッシュへの公開・取得。
GUARDIAN_OBSERVATORY_STUBによる開発用スタブ - ドキュメントと環境変数 —
guardian roadmap *コマンドを文書化。本番環境用の環境変数を.env.exampleに追加
guardian roadmap audit --json を実行するか、ダッシュボードの Agentic AI → Overview を開いて、準拠率が 100% であることを確認してください。
4.0.0 の新機能
業界標準の MCP 保護 — Guardian は、呼び出しごとのフィルタリングから、フリート全体およびエージェント間のセキュリティへと移行します。
- MTX v1 — オープンな脅威交換フォーマット(
@mcp-guardian/mtx)とクラウドハブ - Guardian Certified MCP — HMAC アテステーション、永続レジストリ、検証 API
- 複数ステップの攻撃チェーン — 共謀検出器と、プロキシ強制機能を備えたセッションチェーングラフ
- ケイパビリティグラフと意図のバインディング — ツール/リソースグラフとセッション意図の許可リスト
- エージェント評判台帳 — プロキシ強制機能を備えた永続スコア
- 動的サンドボックス階層 — RL 対応の永続化機能を備えた shadow/redact/allow
- プロトコルファザー — 実際のブロック検証と認定ゲートを備えた拡張コーパス
- ポリシーシミュレーター —
/api/policy/simulateとab_test_policyMCP ツール - インシデント対応プレイブックと AI 調査エージェント — Webhook/隔離の実行機能。Threat Lab と連携した調査
- コンプライアンス証跡ランナー — SOC2/HIPAA/PCI/FedRAMP/ISO のマッピングに対応した、ライブポリシーと監査の連携
- guardian-bench —
mcp-guardian benchCLI と公開リーダーボード
3.4.1 の本番環境向け強化(JWKS の更新、ペイロード制限、すべてのブロック経路での SIEM 連携、監査データの保持)については、CHANGELOG.md を参照してください。
ロードマップ(4.0 でリリース): 承認フローを備えたセマンティックポリシートランスレーター、設定の来歴チェーン、STRIDE/LINDDUN 脅威モデリング、行動バイオメトリクス、SIEM エクスポート対応の MCP 間攻撃チェーン、デジタルツインサンドボックス、SPIFFE スコアリングによるゼロトラスト、分散型評判ネットワーク、エコシステムオブザーバトリー、保険リスクの定量化と PDF エクスポート、連合型脅威検出 — docs/AGENTIC_ROADMAP.md。
CISO 向けのフリート統制要件
Guardian v4 は、単一プロキシのフィルターではなく、フリート全体を対象とするコントロールプレーンとして設計されています。
- 必須のポリシー来歴管理 — YAML の変更はすべてハッシュチェーン化され、署名され、SIEM/監査担当者向けにエクスポートできます。
- 人間参加型のポリシー承認 — NL による下書きは、適用前にシミュレーションと明示的な承認を経る必要があります。
- エージェント間の攻撃チェーン検出 — セッショングラフはサーバーをまたいで構成されます。アラートは CEF 形式で Splunk/Datadog にエクスポートされます。
- SPIFFE/mTLS ID — ゼロトラストの複合スコアには、SPIFFE SVID から取得したワークロード ID が含まれます。
- クラウドオブザーバトリーと評判メッシュ — 匿名化されたフリートテレメトリーと、MCP Guardian Cloud を介したサーバー評判のコンセンサス
- 保険対応のリスクレポート — ALE の定量化と、サイバー保険ワークフロー向けの保険引受担当者用 PDF エクスポート
どのような問題を解決しますか?
Claude、Cursor、Cline などの最新の AI アシスタントは、ファイルの読み取り、コマンドの実行、データベースへの問い合わせ、Slack への投稿などを行うツールに接続できます。こうした接続では、MCP(Model Context Protocol)という標準規格がよく使われます。
この機能は便利ですが、リスクもあります。
- AI が、本来見るべきでないファイルを読み取る可能性があります。
- 悪意のあるプロンプトが原因で、あるいは誤って、シェルコマンドを実行したりデータを削除したりする可能性があります。
- ツールの引数を通じてシークレットが漏えいする可能性があります。
- 気付かないうちに API のコストが急増する可能性があります。
MCP Guardian はその間に入ります。 すべてのツールリクエストは、まず Guardian を経由します。Guardian はルールを確認し、不正なリクエストをブロックし、発生したことを記録します。また、ライブダッシュボードを表示することもできます。これらはすべて、実際のツールにリクエストが届く前に行われます。
Your AI assistant
│
▼
MCP Guardian ← reads your rules, blocks bad calls, keeps a log
│
▼
Your real tools (files, GitHub, database, …)
仕組み(ステップごと)
- Guardian をインストールし、既存の MCP セットアップを指定します(または
mcp-guardian onboardを実行すると自動的に設定できます)。 - Guardian がツールサーバーをラップするため、AI はツールサーバーに直接ではなく、Guardian に接続します。
- AI がツールを使おうとすると、Guardian が最初にリクエストを受け取ります。
- Guardian はリクエストを、ユーザーが管理するシンプルなルールファイルであるポリシーと照合します。
- リクエストが許可されている場合、Guardian は実際のツールに転送し、結果を返します。
- リクエストがルールに違反する場合、Guardian はブロックし、拒否されたことを AI に伝えます。実際のツールは実行されません。
- 許可とブロックの記録はすべてローカルデータベースに保存されるため、履歴を確認したり、ダッシュボードでグラフを表示したりできます。
主導権はユーザーにあります。たとえば、Threat Lab の提案を確認する場合など、ユーザーが承認しない限り、Guardian がルールを密かに変更することはありません。
アーキテクチャ
このセクションでは、MCP Guardian の構成を説明します。各コンポーネントがどこで動作するのか、ツール呼び出しがガバナンスをどのように通過するのか、オプションの Pro パイプラインがプロキシにどのように接続するのかを紹介します。
このセクションの内容: システム概要 · ツール呼び出しの経路 · トランスポート · エージェント型 AI · ダッシュボード · Pro パイプライン · 学習ループ
システム概要
mcp-guardian start または pnpm dashboard:proxy を実行すると、通常は 1 つの Node プロセスでポリシープロキシ、ダッシュボード API、および(必要に応じて)エージェント型サービスが動作します。すべてのコンポーネントは同じ監査データベース(MCP_GUARDIAN_DB_PATH、デフォルトは ~/.mcp-guardian/history.db)を共有します。
flowchart TB
subgraph clients [AI clients]
Cursor[Cursor / Cline / Claude]
end
subgraph guardian [MCP Guardian process]
Proxy[Proxy layer\nstdio HTTP SSE WS streamable]
Policy[PolicyEngine\nYAML + hot reload]
Agentic[Agentic container\noptional hooks]
DashboardAPI[Dashboard REST + WebSocket]
end
subgraph storage [Persistence]
SQLite[(history.db)]
SIEM[SIEM exporters\noptional]
end
Upstream[Upstream MCP servers\nfilesystem GitHub etc]
Cursor --> Proxy
Proxy --> Policy
Proxy --> Agentic
Policy --> Proxy
Agentic --> Proxy
Proxy --> Upstream
Upstream --> Proxy
Proxy --> SQLite
Proxy --> SIEM
DashboardAPI --> SQLite
clients -.-> DashboardAPI
| コンポーネント | 役割 | 主なコード |
|---|---|---|
| プロキシ層 | JSON-RPC をインターセプトし、すべての tools/call にポリシーを適用します | src/proxy/ |
| ポリシーエンジン | YAML ルール、レート制限、RBAC、パターンを評価します | src/policy/ |
| 履歴 DB | 許可/ブロックの監査記録、トークン、コストを保存します | src/database/history-db.ts |
| ダッシュボード | 同じ DB を利用するローカル UI と REST API です | deploy/dashboard-spa/、src/utils/dashboard-server.ts |
| エージェント型機能 | スマート機能(インジェクションスキャン、ポリシー生成、信頼など)です | src/agentic/ |
エンタープライズ環境では、SQLite の代わりに Redis(レート制限、DPoP、サーキットブレーカーの同期)と PostgreSQL を追加できます。詳しくは ENTERPRISE_DEPLOYMENT.md を参照してください。
ツール呼び出しの経路(tools/call)
危険な判断はすべて、実際の MCP サーバーが実行される前に行われます。Guardian が呼び出しをブロックした場合、上流のツールには届きません。
sequenceDiagram
participant Client as AI client
participant Transport as Proxy transport
participant PreGuard as Pre-forward guard
participant Policy as PolicyEngine
participant Semantic as Semantic gate
participant Upstream as Upstream MCP
participant Audit as Audit queue
participant SIEM as SIEM log
Client->>Transport: tools/call JSON-RPC
Transport->>PreGuard: checkExpandedPayload + agentic hooks
alt blocked at pre-guard
PreGuard-->>Client: JSON-RPC error -32001
PreGuard->>Audit: denied record
PreGuard->>SIEM: tool_blocked
else allowed
PreGuard->>Policy: evaluateAsync context
alt policy block
Policy-->>Client: JSON-RPC error
Policy->>Audit: denied record
Policy->>SIEM: tool_blocked
else policy pass
Policy->>Semantic: sync semantic request gate
alt semantic block
Semantic-->>Client: JSON-RPC error
Semantic->>Audit: denied record
Semantic->>SIEM: tool_blocked
else forward
Semantic->>Upstream: forward request
Upstream-->>Transport: tool result
Transport->>Transport: response DLP gate
Transport-->>Client: JSON-RPC result
Transport->>Audit: allow record
end
end
end
統合の詳細:
- 転送前ガード(
src/proxy/tool-call-pre-guard.ts) — 展開後の引数サイズに上限を設け、すべてのトランスポートでエージェント型の事前フック(プロンプトインジェクションなど)を実行します。 - ポリシー(
src/policy/policy-engine.ts) — YAML ルールを使用します。レート制限カウンターは、ホットリロード後もsrc/policy/rate-limit-store.tsを介して保持されます。 - セマンティックゲート(
src/proxy/proxy-post-policy-gates.ts) — 転送前に、引数に対してオプションの LLM/ヒューリスティックチェックを実行します。 - 監査 —
persistCallRecord→ 非同期のaudit-write-queue→ SQLite。ブロック時には、SIEM 向けにStructuredLogger.logBlockedも出力されます。
トランスポート
Guardian は、IDE が使用する可能性のあるすべての MCP トランスポートで、同じガバナンススタックを実装します。
| トランスポート | エントリモジュール | tools/call のガバナンス |
|---|---|---|
| stdio | src/proxy/proxy-server.ts | 完全なパイプライン(ラップされた設定ではデフォルト) |
| HTTP | src/proxy/http-proxy-server.ts | 完全なパイプライン+転送前ガード |
| SSE | src/proxy/sse-proxy-server.ts | 完全なパイプライン+転送前ガード |
| WebSocket | src/proxy/websocket-proxy-server.ts | 完全なパイプライン+転送前ガード |
| Streamable HTTP | src/proxy/streamable-http-proxy-server.ts | 完全なパイプライン+転送前ガード |
mcp-guardian onboard を実行し、クライアント設定が Guardian でラップされたサーバーを指すようにしてください。IDE が Guardian を経由せずに MCP サーバーへ接続する場合(生の SSE URL でよく発生します)、呼び出しは追跡されず、メトリクスとログには sse_untracked と表示されます。
エージェント型 AI の統合
エージェント型機能はオプションのモジュールで、起動時に読み込まれます(src/container.ts)。YAML ポリシーを置き換えるのではなく、監視、スコアリング、推奨機能を追加します。
flowchart TB
subgraph mcp [MCP surface]
Tools[MCP tools in src/index.ts]
end
subgraph container [DI container]
Core[agentic/core.ts\npipeline scheduler telemetry]
Features[Feature modules\npolicy gen injection trust mesh]
end
subgraph runtime [Runtime integration]
Hooks[proxy-integration.ts\npre/post call hooks]
PreGuard[tool-call-pre-guard.ts]
end
subgraph ui [Dashboard]
API[agentic-dashboard-summary.ts]
Workspace[Agentic AI workspace SPA]
end
DB[(agentic tables\nmigration 011)]
Tools --> Core
Core --> Features
PreGuard --> Hooks
Hooks --> Features
API --> DB
Workspace --> API
Hooks --> DB
| 統合ポイント | 処理内容 |
|---|---|
すべての tools/call | エージェント型モードが有効な場合、runAgenticPreForwardHooks が引数をブロックまたはサニタイズできます |
| MCP ツール | 自動化とダッシュボード操作向けに、約 35 個のエージェント型ツールが src/index.ts に登録されています |
| モジュール | src/agentic/ に 40 以上のエージェント型モジュールがあります(予測、ポリシー生成、メッシュ、共謀、レピュテーションなど) |
| ダッシュボード | Agentic AI ワークスペースが /api/agentic/* の概要を読み込みます |
| データベース | エージェント型の状態は 011-agentic-tables.sql に保存されます |
モジュールの詳細:docs/AGENTIC_ARCHITECTURE.md · リリース済み機能:docs/AGENTIC_FEATURES.md · ロードマップ: docs/AGENTIC_ROADMAP.md。
ダッシュボードとオブザーバビリティ
flowchart LR
Proxy[Proxy writes] --> DB[(history.db)]
DB --> REST[Dashboard REST API]
REST --> SPA[Next.js SPA\nProtection Activity Agentic]
REST --> WS[WebSocket push\nGUARDIAN_WS_ENABLED]
Proxy --> Prom[Prometheus metrics\noptional]
Proxy --> SIEM[SIEM exporters\nMCP_GUARDIAN_SIEM_ENABLED]
ダッシュボードは独立したデータベースではなく、プロキシが書き込むものと同じ call_records を読み込みます。pnpm real-life:filesystem やほかのテストを実行する際は、チャートがプロキシのトラフィックと一致するように、MCP_GUARDIAN_DB_PATH を一貫して設定してください。
Pro パイプラインのアーキテクチャ
これらの Pro ワークフローは、稼働中のプロキシと並行して実行されます。監査データ、スウォームレポート、LLM の出力を利用して検出精度を高めますが、すべてのツール呼び出しのホットパスには入りません。
Security Swarm
攻撃を生成し、ハーネスを実行してバイパスを検出し、学習にフィードバックする自動レッドチームループです。

- 機能: スクリプト化されたステップ(ビルド、コーパス評価、パリティ、ハーネス)を実行し、攻撃を許可すべきでないポリシーが攻撃を許可した場合にバイパスを記録します。
- 接続方法:
reports/security-swarm/以下を読み書きします。バイパスと提案は、Threat Lab やランタイムの攻撃学習に活用できます。 - 実行:
pnpm security-swarm(本番環境では Pro ライセンスが必要です)。
Threat Lab(LLM による検出)
新しい攻撃フィクスチャーとポリシー案を LLM が提案し、人間がレビューします。

- 機能: シグナル(バイパス、セマンティック TP、ThreatIntel)を収集し、ローカル LLM に新しいコーパス候補を依頼して検証したうえで、ユーザーが承認するための
threat-lab-candidates.jsonを書き出します。 - 接続方法: 出力は、レビュー後に敵対的ハーネスとオプションのポリシー適用ツールに渡されます。何も通知なしに適用されることはありません。
- 実行:
pnpm security-swarm:threat-lab(Ollama が必要です)。THREAT_LAB.md を参照してください。
Auto Threat Research
プロキシが疑わしいトラフィックをブロックした際にバックグラウンドで LLM が調査し、検証済みの adv-*.json フィクスチャーを書き込みます。

- 機能: ブロックイベントの連続発生を抑制し、攻撃タイプを分類して、検証に合格した場合にハーネスフィクスチャーを書き込みます(重複排除とレート上限あり)。
- 接続方法:
GUARDIAN_THREAT_RESEARCH_AUTOとSWARM_THREAT_RESEARCH_AUTOの両方が有効な場合、Threat Lab と同じ自動コーパス書き込みツールを使用します。 - 実行: プロキシホストで環境フラグを有効にするか、ダッシュボードの Threat Discovery から起動します。
継続的な改善ループ
flowchart LR
Live[Live proxy blocks] --> Audit[(history.db)]
Live --> Learn[Attack learning]
Swarm[Security Swarm] --> Bypasses[bypasses.json]
Bypasses --> ThreatLab[Threat Lab]
ThreatLab --> Harness[adversarial harness]
AutoResearch[Auto Threat Research] --> Fixtures[adv fixtures]
Fixtures --> Harness
Harness --> Policy[Policy YAML updates]
Policy --> Live
詳しくは、docs/ARCHITECTURE.md を参照してください。
機能の説明
以下では、各主要機能についてわかりやすく説明します。
ポリシープロキシ(中核機能)
概要: すべてのツール呼び出しに適用されるフィルターです。
仕組み: YAML ファイルでルールを記述します(下記のポリシーファイルを参照)。特定のツールを許可したり、危険なツールを拒否したり、ツールの実行頻度を制限したり、トークン使用量に上限を設けたり、引数内のパターン(たとえば「パスに ../ が含まれていたらブロックする」)に一致させたりできます。ファイルを変更すると、Guardian は再起動せずにルールを再読み込みできます。
重要な理由: これが主要な防御手段です。高速で予測可能であり、完全に制御できます。
攻撃ブロック(デフォルトポリシーに組み込み済み)
概要: よくある悪用を検出する、あらかじめ用意された数百のチェックです。
仕組み: 呼び出しがサーバーに到達する前に、Guardian は引数に隠されたシェルコマンド、パストラバーサル(../etc/passwd)、SQL インジェクションのパターン、シークレットの流出を試みる動作、不審な URL、悪意のあるテキストを隠す Unicode のトリックなどを検査します。パターンに一致すると、呼び出しはブロックされ、ログに記録されます。
重要な理由: 実際の攻撃の多くは通常のツール呼び出しに見えます。これらのチェックは、AI モデルを使わずに、そうした攻撃の大部分を検出します。
コスト追跡
概要: ツールの使用にかかる費用を継続的に集計します。
仕組み: Guardian は、利用可能な場合はモデルの料金情報を使って、呼び出しごとのトークン数と費用を推定します。予算を設定し、ダッシュボードで時間経過に伴う消費ペースを確認できます。
重要な理由: エージェントやループが制御不能になると費用がかさむことがあります。早い段階で気づけます。
ヘルスモニタリング
概要: 接続されている各 MCP サーバーのヘルスチェックです。
仕組み: Guardian は成功率、レイテンシ、サーバーが応答しているかどうかを追跡します。サーバーの障害が続く場合は、サーキットブレーカーで過剰な呼び出しを停止できます。
重要な理由: ユーザーから苦情が寄せられる前に、壊れた連携や不安定な連携に気づけます。
ライブ監査ログ
概要: 許可された操作とブロックされた操作を記録する永続的なログです。
仕組み: 各判断はローカルの SQLite データベース(デフォルト:~/.mcp-guardian/history.db)に保存されます。ダッシュボードはこのデータベースを読み込み、テーブル、グラフ、フィルターを表示します。
重要な理由: セキュリティとデバッグには、誰が、いつ、何を試み、なぜブロックされたのかを明確に追跡できる記録が必要です。
パッケージスキャン(CVE とタイポスクワッティング)
概要: MCP パッケージを信頼する前にチェックします。
仕組み: Guardian は、既知のセキュリティ上の問題(CVE)や、有名なパッケージに似ているものの、スペルが少し異なる名前(タイポスクワッティング)について、インストール済みまたは設定済みのパッケージをスキャンできます。
重要な理由: サプライチェーン攻撃では、「ほぼ正しい」パッケージ名が使われることがよくあります。
敵対的ハーネス(オフラインテスト)
概要: ライブ AI を使わずに、攻撃を模したリクエストをポリシーに送る大規模な自動テストスイートです。
仕組み: リポジトリから pnpm harness を実行します。800 件以上のフィクスチャを再生し、ブロックまたは許可されるリクエストを報告します。
重要な理由: ルールを変更したらすぐに、正当な使用を妨げていないか、または抜け穴を残していないか確認できます。
実環境のシナリオ(ライブテスト)
概要: Guardian を経由して、実際のファイルシステム MCP サーバーに実際の攻撃トラフィックを送る短時間または長時間のテストです。
仕組み: pnpm real-life:filesystem などのコマンドは、プロキシの実行中に公式のファイルシステムサーバーへパストラバーサルやインジェクションなどのテストを行います。同じデータベースパスを使用している場合、結果はダッシュボードに表示されます。
重要な理由: オフラインテストは高速です。ライブテストでは、プロキシ → ポリシー → ログ → UI という一連の経路全体が機能することを確認できます。
エージェント型 AI 機能(バージョン 4.1)
これらはGuardian 内のスマートアシスタントで、監視、スコアリング、提案を行います。提案を適用するよう選択しない限り、ポリシーに取って代わることはありません。
本日リリース
| 機能 | できること |
|---|---|
| 脅威予測 | 各 MCP サーバーのリスクをスコア化し、問題が発生する前に強化策を提案します。 |
| ポリシー生成 | 通常のツール使用状況を監視し、実際に必要なものだけに絞ったポリシーの案を作成します。内容を確認してから適用できます。 |
| プロンプトインジェクション検出 | 別の AI の乗っ取りを狙ったテキストがツールの引数に含まれていないかスキャンします(ヒューリスティック+オプションの LLM)。 |
| 脅威メッシュ(MTX) | 匿名化された攻撃パターンをオプトイン方式で共有します。@mcp-guardian/mtx はオープンな交換フォーマットです。 |
| ハニーポット | 偽のデコイサーバーを設置し、プローブを検知するとアラートを発します。 |
| サプライチェーンチェック | 発行者の検証、依存関係の混同、タイポスクワッティングの検出、SBOM のエクスポートを行います。 |
| コンプライアンスマッピング | 証拠収集ランナーを使用して、セキュリティ態勢を SOC 2、HIPAA、PCI-DSS、FedRAMP、ISO 27001 にマッピングします。 |
| ドリフト検出 | サーバーのツールや動作に予期しない変化があったことを検知します。 |
| レッドチームとプロトコルファザー | 厳選した攻撃と変異させた攻撃を実行し、証明書ゲート付きのファズコーパスを拡張します。 |
| 信頼プロトコルと Guardian スコア | エージェント間のネゴシエーションと、ローカルでの信頼スコアリングを実現します。 |
| 共謀と攻撃チェーン | エージェント/ツールをまたぐ複数ステップのパターンを検出します(セッションチェーングラフ)。 |
| ケイパビリティグラフとインテントバインディング | ツール/リソース間の関係をマッピングし、セッションのインテント許可リストを設定します。 |
| エージェントの評判 | プロキシによる強制適用に対応した、永続的な評判台帳を提供します。 |
| サンドボックスの階層 | ツールまたはサーバーごとに、シャドウ/編集/許可を動的に設定します。 |
| Guardian Certified MCP | HMAC 署名付きのサーバー証明と検証階層を提供します。 |
| ポリシーシミュレーター | デプロイ前にポリシーの影響をプレビューできます(ab_test_policy、REST シミュレーション API)。 |
| インシデント対応プレイブックと調査機能 | プレイブックのステップを自動化し、ダッシュボードで AI によるインシデント調査を行います。 |
| MCP ライフサイクルガード | セッションを条件として、tools/list、resources/read、prompts/get へのアクセスを制御します。 |
| レスポンス DLP | 上流のツールレスポンスとストリーミング出力をスキャンし、シークレットを検出します。 |
| RL チューニング | コンテキスト付きバンディットとトンプソンサンプリングを使って、しきい値を最適化します。 |
ダッシュボード: Web UI で Agentic AI を開くと、概要グラフ、信頼スコア、監査テーブル、管理ツールを利用できます。エージェント機能ガイドを参照してください。
業界標準のロードマップ(4.0 でリリース)
Guardian の業界標準レイヤーは、サーバー間、エージェント間、システム全体にわたる保護を提供します。これは、企業の CISO が Guardian を全体に導入するうえで必要とするものです。11 項目すべての機能が v4.0 でリリースされました。
| Tier | Features | Theme |
|---|---|---|
| 1 — Paradigm | A1 MCP 間攻撃チェーンの検出 · A2 デジタルツインとポリシーサンドボックス · A3 エージェントの行動バイオメトリクス | 木だけでなく、森全体を見る |
| 2 — Ecosystem | B1 分散型レピュテーションネットワーク · B2 エコシステム健全性オブザーバトリー · B3 フェデレーション脅威検出 | デプロイ間のネットワーク効果 |
| 3 — Enterprise | C1 設定の来歴チェーン · C2 コードとしての脅威モデリング(STRIDE/LINDDUN) · C3 ゼロトラスト継続検証 · C4 保険リスク定量化 · C5 セマンティックポリシートランスレーター | コンプライアンス、CFO、ビジネス関係者 |
構築順序(12 か月): フェーズ 1(C5、C1、C2、A3)→ フェーズ 2(A1、A2、C3)→ フェーズ 3(B1、B2、C4)→ フェーズ 4 の研究(B3)。
詳細、すでにコードに実装されている基盤、および差別化の根拠については、docs/AGENTIC_ROADMAP.md をご覧ください。
コンプライアンスを確認する: guardian roadmap audit を実行します(機械可読な出力には --json を指定してください)。ダッシュボードの Agentic AI → Overview タブには、Industry Roadmap Compliance として同じランタイム監査が表示されます。追加の CLI ユーティリティ:guardian roadmap fleet-graph-train、federated-export|import、observatory-sync、reputation-sync。Agentic Quickstart をご覧ください。
本番環境の環境変数(任意):フリートチェーンのブロック(GUARDIAN_FLEET_CHAIN_BLOCK_CONFIDENCE)、マルチリージョン Redis(GUARDIAN_FLEET_REGION)、オブザーバトリーリレーまたは開発用スタブ(GUARDIAN_OBSERVATORY_RELAY_URL、GUARDIAN_OBSERVATORY_STUB)、フェデレーション学習(GUARDIAN_FEDERATED_LEARNING、GUARDIAN_FEDERATED_MPC)、ONNX グラフモデル(GUARDIAN_FLEET_GRAPH_ONNX_MODEL)。全一覧は .env.example にあります。
Web ダッシュボード
概要: Guardian の動作状況を表示するローカルウェブサイトです(デフォルトは http://localhost:4000)。
仕組み: mcp-guardian start を実行すると(または git clone から pnpm dashboard:proxy を実行すると)、同じプロセスがダッシュボードと API を提供します。UI には、デモ用の架空の数値ではなく、履歴データベースの実データが表示されます。
主なエリア:
| エリア | 表示内容 |
|---|---|
| Protection | 全体のステータスと、設定の平易な言葉による分析。 |
| Activity | 許可された呼び出しとブロックされた呼び出しの監査ログ。 |
| Threats | アクティブな脅威と隔離アクション。 |
| Security | セキュリティスコアと推移。 |
| Operations | 時系列のトラフィック、エラー、コストのグラフ。 |
| Agentic AI | 自律機能:信頼、脅威、ポリシー、運用、監査、ツール。業界ロードマップのパネル(A1~C5、B1~B3)もここにあります。ロードマップのコンプライアンス監査は Overview で確認できます。 |
| Settings | サーバー、ポリシー、セットアップのチェックリスト。 |
ヒント: グラフに「この時間帯のトラフィックはありません」と表示される場合は、Time window ドロップダウンの期間を広げてください(例:Last 7 days)。短い期間では、ごく最近の呼び出しのみが表示されます。
Security Swarm(Pro)
概要: 攻撃者と同じ方法でポリシーの突破を繰り返し試みる、自動テスターのチームです。
仕組み:
- 1 つのトラックでは攻撃を生成して実行し、バイパスを確認してレポートを作成します。
- もう 1 つのトラックでは、プロキシで実際にブロックされた事例から学習し、時間の経過とともに検出精度を向上させます。
- 2 つのトラックは相互にフィードバックするため、デプロイ環境で実際のトラフィックが増えるほどテストの精度も向上します。
重要な理由: ポリシーの強度は、テスト済みの攻撃に対する防御力によって決まります。スウォームはテスト対象を継続的に拡大します。
実行:pnpm security-swarm(本番環境ではライセンスが必要です)。アーキテクチャ図:Architecture § Pro pipeline(上記)。
Threat Lab(Pro)
概要: Guardian が確認した内容に基づいて、新しい攻撃パターンやルール案をローカル AI モデルで提案します。
仕組み:
- 最近のブロック、CVE データ、スウォームの調査結果からシグナルを収集します。
- モデルが新しいテストケースとポリシーの候補を提案します。
- 自動チェックで提案を検証します。
- 確認して承認するのはお客様です — 自動で適用されることはありません。
実行:pnpm security-swarm:threat-lab(Ollama または別途設定した LLM が必要です)。THREAT_LAB.md を参照してください。
Auto Threat Research(Pro)
概要: 興味深いものがブロックされた際に、バックグラウンドで調査します。
仕組み: プロキシが不審な呼び出しをブロックすると、イベントをキューに追加してグループ化し、LLM で分析して攻撃の種類を分類し、調査コーパスに追加できます。これによって稼働中のポリシーが変更されることはありません — 後で活用できる知識を蓄積します。
ライセンスが有効な場合は、GUARDIAN_THREAT_RESEARCH_AUTO=true を設定して有効にします。
Guardian Autopilot(Pro)
概要: 1 つのコマンドで、MCP 設定をラップし、プロキシを起動してダッシュボードを有効にし、オプションでバックグラウンドサービス(ダイジェスト、学習)も起動します。
仕組み:
pnpm autopilot:init -- --apply
pnpm autopilot:start
AUTOPILOT.md を参照してください。
Free と Pro の比較
| Free(コミュニティ) | Pro | |
|---|---|---|
| ポリシープロキシと YAML ルール | はい | はい |
| 攻撃のブロック、監査ログ、コスト追跡 | はい | はい |
| ハーネスと実環境シナリオ | はい | はい |
| 完全なエンタープライズダッシュボード | 制限あり/開発用バイパス | はい |
| Security Swarm、Threat Lab、Autopilot | いいえ | はい |
| Fleet、SSO、Kubernetes、PostgreSQL | いいえ | はい |
ローカル開発では、pnpm dashboard:proxy とともに GUARDIAN_CI_BYPASS_LICENSE=true を使用できます。本番環境で Pro を使用するにはライセンスが必要です — PRO_SETUP.md。
はじめに — インストール、クローン、実行
このセクションでは、Guardian を利用するための各方法を説明します。日常的な使用には npm install、開発には git clone、mcp-guardian start(またはリポジトリから pnpm dashboard:proxy)を使うと、プロキシと Web ダッシュボードをポート 4000 で同時に実行できます。
npm に関する注意:
mcp-guardian start、setup、onboard --startは GitHub 上の 4.1.6 に含まれています。ヘルプにmcp-guardian startが表示されない場合、グローバルインストールのバージョンが 4.1.6 より古い可能性があります。以下の git clone + build を使用するか、公開後にnpm install -g @mcp-guardian/[email protected]を実行してください。修正の詳細:docs/INSTALL.md。
必要なもの
| 要件 | 備考 |
|---|---|
| Node.js 18+ | @mcp-guardian/server で必要です |
| npm | グローバルインストールまたは公開済み CLI の実行に使用します |
| pnpm | git clone から開発する場合のみ必要です(pnpm install、pnpm build) |
| Git | ソースからクローンするワークフローでのみ必要です |
| Ollama(任意) | 開発環境でセマンティック検出、Threat Lab、Auto Threat Research に使用するローカル LLM。http://127.0.0.1:11434 |
npm からインストール(ユーザーにおすすめ)
公開済みのサーバーパッケージをインストールします。4.1.5+ を指定してください — 以前の 4.1.1~4.1.4 リリースでは、npm 上の workspace: メタデータに不具合がありました。4.1.6 では start / setup が追加されています(公開後は GitHub の master または npm を参照してください)。
# Global CLI (mcp-guardian command on your PATH)
npm install -g @mcp-guardian/server@latest
# Or install in a project directory
npm install @mcp-guardian/server@latest
CLI とインストール状態を確認します。
mcp-guardian --version
mcp-guardian doctor
含まれるもの: コンパイル済みの dist/、デフォルトのポリシーテンプレート、ビルド済みのダッシュボード静的ファイル(4.1.6+ では deploy/dashboard-spa/out/)、および mcp-guardian CLI(start、onboard、proxy、analyze、doctor など)。
インストール後のおすすめの手順:
mcp-guardian onboard --apply
mcp-guardian start
http://localhost:4000 を開きます。または、mcp-guardian onboard --apply --start(4.1.6+)を実行してまとめて起動できます。
プロキシを手動で実行する場合(上級者向け) — start を使わず、カスタム環境変数が必要な場合のみ:
export DASHBOARD_ENABLED=true
export DASHBOARD_AUTH_DISABLED=true
export GUARDIAN_CI_BYPASS_LICENSE=true
export MCP_GUARDIAN_DB_PATH="$HOME/.mcp-guardian/history.db"
mcp-guardian proxy --config guardian-configs/filesystem.json --policy policy-audit.yaml
開発用にクローンしてセットアップ
ダッシュボード SPA、エージェント型モジュール、テスト、Security Swarm、pnpm スクリプトを含むリポジトリ全体が必要な場合に使用します。
git clone https://github.com/rudraneel93/mcp-guardian.git
cd mcp-guardian
# Install workspace dependencies (pnpm is required for the monorepo)
corepack enable
pnpm install
# Copy optional environment overrides
cp .env.example .env
# Edit .env if you need NVD keys, LLM URLs, custom DB path, etc.
# Compile TypeScript + workspace packages + dashboard SPA (first time)
pnpm build
pnpm setup
# setup = pnpm install (if needed) + build + scripts/build-dashboard-spa.sh
# Alternative: pnpm dashboard:build
クローン後に 1 行で実行(すべてをインストールしてビルド):
git clone https://github.com/rudraneel93/mcp-guardian.git && cd mcp-guardian && pnpm install && pnpm build && pnpm setup
グローバルインストールせずにリポジトリから実行:
node dist/cli.js start
# or after linking: npm link && mcp-guardian start
環境を設定する
Guardian は起動時に環境変数を読み込みます。ローカル開発では、通常 scripts/start-dashboard-proxy.sh のデフォルト値で十分です。
cp .env.example .env
| 変数 | 用途 | デフォルト(開発時) |
|---|---|---|
MCP_GUARDIAN_DB_PATH | SQLite 監査/履歴 DB | ~/.mcp-guardian/history.db |
DASHBOARD_ENABLED | REST API + Web UI | mcp-guardian start または dashboard:proxy の使用時は true |
DASHBOARD_PORT | ダッシュボード URL のポート | 4000 |
DASHBOARD_AUTH_DISABLED | localhost でのログインを省略 | 開発用スクリプトでは true |
GUARDIAN_CI_BYPASS_LICENSE | Pro ダッシュボード機能をローカルで有効化 | 開発用スクリプトでは true |
GUARDIAN_LLM_ENABLED | セマンティック/AI 機能 | 開発用スクリプトでは true |
OLLAMA_BASE_URL | ローカル LLM エンドポイント | http://127.0.0.1:11434 |
GUARDIAN_WS_ENABLED | WebSocket によるリアルタイム指標 | true |
例 — テストとダッシュボードで同じファイルを使うため、リポジトリ内のデータベースを使用します。
export MCP_GUARDIAN_DB_PATH="$PWD/reports/local-history.db"
mkdir -p "$(dirname "$MCP_GUARDIAN_DB_PATH")"
完全なリファレンス:.env.example。
ダッシュボードとプロキシを起動する(推奨)
主なコマンド(npm のグローバルインストールまたは git clone、4.1.6 以降):
mcp-guardian start
ローカルのデフォルト値(DASHBOARD_ENABLED、MCP_GUARDIAN_DB_PATH=~/.mcp-guardian/history.db、localhost 用のライセンスバイパス)を設定し、単一サーバーの guardian-configs/*.json(またはオンボードした configsDir)を選択して、プロキシ + API + UI を実行します。
カスタム設定またはポリシーの場合:
mcp-guardian start --config guardian-configs/filesystem.json --policy default-policy.yaml
mcp-guardian start --build-dashboard # git clone: build SPA if out/ missing
リポジトリから起動する(開発用スクリプト。同じ構成 + 追加の開発用環境変数):
pnpm dashboard:proxy
# or: pnpm dashboard:proxy -- guardian-configs/filesystem.json default-policy.yaml
このコマンドの動作:
- ダッシュボード関連のソースが変更されている場合、
dist/を再ビルドします(開発用スクリプトのみ) - ダッシュボード SPA(
deploy/dashboard-spa/out/)が存在しない場合、ビルドします --configを指定しない限り、単一サーバーの MCP 設定を選択します- 次の処理を実行する 1 つの Node プロセスを起動します。
- MCP プロキシ(stdio で上流の MCP サーバーに接続)
- ダッシュボード REST API
- http://localhost:4000/ の静的 Web UI
- オプションのエージェント型スケジューラーと WebSocket プッシュ
コンソールに表示される出力:
[dashboard-proxy] DB: /Users/you/.mcp-guardian/history.db
[dashboard-proxy] Dashboard: http://localhost:4000/
[dashboard-proxy] Config: guardian-configs/filesystem.json Policy: default-policy.yaml Mode: block
ブラウザーを開き、Protection、Activity、Agentic AI などを確認します。グラフが空の場合は、時間範囲を広げる(例:Last 7 days)か、トラフィックを生成してください(次のセクションを参照)。
停止: ターミナルで Ctrl+C を押します。ポート 4000 が解放されない場合:lsof -ti :4000 | xargs kill。
ダッシュボード UI の開発(ホットリロード)
deploy/dashboard-spa/ 配下の React パネルを編集する場合は、SPA 開発サーバーを別途実行します。
# Terminal 1 — proxy + API (backend)
pnpm dashboard:proxy
# Terminal 2 — Next.js dev server for the SPA (frontend hot reload)
pnpm dashboard:dev
SOC スタイルで API と UI を分離する場合:pnpm soc:full(API は 4040、SPA 開発サーバーについては package.json を参照)。
最も簡単な方法:オンボード(AI クライアントをラップする)
npm のグローバルインストール(4.1.6 以降)後、Guardian に Cursor、Claude Desktop、Cline、Windsurf の MCP 設定を検出してラップさせます。
mcp-guardian onboard --apply
mcp-guardian start
--apply は、稼働中の IDE の MCP JSON を(バックアップを作成して)修正します。AI クライアントを再起動すると、トラフィックが Guardian 経由で流れるようになります。
「No MCP config found for client auto」と表示される場合:
- まず MCP を使う IDE(Cursor、Cline、Claude Desktop、Windsurf)をインストールして設定する、または
- クライアントを指定する:
mcp-guardian onboard --client cursor --apply、または - 設定ファイルを指定する:
mcp-guardian onboard --config /path/to/mcp.json --apply、または - オンボードを省略し、リポジトリのサンプル設定で起動する:
mcp-guardian start --config guardian-configs/filesystem.json
一般的な設定ファイルのパス(macOS):
| クライアント | 設定ファイル |
|---|---|
| Cline | ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json |
| Cursor | ~/.cursor/mcp.json |
| Claude Desktop | ~/Library/Application Support/Claude/claude_desktop_config.json |
git clone したリポジトリから(ビルド前またはビルド後):
pnpm build
pnpm onboard -- --client auto --apply
# or: node dist/cli.js onboard --apply
start を使わずにプロキシを実行する(上級者向け)
mcp-guardian start の使用を推奨します — 同じ環境変数を自動的に設定します。完全な制御が必要な場合に限り、proxy を直接使用してください。
export DASHBOARD_ENABLED=true
export DASHBOARD_PORT=4000
export MCP_GUARDIAN_DB_PATH="$HOME/.mcp-guardian/history.db"
mcp-guardian proxy --config guardian-configs/filesystem.json --policy default-policy.yaml --blocking-mode block
リポジトリから:
node dist/cli.js proxy --config guardian-configs/filesystem.json --policy default-policy.yaml
DASHBOARD_ENABLED を設定しない場合、プロキシのみが起動し(Web UI なし)、ログは引き続き MCP_GUARDIAN_DB_PATH に保存されます。
テストトラフィックを生成して確認する
1つのターミナルで mcp-guardian start または pnpm dashboard:proxy を実行した状態で:
# Same DB as the proxy (important for dashboard charts)
export MCP_GUARDIAN_DB_PATH="${MCP_GUARDIAN_DB_PATH:-$HOME/.mcp-guardian/history.db}"
# Short live attack smoke test against the official filesystem MCP server
pnpm real-life:filesystem
# Offline policy matrix (no live MCP server required)
pnpm harness
# Plain-English summary of current posture
pnpm analyze
# Industry roadmap module audit (CLI)
node dist/cli.js roadmap audit
# or after global install: mcp-guardian roadmap audit
http://localhost:4000/ を再読み込みすると、Activity / Protection に新しいイベントが表示されます。
詳細:scenarios/real-life/README.md。
Guardian Autopilot(1つのコマンドでフリートをセットアップ)
設定をラップし、プロキシとダッシュボード、任意のバックグラウンドジョブを起動します。
pnpm autopilot:init -- --apply
pnpm autopilot:start
pnpm autopilot:status
本番環境でのライセンスについては、docs/PRO_SETUP.md を参照してください(ローカル開発では、mcp-guardian start または pnpm dashboard:proxy とともに GUARDIAN_CI_BYPASS_LICENSE=true を使用します)。
Web ダッシュボード — 表示される内容
| タブ/エリア | 目的 |
|---|---|
| Protection | 全体のステータス、ロードマップ準拠状況(v4.1 以降) |
| Activity | 許可およびブロックされた tools/call の監査ログ |
| Threats | アクティブな脅威、隔離、フリートチェーングラフ(A1) |
| Security | スコア、傾向、Active Rules コントロールを備えた Policy Studio |
| Operations | トラフィック、エラー、コストのグラフ |
| Agentic AI | 信頼性、ポリシー生成、オブザーバトリー、連合学習、プラン準拠監査 |
| Settings | サーバー、ポリシー、セットアップチェックリスト |
ダッシュボードは、プロキシと同じ SQLite DB(MCP_GUARDIAN_DB_PATH)を読み取ります。独立したデモ用データセットではありません。
Security → Policy では、YAML を手動で編集せずにルールを管理できるようになりました。
- 検索/フィルター機能付きのActive Rules リスト
- ソフト無効化/有効化(ルールに
enabled: false/trueを書き込みます) - 完全削除(
policy.rules[]からルールを削除します) - エディターは構造化アクションと同期されるため、YAML が信頼できる唯一の情報源として維持されます
エージェント機能:docs/AGENTIC_QUICKSTART.md · docs/AGENTIC_FEATURES.md。
コマンドリファレンス
| コマンド | 説明 |
|---|---|
npm install -g @mcp-guardian/server@latest | 公開済み CLI をインストールします |
mcp-guardian start | :4000 でプロキシとダッシュボードを起動します(推奨、4.1.6 以降) |
mcp-guardian onboard --apply | MCP クライアントの設定を自動でラップします |
mcp-guardian onboard --apply --start | オンボーディング後に起動します(4.1.6 以降) |
mcp-guardian setup | 開発:pnpm install + ビルド + ダッシュボード SPA |
mcp-guardian doctor | インストール、DB、SPA、設定を検証します |
mcp-guardian proxy --policy … | 手動でプロキシを起動します(--config を追加) |
pnpm install && pnpm build | 開発:モノレポをインストールしてコンパイルします |
pnpm setup / pnpm dashboard:build | 開発:ダッシュボード SPA をビルドします |
pnpm dashboard:proxy | 開発:プロキシ + API + UI(リポジトリスクリプト) |
pnpm dashboard:dev | 開発:SPA のホットリロード(プロキシ起動中) |
pnpm real-life:filesystem | MCP の実動攻撃スモークテスト |
pnpm harness | オフラインの敵対的ポリシーマトリクス |
pnpm analyze | 平易な言葉でのセキュリティ概要 |
pnpm security-swarm | Pro:継続的な敵対的テスト |
pnpm autopilot:init / autopilot:start | Pro:ラップしてフルスタックを起動します |
mcp-guardian roadmap audit | 業界ロードマップのモジュール(A1–C5)を検証します |
トラブルシューティング
| 症状 | 対処方法 |
|---|---|
ヘルプに mcp-guardian start がない | グローバルインストールのバージョンが 4.1.6 より古いです。git pull && pnpm build && node dist/cli.js start を実行するか、4.1.6 が npm で公開されている場合は npm install -g @mcp-guardian/server@latest を実行してください |
unknown option --start | 同様に、4.1.6 にアップグレードするか、onboard --apply の後に start を別々に実行してください |
npm で InstallError / workspace: が発生する | 4.1.1~4.1.4 ではなく、@mcp-guardian/[email protected]+ を使用してください。npm cache clean --force を実行してから再インストールしてください |
ETARGET / @mcp-guardian/core に一致するバージョンがない | 公開処理が完了していません。メンテナーは ./scripts/publish-npm-all.sh を実行してください |
next: command not found(ダッシュボードのビルド時) | npm の場合:パッケージを再インストールしてください(4.1.6 にはビルド済みの out/ が含まれています)。Git の場合:mcp-guardian setup を実行するか、cd deploy/dashboard-spa && npm install && npm run build を実行してください |
benchmark-report.json が見つからない` | git pull を実行してください。シードファイルが deploy/dashboard-spa/app/data/ に存在する必要があります |
pnpm dashboard:proxy が見つからない | リポジトリのルートから実行するか、グローバルに mcp-guardian start を使用してください |
| MCP 設定が見つからない | mcp-guardian onboard --apply を実行するか、mcp-guardian start --config guardian-configs/filesystem.json を実行してください |
| データベースのディスク I/O エラー | プロキシを停止し、rm -f ~/.mcp-guardian/history.db-wal history.db-shm history.db.pid を実行してから、mcp-guardian start を実行してください |
| ダッシュボードのグラフが空 | プロキシと同じ MCP_GUARDIAN_DB_PATH を設定し、期間を広げて、pnpm real-life:filesystem を実行してください |
| ポート 4000 が使用中 | lsof -ti :4000 | xargs kill を実行するか、DASHBOARD_PORT=4001 mcp-guardian start を実行してください |
better-sqlite3 のエラー(pnpm 10) | pnpm approve-builds → better-sqlite3 を許可 → pnpm install |
| 起動時に Ollama の警告が表示される | 任意です。セマンティック機能や Threat Lab を使用する場合は ollama serve を実行してください |
| Pro 機能がロックされている | 本番環境:PRO_SETUP.md。開発環境:mcp-guardian start を使用してください |
| BundlePhobia / Socket のバッジ | サーバーパッケージは Node 専用です。サイズ分析には @mcp-guardian/core を使用してください |
手順ごとの対処方法: docs/INSTALL.md · SECURITY.md · docs/REAL_WORLD_INTEGRATION.md(複数のサーバーを使うプロキシ)。
クイックスタート(概要)
npm から:
npm install -g @mcp-guardian/server@latest
mcp-guardian onboard --apply
mcp-guardian start # → http://localhost:4000/
git から:
git clone https://github.com/rudraneel93/mcp-guardian.git && cd mcp-guardian
pnpm install && pnpm build && pnpm setup
mcp-guardian start
詳しい手順とトラブルシューティングについては、始め方 — インストール、クローン、実行 と docs/INSTALL.md をご覧ください。
ポリシーファイル
ルールは default-policy.yaml(または指定したパス)に記述します。例:
version: '1.0'
policy:
mode: block
default_action: block
rules:
- name: allow-safe-tools
description: Only allow read-only tools
action: block
tools:
allow:
- read_file
- list_directory
- search
- name: block-shell-commands
description: Never let the AI run shell commands
action: block
tools:
deny:
- bash
- execute_command
- eval
- name: rate-limit
description: Max 60 tool calls per minute
action: block
maxCallsPerMinute: 60
同梱のデフォルトポリシーでは、一般的な攻撃パターンの多くがすでにブロックされています。policy-templates/ のテンプレートを拡張するか、テンプレートを使って作成できます。詳細なリファレンス:POLICY.md。
変更できる設定
| 変数 | わかりやすい説明 |
|---|---|
MCP_GUARDIAN_POLICY | ルールファイルへのパス |
MCP_GUARDIAN_DB_PATH | 呼び出し履歴の保存先(プロキシとテストランナーで共有してください) |
MCP_GUARDIAN_RETENTION_DAYS | 監査レコードの保存期間(デフォルトは30日) |
MCP_GUARDIAN_MAX_PAYLOAD_BYTES | JSON-RPC メッセージの最大生サイズ(デフォルトは10MB) |
GUARDIAN_MAX_EXPANDED_PAYLOAD_BYTES | デコード後のツール引数の最大シリアライズサイズ(デフォルトは50MB) |
GUARDIAN_JWKS_REFRESH_MS | OIDC JWKS の更新間隔(デフォルトは5分) |
GUARDIAN_STRICT_ALLOWLIST_RBAC | tools.allow ポリシールールで RBAC を必須にします |
GUARDIAN_HEALTH_PROBE_INTERVAL_MS | MCP の定期的なヘルスプローブ(0 = 無効) |
GUARDIAN_SHUTDOWN_GRACE_MS | シャットダウン時に実行中の呼び出しを待機する時間(デフォルトは30秒) |
GUARDIAN_DB_ENCRYPTION_KEY | 機密性の高い監査フィールドを保存時に暗号化します |
GUARDIAN_DB_ENCRYPT_AUDIT_ARGS | 監査内の引数の編集済みスニペットも暗号化します(true と上記のキーを指定) |
MCP_GUARDIAN_SIEM_ENABLED | ブロック/監査イベントを Splunk、Datadog、Webhook などにエクスポートします |
DASHBOARD_PORT | ダッシュボードのポート(デフォルトは 4000) |
GUARDIAN_DAILY_BUDGET_USD | 1日の支出アラートのしきい値 |
GUARDIAN_LLM_PROVIDER / OLLAMA_BASE_URL | セマンティックチェックと Threat Lab 用のローカル AI |
GUARDIAN_CI_BYPASS_LICENSE | ローカル開発専用:Pro ライセンスなしでダッシュボードを使用します |
詳細は、チーム、Redis、複数サーバーについて説明している ENTERPRISE_DEPLOYMENT.md をご覧ください。
対応 AI クライアント
Guardian は、以下の設定を自動検出してラップできます。
- Cline(VS Code)
- Claude Desktop
- Cursor
- Windsurf
または、任意の MCP 設定を渡してください:mcp-guardian proxy --config path/to/config.json。
ドキュメント一覧
| トピック | ドキュメント |
|---|---|
| インストールとトラブルシューティング | docs/INSTALL.md |
| エージェント型 AI(提供中) | docs/AGENTIC_FEATURES.md |
| エージェント型 AI のロードマップ | docs/AGENTIC_ROADMAP.md |
| エージェント型アーキテクチャ | docs/AGENTIC_ARCHITECTURE.md |
| MTX 脅威情報交換 | docs/MTX_SPEC.md |
| MCP セキュリティリファレンス | docs/MCP_SECURITY_REFERENCE.md |
| オートパイロット | docs/AUTOPILOT.md |
| Pro ライセンス | docs/PRO_SETUP.md |
| ポリシーリファレンス | docs/POLICY.md |
| エンタープライズ導入 | docs/ENTERPRISE_DEPLOYMENT.md |
| アーキテクチャ | docs/ARCHITECTURE.md |
| リリース履歴 | CHANGELOG.md |
ライセンス
コミュニティ機能(プロキシ、ポリシー、スキャン、ハーネス、実環境のシナリオ)は MIT です。LICENSE と COMMUNITY_SCOPE.md をご覧ください。
Pro 機能を本番環境で使用するにはライセンスが必要です:mcp-guardian-cloud.vercel.app。LICENSE-PRO をご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。