Skip to main content
Glama

MCPKernel — AIエージェントのためのセキュリティカーネル

ツールポイズニング、データ流出、プロンプトインジェクション、ラグプル攻撃を阻止するオープンソースのMCP/A2Aセキュリティゲートウェイ。ポリシー強制、汚染追跡、サンドボックス実行、決定論的エンベロープ、スキル監査、およびすべてのAIエージェントツール呼び出しに対するSigstore監査を備えています。Claude Desktop、Cursor、VS Code、Windsurf、OpenClaw、およびあらゆるMCPクライアントで動作します。OWASP ASI 2026準拠。

CI PyPI version Tests Coverage License: Apache 2.0 Python 3.12+ Downloads Docs

完全なドキュメントを読む →


クイックスタート

オプションA:セキュリティゲートウェイ(プロキシモード)

pip install "mcpkernel[all]"
mcpkernel serve --host 127.0.0.1 --port 8000

MCPクライアントの接続先を、ツールサーバーを直接指定する代わりに http://localhost:8000/mcp に設定します。これで、すべてのツール呼び出しがポリシーチェック、汚染スキャン、サンドボックス化、監査ログ記録の対象となります。

オプションB:MCPサーバー(ツールモード — ワンコマンド)

pip install mcpkernel
mcpkernel install claude    # or: cursor, vscode, windsurf, zed, openclaw, goose

これにより、MCPKernelがIDE内のMCPサーバーとして追加されます。エージェントは mcpkernel_scan_toolmcpkernel_check_taintmcpkernel_validate_policy などをネイティブに呼び出せるようになります。

オプションC:Python API

from mcpkernel import MCPKernelProxy

async with MCPKernelProxy(
    upstream=["http://localhost:3000/mcp"],
    policy="strict",
    taint=True,
) as proxy:
    result = await proxy.call_tool("read_file", {"path": "data.csv"})

または、デコレータを使用して任意の関数を保護します:

from mcpkernel import protect

@protect(policy="strict", taint=True)
async def read_data(path: str) -> str:
    return Path(path).read_text()

Related MCP server: mcp-guardian

なぜMCPKernelなのか?

AIエージェント(LangChain、CrewAI、AutoGen、Copilot、OpenClawなど)は、ファイルの読み取り、コードの実行、HTTPリクエストの送信など、自律的にツールを呼び出します。MCPエコシステムでは、OpenClawだけでも 344件以上のセキュリティアドバイザリ が報告されており、ツールポイズニング攻撃、権限昇格、データ流出、ラグプル攻撃などの重大な脆弱性が含まれています。

MCPKernelは、欠けていたチョークポイントです。 エージェントとMCPツールサーバーの間に配置され、すべての呼び出しに対してセキュリティポリシーを強制します:

┌─────────────┐     ┌──────────────────────────┐     ┌─────────────┐
│  AI Agent    │────▶│       MCPKernel           │────▶│  MCP Tool   │
│ (LangChain,  │◀────│  Security Gateway        │◀────│  Server     │
│ CrewAI,      │     └──────────────────────────┘     └─────────────┘
│ OpenClaw,    │      │ Policy │ Taint │ Sandbox │
│ Cursor, etc) │      │  DEE   │ Audit │ eBPF    │
└─────────────┘      │ Skills │ DLP   │ Doctor  │

すべてのツール呼び出しで発生すること:

ステップ

MCPKernelの動作

1. ポリシーチェック

OWASP ASI 2026マッピングに基づきYAMLルールを評価 — ブロックまたは許可

2. 汚染スキャン

引数内のシークレット(AWSキー、JWT)、PII(SSN、クレジットカード)、ユーザー入力を検出

3. DLPガード

ツール境界を越えたマルチホップデータ漏洩を防止(PII入力 → HTTP出力 = ブロック)

4. サンドボックス実行

Docker、Firecracker、WASM、またはMicrosandboxでコードを実行 — ベアメタルでは実行しない

5. 決定論的エンベロープ

入出力をハッシュ化し、トレースにSigstore署名を付与 — 完全に再現可能

6. 監査ログ

SIEMエクスポート(CEF、JSONL、CSV、SARIF)を備えた改ざん防止の追記型ログに書き込み



MCPのセキュリティ問題

MCPエコシステムは急速に成長していますが、セキュリティは追いついていません。MCPKernelが防御する現実の脅威は以下の通りです:

脅威

仕組み

現実の影響

MCPKernelの防御

ツールポイズニング

ツール説明内の隠された <IMPORTANT> 指示が、エージェントにSSHキーや .env ファイル、認証情報を読み取らせる

Cursor、Claude Desktopなど、認証情報が密かに流出

ポイズニングスキャナー が隠された指示、Unicode難読化、<IMPORTANT> ブロックを検出

ツールシャドーイング

悪意のあるMCPサーバーが信頼されたサーバーを上書きする動作を注入(例:すべてのメールを攻撃者に転送)

信頼されたツールを使っているように見せかけて攻撃者にデータを送信

サーバー間ポリシー分離 + 汚染ラベルが信頼できないシンクへのデータフローをブロック

MCPラグプル

ユーザーがインストールを承認した後にサーバーがツール説明を変更

信頼されたツールが突然悪意のあるものに変化 — 検知不能

DEEエンベロープハッシュ がツール説明を固定。ドリフト検知で変更を捕捉

権限昇格

認証再接続が operator.admin を自称。プラグインがホストの全権限を継承

OpenClawの2つの重大なCVE(GHSA-9hjh, GHSA-fqw4) — スコープ拡大によるRCE

ポリシーエンジン が最小権限を強制。暗黙的な管理者昇格を禁止

データ流出

エージェントがシークレットを読み取り、外部ツールへの隠しパラメータとして渡す

ツール引数のサイドチャネル経由でPII、APIキー、SSHキーが漏洩

汚染追跡 + DLPチェーン検知 が汚染データのシンク到達をブロック

スキルサプライチェーン

悪意のあるOpenClaw/ClawHubスキルに `curl

bashrm -rf`、流出エンドポイントが含まれる

システムをバックドア化するスキルをユーザーがインストール

スキルスキャナー がインストール前にSKILL.mdを監査し、25以上の危険なパターンを検出

サンドボックス脱出

サンドボックスが無効な場合にホスト上で実行される(OpenClawのデフォルト:sandbox.mode=off

エージェントコードがOSの全権限で実行される

4つのサンドボックスバックエンド(Docker, Firecracker, WASM, Microsandbox) — 設計段階からサンドボックス優先

監査証跡なし

エージェントがいつ、何を、なぜ行ったかの改ざん不可能な記録がない

インシデント調査やコンプライアンス証明が不可能

Sigstore署名付き追記型ログ とSIEMエクスポート(CEF, JSONL, CSV, SARIF)

OpenClawには344件以上のセキュリティアドバイザリがあり、2件の重大なRCE脆弱性、スコープバイパス問題、Webhook認証の欠落が含まれています。MCPKernelは、OpenClawのようなプラットフォームが必要としながらも組み込まれていないセキュリティ層です。


機能

コアセキュリティパイプライン

  • YAMLポリシーエンジン — ツール、引数パターン、または汚染ラベルごとに許可/拒否/監査/サンドボックスルールを定義

  • 汚染追跡 — ツール呼び出し引数内のシークレット、PII、APIキー、JWTの自動検出

  • DLPチェーン検知 — ツール境界を越えたマルチホップデータ漏洩を防止(データベース → HTTPをブロック)

  • 4つのサンドボックスバックエンド — Docker、Firecracker microVM、WASM、Microsandbox

  • 決定論的実行エンベロープ (DEE) — すべての実行をハッシュ化し、再現用にSigstore署名を付与

  • OWASP ASI 2026準拠 — ASI-01からASI-08までをマッピングした組み込みポリシーセット

  • 追記型監査ログ — SQLiteベース、コンテンツハッシュ化、CEF/JSONL/CSV/SARIF SIEMエクスポート

脅威検知とスキャン

  • ツールポイズニングスキャナー — MCPツール説明内の隠された指示、Unicode難読化、プロンプトインジェクションを検出

  • スキルスキャナー — OpenClaw/ClawHubのSKILL.mdファイルを監査し、危険なシェルコマンド、流出パターン、隠された指示を検出

  • MCP設定検出 — Claude、Cursor、VS Code、Windsurf、Zed、OpenClaw、Goose全体でMCP設定を自動検出

  • Snykエージェントスキャンブリッジ — Snykの agent-scan CLIを実行し、結果からポリシールールを自動生成

マルチクライアント統合

  • ワンコマンドインストールmcpkernel install claude でサポートされているIDEにセキュリティツールを追加

  • MCPサーバーとしてのMCPKernel — スキャン、検証、汚染チェック、診断をネイティブエージェントツールとして公開

  • 7つのサポートクライアント — Claude Desktop、Cursor、VS Code、Windsurf、Zed、OpenClaw、Goose

  • OpenClawセキュリティスキル — OpenClaw/ClawHubエコシステム用のインストール可能なスキルパッケージ

開発者体験

  • Python API — プログラム利用のための MCPKernelProxy クラスと @protect デコレータ

  • ポリシープリセットpermissive(寛容)、standard(標準)、strict(厳格)の組み込みプリセット — 設定不要のセキュリティ

  • Doctor診断mcpkernel doctor でPython、依存関係、設定、公開されたシークレット、権限をチェック

  • VS Code拡張機能 — 検出されたサーバーのツリービュー、セキュリティ結果パネル、統合コマンド

プラットフォームと可観測性

  • Kongスタイルのプラグインパイプライン — 優先順位付きの pre_execution → execution → post_execution → log

  • レート制限 — LRUエビクション付きのIDごとのトークンバケット

  • Prometheusメトリクス + OpenTelemetry — 箱から出してすぐに使える完全な可観測性

  • オプションのeBPFプローブ — MCP境界でのカーネルレベルのシステムコール監視

  • エージェントマニフェスト統合agent.yaml を読み込み、コンプライアンス(FINRA/SEC)をポリシールールに変換し、未宣言ツールをブロック

  • Langfuse可観測性エクスポート — LLMレベルの分析のためにLangfuseへ非同期バッチエクスポート

  • Guardrails AI検証 — GuardrailsハブバリデーターによるPII、シークレット、有害性の検出強化

  • MCPサーバーレジストリ — 公式レジストリからアップストリームのMCPサーバーを検索、検証

因果信頼グラフ (CTG) — 新規研究貢献

  • 適応型信頼減衰 — ツール/サーバーの信頼性が指数関数的に低下:T(t) = T₀ · e^{-λ(t-t₀)} · Π w(vᵢ)

  • 遡及的汚染無効化 — ソースが侵害された場合、すべての下流データが遡及的に汚染される

  • 行動フィンガープリント — グラフのトポロジーzスコアを通じて異常なツール呼び出しパターンを検出

  • 最小権限計算 — 観測された因果チェーンから証明可能な最小権限を導出

  • 因果チェーン分析 — 任意のツール出力をルートデータソースまで追跡

セキュリティ保護 (MCP仕様 2025-11-25)

  • 混乱した代理人(Confused Deputy)防御 — ツール/サーバーの許可リストにより、サーバー間委任攻撃を防止

  • トークンパススルーガード — 引数および結果内の認証情報漏洩(OpenAIキー、GitHub PAT、AWSキー、JWT)をブロック

  • SSRFガード — ドメイン許可リストにより、プライベートネットワーク、クラウドメタデータ(169.254.169.254)をブロック

  • セッションハイジャック防御 — クライアントフィンガープリント検証と有効期限付きのHMACバインドセッション

  • メモリポイズニング防御 — 反復スコアリングにより、自己強化型インジェクション(ゾンビエージェント)を検出

  • 統合セキュリティパイプライン — 単一の pipeline.check_tool_call() 呼び出しですべてのチェックを実行

コンプライアンスプリセット

  • ワンライン有効化apply_preset("hipaa", settings) ですべてのセキュリティ制御を設定

  • 5つの組み込みプリセット — HIPAA、SOC 2、PCI DSS v4.0、GDPR第25条、FedRAMP High

  • YAML設定可能 — 設定ファイルで compliance.preset: hipaa を設定


はじめに

# Install with all backends
pip install "mcpkernel[all]"

# Start the security gateway
mcpkernel serve --host 127.0.0.1 --port 8000

MCPクライアントの接続先を、ツールサーバーを直接指定する代わりに http://localhost:8000/mcp に設定します。

MCPKernelをMCPサーバーとして追加(エージェント呼び出し可能なセキュリティツール)

# Install into your IDE — one command
mcpkernel install claude    # Claude Desktop
mcpkernel install cursor    # Cursor IDE
mcpkernel install vscode    # VS Code + Copilot
mcpkernel install windsurf  # Windsurf
mcpkernel install zed       # Zed
mcpkernel install openclaw  # OpenClaw
mcpkernel install goose     # Goose

インストール後、エージェントは以下のセキュリティツールをネイティブに呼び出せます:

MCPツール

動作

mcpkernel_scan_tool

ツール説明をスキャンし、ポイズニング、シャドーイング、プロンプトインジェクションを検出

mcpkernel_validate_policy

YAMLポリシーファイルの構文と論理エラーを検証

mcpkernel_discover_configs

システム上のすべてのMCP設定を検索

mcpkernel_check_taint

テキスト内の漏洩したシークレット、PII、APIキーをチェック

mcpkernel_scan_skill

OpenClaw/ClawHubのSKILL.mdを監査し、危険なパターンを検出

mcpkernel_doctor

MCPKernelインストールの健全性診断を実行

健全性診断の実行

mcpkernel doctor

チェック内容:Pythonバージョン、依存関係、設定ファイルの妥当性、環境内の公開シークレット、ツールの可用性、ファイル権限。

インストール前のスキルスキャン

# Scan a single skill
mcpkernel scan-skill path/to/SKILL.md

# Scan a directory of skills
mcpkernel scan-skill skills/ --json

検出内容:curl|bash パイプ、rm -rf、流出エンドポイント、ハードコードされたAPIキー、隠された指示、未宣言の環境変数など。


ユースケース — ガイド付きセットアップ

1. セキュアなAIコーディングアシスタント(Copilot, Cursor, Windsurf)

コーディングアシスタントによるシークレットの流出や重要なファイルの書き換えを防止します。

pip install "mcpkernel[all]"
mcpkernel init

機密ファイルへのアクセスをブロックするポリシーを追加:

# .mcpkernel/policies/coding_assistant.yaml
rules:
  - id: CA-001
    name: Block secret file reads
    action: deny
    tool_patterns: ["read_file", "file_read"]
    arg_patterns:
      path: ".*\\.(env|pem|key|credentials)$"

  - id: CA-002
    name: Block outbound HTTP with tainted data
    action: deny
    tool_patterns: ["http_post", "http_request", "fetch"]
    taint_labels: [secret, pii]

ゲートウェイを起動し、MCPクライアントの接続先を指定:

mcpkernel serve --port 8000
# In your editor's MCP config: http://localhost:8000/mcp

2. 自律型エージェントフレームワーク(LangChain, CrewAI, AutoGen)

エージェントが行うすべてのツール呼び出しをサンドボックス化 —

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    Not graded
    maintenance
    A transparent proxy and execution firewall that intercepts and audits AI agent tool calls against configurable security policies before forwarding them to downstream MCP servers. It provides safe execution environments with features like data redaction, anti-loop protection, and unified alert dispatching.
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    A gateway that enforces permissions, sanitization, approval, and audit for AI agent MCP tool calls, with a policy engine and local proxy CLI.
    22
    1
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A defensive gateway and firewall for AI agents using MCP servers, scanning tool calls, responses, and manifests for prompt injection, secrets, dangerous commands, and drift before allowing execution.
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Governed MCP gateway that lets AI agents call tools with policy enforcement, prompt-injection screening, a kill-switch, and tamper-evident signed audit logs.
    Apache 2.0

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/piyushptiwari1/mcpkernel'

If you have feedback or need assistance with the MCP directory API, please join our Discord server