🛡️ CyberShield MCP — Servidor MCP de Defensa Autónoma (Windows) について
CyberShield MCP は、Windows の防御操作と診断を行う MCP サーバーです。Claude Desktop、LangChain エージェント、スクリプト向けに、システム操作を MCP のツール、リソース、プロンプトとして公開し、FastAPI 経由の HTTP エンドポイントも提供できます。
主な機能
- 01ホストへの ping チェック
- 02IP アドレスのブロック
- 03ファイアウォールルールの参照
- 04システム診断と不審なプロセスの確認
- 05FastAPI による HTTP エンドポイント公開
活用シーン
- 01Claude Desktop からネットワーク到達性を確認
- 02エージェントによる IP ブロックの自動化
- 03ファイアウォールルールの確認とシステム診断
- 04防御ツールの HTTP ワークフローへの接続
MCP 対応
Windows の防御・診断ツール、システムリソース、プロンプトを MCP クライアントに公開します。関連ツールは FastAPI 経由の HTTP エンドポイントとしても利用できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
🛡️ CyberShield MCP — 自律防御用 MCP サーバー(Windows)
CyberShield MCP は、防御ツールの実行、システムリソースの照会、人工知能の支援によるセキュリティ判断を行うために設計された、完全に機能する MCP(Model Context Protocol)サーバーです。
Windows 上で動作し、重要なシステムコマンドを安全に公開します。また、Claude Desktop または LangChain エージェントから制御できるため、状況に応じた正確で自律的な防御を実現できます。
⚙️ 要件と依存関係
💡 現時点では Windows のみ対応しています(netsh、ping、Get-WinEvent などを使用します)。
簡単なインストール:
pip install mcp[cli] langchain langchain-ollama fastapi uvicorn requests
.env の環境変数を使用する場合は、次を実行してください:
mcp install -f
📂 プロジェクト構成
cybershield_mcp/
├── server.py # Punto de entrada principal
├── pyproject.toml # Configuración del proyecto (con uv o poetry)
├── README.md # Descripción del proyecto
├── .env # Variables de entorno (si usás `mcp install -f`)
│
├── tools/ # Herramientas de defensa y diagnóstico
│ ├── __init__.py
│ ├── firewall.py # Bloqueo y desbloqueo de puertos/IPs
│ ├── diagnostics.py # Ping y escaneo con nmap
│ ├── logs.py # Análisis de logs con Context
│ ├── hardening.py # Fortalecimiento del sistema
│ ├── agent_response.py # Acciones automáticas y diagnóstico rápido
│ ├── network_watch.py # Conexiones activas y detección de IPs raras
│ ├── eventlog_analyzer.py # Revisión de eventos de seguridad (logins fallidos, privilegios)
│ └── processes.py # Escaneo y gestión de procesos activos
│
├── resources/
│ ├── __init__.py
│ └── firewall_state.py # Consulta del estado actual del firewall
│
├── prompts/
│ ├── __init__.py
│ └── threat_response.py # Prompt para decidir acción ante amenazas
│
├── utils/
│ ├── __init__.py
│ └── commands.py # Funciones comunes para subprocess seguro
│
├── fastapi_mcp_server.py # Exposición HTTP de herramientas MCP para integración externa
├── agent_langchain.py # Agente IA con LangChain + Ollama usando MCP vía FastAPI
├── Dockerfile # Imagen Docker del servidor FastAPI
├── docker-compose.yml # Despliegue simplificado con Docker Compose
🧠 AI の使用モード
🧠 Claude Desktop
- Claude にサーバーをインストールします:
uv run mcp install server.py --name "CyberShield Agent"
- MCP サーバーを起動します:
uv run mcp dev server.py
- Claude は次のようなフレーズを使えるようになります:
- 「8.8.8.8 に ping を実行して」
- 「IP 192.168.1.50 をブロックして」
- 「隔離モードを有効にして」
- 「攻撃を受けていますか?」
🔗 LangChain + Ollama(自律エージェントモード)
- FastAPI サーバーを起動します:
uvicorn fastapi_mcp_server:app --port 4242
agent_langchain.pyを使って、次のようなツールを備えたエージェントを起動します:
IP を自動的にブロックシステム診断不審なプロセスを一覧表示
python agent_langchain.py
- エージェントは、LLM を使って防御ツール(ブロック、診断など)をいつ実行するか判断します。
🐳 Docker との統合
Dockerfile
プロジェクトに含まれています。あらゆる環境で実行できる FastAPI サーバーのイメージを作成します。
ビルドと実行:
docker build -t cybershield-api .
docker run -p 4242:4242 --name cybershield cybershield-api
または docker-compose を使用:
docker-compose up --build
これにより、次のことが可能になります:
- 再現性の確保
- 迅速なデプロイ
- 管理された環境
- 直接インストールせずに、MCP を Linux サーバーに持ち込める
🧪 MCP Inspector によるテスト
次を実行します:
uv run mcp dev server.py
Claude または LangChain とやり取りする際に、Web Inspector を開いてください。
次の内容を確認できます:
- 実行された関数
- 渡された引数
- 応答時間とエラー
💬 簡単な使用例(Claude または LangChain)
🛠 @tool: do_ping(host: str)
「8.8.8.8 に ping を実行して」
📦 @resource: firewall://rules
「ファイアウォールの有効なルールを表示して」
🧠 @prompt: suggest_block_action(threat_description)
「192.168.1.42 から不審な接続を検出しました。どうすればよいですか?」
🔗 FastAPI
🧰 CyberShield MCP でできること
✅ Windows システムの防御を自動化
✅ AI を通じて重要なコマンドを実行
✅ システムを強化し、攻撃対象領域を縮小
✅ AI エージェントや会話型モデルからの対応を調整
✅ より広範な統合に向けて、ツールを HTTP エンドポイントとして公開
✅ Docker を使って、あらゆる環境に簡単にデプロイ
頭脳を備えた防御を始めませんか?クローンして、Claude または LangChain エージェントに接続し、システムの防御を始めましょう!💥
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。
