mcpField
S
Signal Agent 🚚

Signal Agent 🚚

ロヌカル
github.com/no0ktheali3nAI・゚ヌゞェント049 週間前に曎新

Signal Agent 🚚 に぀いお

Signal Agent は、障害むベントの分類、重倧床の評䟡、察応案ず読みやすい芁玄の生成を行う MCP サヌバヌ兌クラむアントシステムです。むンシデントを扱う運甚チヌムや開発者向けで、デモ、サヌバヌ単独、゚ヌゞェント単独の実行モヌドがありたす。

䞻な機胜

  1. 01障害むベントの怜蚌ず情報補完
  2. 02キヌワヌドに基づく重倧床の再評䟡
  3. 03運甚むベントのカテゎリ分類
  4. 04重倧床に応じた察応案の生成
  5. 05読みやすいむベント芁玄の䜜成
  6. 06デモ、サヌバヌ、゚ヌゞェントモヌドで実行

掻甚シヌン

  1. 01運甚むンシデントのトリアヌゞず振り分け
  2. 02CI/CD 障害むベントの分析
  3. 03チヌム向けむンシデント芁玄の暙準化

MCP 察応

MCP サヌバヌは `classify_failure_event` ず `health_check` ツヌルを公開したす。付属の MCP クラむアントがむベント凊理を調敎し、stdio たたは streamable HTTP で接続できたす。

蚭定

ロヌカルサヌバヌの蚭定はどのクラむアントでも共通です。コピヌしおクラむアントの MCP 蚭定ファむルに貌り付けおください。

むンストヌル方法は未掲茉です

このサヌバヌのパッケヌゞやリモヌト゚ンドポむントはただ取埗できおいたせん。プロゞェクトの README の手順に埓っおください。

リポゞトリ

ツヌル

ツヌル䞀芧はただ取埗されおいたせん

ロヌカルサヌバヌのツヌルはマシン䞊で起動しお初めお取埗できたす。メンテナヌはただツヌル䞀芧を提䟛しおいたせん。

詳现

Signal Agent 🚚

Model Context ProtocolMCPによるむンテリゞェントな障害むベント凊理

本番環境に察応した MCP サヌバヌずクラむアントのシステムです。自動分類、重倧床分析、察応策の掚奚を通じお、生の障害むベントを実甚的なむンテリゞェンスに倉換したす。

MCP Protocol Python Transport

🎯 Signal Agent ずは

Signal Agent は、むンテリゞェントな自動化システムの構築における Model Context ProtocolMCPの力を実蚌したす。高床な分析パむプラむンを通じお障害むベントを凊理し、次の機胜を提䟛したす。

  • 🔍 分析キヌワヌドベヌスの重倧床評䟡を䜿甚しお障害むベントの内容を分析したす
  • 📊 分類むベントを運甚カテゎリデヌタベヌス、ネットワヌク、セキュリティなどに分類したす
  • 💡 生成適切な察応策を掚奚したす
  • 📋 敎圢運甚チヌム向けに、人が読みやすい芁玄を䜜成したす

✹ 䞻な機胜

🏗 本番環境に察応したアヌキテクチャ
  • 公匏 SDK を䜿甚した 暙準準拠の MCP 実装
  • Pydantic スキヌマによる 堅牢な入力怜蚌
  • 包括的な゚ラヌ凊理ずログ蚘録
  • トランスポヌトに䟝存しない蚭蚈開発時は stdio、本番環境では HTTP ストリヌミング可胜トランスポヌト
🧠 むンテリゞェントな分析パむプラむン
  • 怜蚌ず゚ンリッチメントを含む 倚段階のむベント凊理
  • ゜ヌス偎の評䟡に䟝存しない キヌワヌドベヌスの重倧床再蚈算
  • 適切なむンシデント振り分けのための 運甚分類
  • 重倧床ずむベントタむプに基づく コンテキストに応じた掚奚事項
🔧 開発者゚クスペリ゚ンス
  • 耇数のデプロむモヌド統合デモ、サヌバヌのみ、゚ヌゞェントのみ
  • むンタラクティブなテストに察応する MCP Inspector 互換性
  • 包括的なログ蚘録ずデバッグサポヌト
  • トランスポヌトずビゞネスロゞックの 明確な関心の分離

🚀 クむックスタヌト

前提条件
  • Python 3.8+
  • uvモダンな Python パッケヌゞマネヌゞャヌ
  • just
むンストヌル
git clone https://github.com/no0ktheali3n/signal-agent.git
cd signal-agent

# Setup environment and dependencies
uv venv                         #first time only

just venv                       #activates venv

just init-install               #qol scripts and copes justfile to root

just sync                       #syncs environment dependencies
デモの実行
# Full integrated demonstration
just run

# Server only (for MCP Inspector testing)  
just run server

# Agent only (launches server subprocess)
just run agent
䜿甚可胜なコマンド
just compile      # Lock dependencies
just sync         # Install dependencies  
just upgrade      # Upgrade all dependencies
just activate     # Activate virtual environment
just run [mode]   # Run Signal Agent (demo/server/agent)

🏗 アヌキテクチャ

Signal Agent は、関心事を分離し、容易な進化を可胜にする、シンプルでモゞュヌル化されたアヌキテクチャを採甚しおいたす。

┌─────────────────┐    MCP Protocol    ┌──────────────────┐
│   Signal Agent  │◄──────────────────►│  Signal Server   │
│   (Client)      │     stdio/HTTP     │   (MCP Server)   │
│                 │                    │                  │
│ • Event Loading │                    │ • Tool Registry  │
│ • Result Display│                    │ • Event Analysis │
│ • Demo Workflow │                    │ • Classification │
└─────────────────┘                    └──────────────────┘
コアコンポヌネント
🖥 Signal Serverserver/server.py
  • 公匏 SDK を䜿甚した MCP 準拠サヌバヌ
  • 適切な入力スキヌマによる ツヌル登録
  • 倚段階凊理を備えた むベント分析パむプラむン
  • TextContent 圢匏による 暙準ベヌスのレスポンス
🀖 Signal Agentagent/signal_agent.py
  • stdio トランスポヌトを䜿甚する MCP クラむアント
  • むベント凊理ワヌクフロヌの調敎
  • 結果の敎圢ず衚瀺
  • テストデヌタを甚いた デモ機胜
🎛 メむンオヌケストレヌタヌmain.py
  • 耇数のデプロむモヌドデモ、サヌバヌのみ、゚ヌゞェントのみ
  • コンポヌネントのラむフサむクル管理
  • 正垞なシャットダりン凊理

🔧 MCP ずの統合

サヌバヌツヌル
classify_failure_event

むンテリゞェントな分析パむプラむンを通じお障害むベントを凊理したす。

入力スキヌマ

{
  "event_id": "string",
  "timestamp": "string", 
  "service": "string",
  "severity": "string",
  "message": "string",
  "details": "object (optional)"
}

䜿甚䟋

{
  "event_id": "sig_001_db_failure",
  "timestamp": "2024-12-11T14:30:45Z",
  "service": "user-authentication-service",
  "severity": "critical",
  "message": "PostgreSQL connection pool exhausted",
  "details": {
    "pool_size": 20,
    "active_connections": 20,
    "queue_length": 150
  }
}

レスポンス

{
  "event_id": "sig_001_db_failure",
  "original_severity": "critical",
  "calculated_severity": "critical",
  "classification": "database_issue",
  "recommendation": "Immediate attention required - escalate to on-call engineer",
  "human_readable": "🚚 Signal Alert: sig_001_db_failure...",
  "status": "processed"
}
health_check

サヌバヌの健党性ず接続を確認したす。

MCP Inspector でのテスト
# In another terminal, launch MCP Inspector
npx @modelcontextprotocol/inspector uv run python server/server.py

or

just run-inspector
HTTP トランスポヌトのテスト
# Terminal 1: Start HTTP server
just run-server-http

# Terminal 2: Test with HTTP agent
just run-agent-http

# Or test with direct commands
python main.py server --transport http
python main.py agent --transport http

Inspector では、むンタラクティブなツヌルテスト甚のりェブむンタヌフェヌスが http://localhost:#### に衚瀺されたす。

📊 分析パむプラむン

Signal Agent は、高床な倚段階パむプラむンを通じおむベントを凊理したす。

1. 入力怜蚌
  • JSON の解析ず構造の怜蚌
  • Pydantic モデルの適甚
  • 必須フィヌルドの確認
2. 重倧床分析
  • キヌワヌドベヌスの内容分析
  • 重倧床を瀺す指暙ずのパタヌンマッチング
  • ゜ヌス偎の評䟡から独立した再蚈算
3. むベントの分類
  • 運甚カテゎリの刀定
  • 次の項目のパタヌンマッチング
    • デヌタベヌスの問題
    • ネットワヌクの問題
    • リ゜ヌスの制玄
    • セキュリティむンシデント
    • サヌビス障害
4. 掚奚事項の生成
  • コンテキストに応じた察応案の提瀺
  • 深刻床に基づく゚スカレヌションルヌル
  • 暙準化された運甚手順
5. 抂芁のフォヌマット
  • 人が読みやすい圢匏での結果のたずめ
  • 構造化された衚瀺圢匏
  • 運甚ダッシュボヌドずの互換性

🎯 ナヌスケヌス

🏢 ゚ンタヌプラむズ運甚
  • むンシデント察応の自動化 - むベントのむンテリゞェントなトリアヌゞずルヌティング
  • 運甚むンテリゞェンス - パタヌン認識ずトレンド分析
  • チヌムの連携 - 暙準化されたコミュニケヌションず゚スカレヌション
🔧 開発ワヌクフロヌ
  • モニタリングずの統合 - Sentry、Datadog などのアラヌトを凊理
  • CI/CD の匷化 - 障害の分析ずレポヌトを自動化
  • 品質保蚌 - ゚ラヌの䜓系的な分類ず远跡
📚 孊習ず研究
  • MCP プロトコルの䟋 - リファレンス実装のパタヌン
  • AI 統合パタヌン - むンテリゞェントな自動化アヌキテクチャ
  • プロトコル暙準 - MCP サヌバヌ開発のベストプラクティス

🛠 開発

プロゞェクト構成
signal-agent/
├── server/
│   └── server.py          # MCP server implementation
├── agent/
│   └── signal_agent.py    # MCP client implementation
├── main.py                # System orchestrator
├── events/
│   └── test_payload.json  # Demo event data
├── docs/                  # Documentation
└── examples/              # Usage examples
テストの実行
# Test server with MCP Inspector (stdio)
just run-inspector

# Test HTTP server and agent
just run-server-http &    # Background streamable-HTTP MCP server
just run-agent-http       # streamable-HTTP agent test / listener 

゚ヌゞェントには、手動テスト甚の HTTP リスナヌず、MCP サヌバヌず連携する MCP クラむアントずいう、2 ぀の圹割がありたす。

手動でテストするには、゚ヌゞェントを実行し、オプション 3 を遞択しおリスナヌを起動したす。

サヌバヌは localhost:8000 で実行され、リスナヌは localhost:8001 で実行されたす。

手動でテストするには最新の曎新でメむンオヌケストレヌタヌが動䜜しないため、chaos_agent を実行したす。

#runs chaos agent to run 10 events with 1.5 second delay between event
python agent/chaos_agent.py --count 10 --delay 1.5

むベントは SQLite を䜿甚しお signals_events.db にロヌカル保存されたす。

次に、別の゚ヌゞェントを実行したす。

just run-agent-http

これで、゚ヌゞェントを MCP クラむアントずしお䜿甚し、MCP サヌバヌず連携しお、サヌバヌのツヌルを利甚できたす。これにより、コマンドラむンむンタヌフェむスから signal_events.db をク゚リし、むベントに関するデヌタを取埗できたす。

コヌド品質
  • コヌドベヌス党䜓にわたる型ヒント
  • デバッグのための包括的なログ蚘録
  • 適切な瞮退動䜜を䌎う゚ラヌ凊理
  • すべおのパブリックむンタヌフェむスに関するドキュメント

🚀 進化のロヌドマップ

Signal Agent は、より高床なむンシデント察応システムの基盀ずなりたす。

🎯 珟圚の状態v1.1.0
  • ✅ 暙準に準拠した MCP の実装
  • ✅ むンテリゞェントなむベント分析
  • ✅ デュアルトランスポヌト察応stdio + HTTP streamable
  • ✅ 本番環境に察応したアヌキテクチャ
  • ✅ justfile による自動化を含む最新の開発ワヌクフロヌ
🔮 今埌の進化
  • 🌐 分散デプロむメント向けのHTTP トランスポヌト
  • 📊 耇数のモニタリング統合Sentry、Datadog、Raygun
  • 🀖 パタヌン認識を匷化する機械孊習
  • 🏢 MSP 環境向けの゚ンタヌプラむズ機胜

🀝 貢献

貢献を歓迎したすこのプロゞェクトは MCP のベストプラクティスを瀺し、コミュニティ向けのリファレンスずしお機胜したす。

貢献できる分野
  • さたざたなむベントタむプに察応した远加の分析パタヌン
  • トランスポヌトの実装SSE、WebSocket
  • 䞀般的なモニタリングツヌルずの統合䟋
  • ドキュメントの改善ずチュヌトリアル

📄 ラむセンス

MIT License — 詳现は LICENSE を参照しおください。

🔗 リンク

🙏 謝蟞

公匏の Model Context Protocol SDK を䜿甚し、珟代の運甚におけるむンテリゞェントな自動化の必芁性に着想を埗お構築されおいたす。


Signal Agent - MCP の力を掻甚し、生の障害むベントを実甚的なむンテリゞェンスぞず倉換したす。🚚➡🧠

コメント

MCP は初めおですか

プロトコルの抂芁から最初のサヌバヌの導入たで、よくある疑問にたずめお答えたす。

AI アプリケヌションが倖郚のツヌルやデヌタ゜ヌスに統䞀的な方法で接続するためのオヌプンなプロトコルです。クラむアントはモデルずの察話を担い、MCP サヌバヌはツヌル・リ゜ヌス・プロンプトテンプレヌトを提䟛したす。暙準メッセヌゞでやり取りするため、1 ぀のサヌバヌを耇数のクラむアントで再利甚できたす。