divlens について
DivLens MCPは、AIエージェントにローカルシステムの診断情報を構造化してリアルタイムに提供するRust製サーバーです。性能、ストレージ、ハードウェア、ネットワーク、プロセス、開発ランタイム、ログを扱い、ローカルのセマンティックメモリーも任意で有効にできます。
主な機能
- 01CPU・メモリー・プロセスのリアルタイム指標
- 02ストレージの一覧とヘルス診断
- 03ハードウェアとネットワークの診断
- 04開発ランタイムとドライバーの情報
- 05システムログの分析
- 06任意のセマンティックメモリー検索
活用シーン
- 01CPUやメモリーの高使用率の調査
- 02ディスク容量と状態の確認
- 03ネットワークとハードウェア状態の確認
- 04関連するシステムエラーの検索
- 05任意のメモリーによる過去の診断の参照
MCP 対応
stdio MCPサーバーは、ローカルシステムデータを返す17種類の診断ツールをMCPクライアントに公開します。LLM推論は行わず、データはマシン内に保持されます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
DivLens MCP
AI エージェントのためのリアルタイムなシステム情報。
CPU、RAM、ディスク、ネットワーク、プロセス、ハードウェアの状態などを、Claude、Cursor、Windsurf から確認できます。
DivLens MCP とは?
DivLens MCP は、Rust で記述された高性能な Model Context Protocol (MCP) サーバーです。
AI アシスタントとお使いのマシンをつなぎ、Claude、Cursor、Windsurf、その他あらゆる MCP 対応エージェントに、ハードウェアセンサー、ストレージ指標、ネットワーク診断、プロセスツリー、開発用ランタイム、システムログなどへのリアルタイムかつ構造化されたアクセスを提供します。
クラウド不要。API キー不要。設定不要。ビルドして実行するだけです。
"Why is my Mac slow?" → Claude calls get_live_metrics() → Instant answer.
"Is my SSD healthy?" → Claude calls get_hardware_diagnostics() → SMART data returned.
"What's eating disk?" → Claude calls get_advanced_storage_stats() → Largest files listed.
✦ 17 個の診断ツール
| カテゴリ | ツール | 取得できる情報 |
|---|---|---|
| ⚡ パフォーマンス | get_live_metrics | CPU 使用率、RAM、スワップ、ブロック中のプロセス、稼働時間 |
| ⚡ パフォーマンス | get_process_list | CPU/RAM 使用率の高いプロセスと PID |
| 💾 ストレージ | get_storage_health | マウントポイントごとの空き容量/使用容量/総容量 |
| 💾 ストレージ | scan_storage_inventory | ファイルサイズを含む、ファイルタイプの全件一覧 |
| 💾 ストレージ | get_file_type_summary | 拡張子ごとのファイル数とサイズ |
| 💾 ストレージ | get_specific_file_type | 指定した拡張子に一致するすべてのファイル |
| 💾 ストレージ | get_advanced_storage_stats | サイズの大きいファイル上位 50 件+古いデータの分析 |
| 💾 ストレージ | get_storage_diagnostics | IOPS、読み取り/書き込みレイテンシ、SMART の状態 |
| 🖥️ ハードウェア | get_hardware_diagnostics | CPU/GPU の仕様、バッテリー残量、温度、SMART |
| 🌐 ネットワーク | get_network_diagnostics | スループット、アクティブな接続、電波強度 |
| 🌐 ネットワーク | get_network_config | アダプターごとの IP、DNS、インターフェース設定 |
| 🔬 システム情報 | get_system_dna | OS、ホスト名、稼働時間、マシンのフィンガープリント |
| 🛠️ 開発環境 | get_dev_stack | Node、Python、Rust、Go、Java のランタイム+パッケージ |
| 🛠️ 開発環境 | get_drivers | カーネルモジュールとデバイスドライバー |
| 📂 ユーティリティ | scan_directory | ファイルサイズを含む、ディレクトリの再帰的な一覧 |
| 🧠 メモリ | recall_memory | 過去の AI 診断を対象とした意味検索 |
| 📋 ログ | get_system_logs | パターン別に分類した、最近の OS/カーネルエラー |
🚀 インストール — あらゆるプラットフォームで、1 つのコマンド
Rust は不要です。コンパイルも不要です。設定を手動で編集する必要もありません。 インストーラーがビルド済みバイナリをダウンロードし、AI クライアントを自動的に設定します。
macOS と Linux
curl -fsSL https://raw.githubusercontent.com/Lohithry/divlens-mcp/main/install.sh | bash
Windows(PowerShell — 管理者権限は不要です)
irm https://raw.githubusercontent.com/Lohithry/divlens-mcp/main/install.ps1 | iex
インストーラーは次の処理を行います:
- ✅ OS とチップ(Apple Silicon / Intel / Linux / Windows)を検出します
- ✅ GitHub Releases から適切なビルド済みバイナリをダウンロードします
- ✅ SHA-256 チェックサムを検証します
- ✅ 管理者権限なしで PATH にインストールします
- ✅ Claude Desktop、Cursor、Windsurf、Antigravity を自動設定します
- ✅ 完了前にサーバーが動作することをテストします
あとは AI クライアントを再起動して、「今、CPU を使っているのは何ですか?」と尋ねるだけです。
ソースからビルドする(上級者向け)
Rust 1.82 以降が必要です。
git clone https://github.com/Lohithry/divlens-mcp.git
cd divlens-mcp/apps/core
cargo build --release
./target/release/divlens-core --mcp
AI に接続する
Claude Desktop
設定ファイル:
~/Library/Application Support/Claude/claude_desktop_config.json(macOS)
または%APPDATA%\Claude\claude_desktop_config.json(Windows)
{
"mcpServers": {
"divlens": {
"command": "/usr/local/bin/divlens-core",
"args": ["--mcp"]
}
}
}
Claude Desktop を終了して、再起動してください。🔌 プラグアイコンが表示されれば接続されています。
Cursor
設定ファイル:
~/.cursor/mcp.json
{
"mcpServers": {
"divlens": {
"command": "/usr/local/bin/divlens-core",
"args": ["--mcp"]
}
}
}
Cmd+Shift+P → ウィンドウを再読み込み
Windsurf
設定ファイル:
~/.codeium/windsurf/mcp_config.json
{
"mcpServers": {
"divlens": {
"command": "/usr/local/bin/divlens-core",
"args": ["--mcp"]
}
}
}
セットアップの詳細については、DEPLOYMENT.md を参照してください。
仕組み
┌─────────────────────────────────────────┐
│ AI Client (Claude / Cursor / etc.) │
│ LLM reasoning lives here │
└──────────────────┬──────────────────────┘
│ JSON-RPC 2.0 (stdio)
▼
┌─────────────────────────────────────────┐
│ divlens-core (Rust) │
│ │
│ ┌───────────────┐ ┌───────────────┐ │
│ │ MCP Layer │ │ 17 Tools │ │
│ │ (JSON-RPC) │ │ (Rust + OS) │ │
│ └───────────────┘ └───────────────┘ │
│ ┌───────────────┐ ┌───────────────┐ │
│ │ SQLite Cache │ │ Native APIs │ │
│ │ (sysinfo/OS) │ │ (IOKit/WMI) │ │
│ └───────────────┘ └───────────────┘ │
└─────────────────────────────────────────┘
Zero cloud. Zero API keys. 100% local.
トランスポート: すべての MCP メッセージは、stdio を介した改行区切りの JSON-RPC 2.0 オブジェクトです。
AI ロジック: DivLens は LLM 推論を実行せず、システムの生データを収集して返すだけです。
プライバシー: すべてのデータはお使いのマシン上にとどまります。外部に送信されることはありません。
プロジェクト構成
divlens-mcp/
└── apps/
└── core/ # Rust MCP engine
├── src/
│ ├── tools/ # 17 tool implementations
│ ├── mcp/ # JSON-RPC 2.0 protocol handler
│ ├── mcp_server.rs # stdio transport loop
│ ├── collectors/ # Native OS data collectors
│ │ ├── volatile/ # CPU, RAM, network (live)
│ │ ├── persistent/ # Storage, hardware (cached)
│ │ └── ondemand/ # Drivers, logs, packages
│ ├── modules/ # Core business logic
│ ├── db/ # SQLite caching layer
│ ├── models/ # Shared data types
│ └── utils/ # Shell env rehydration
├── Cargo.toml
└── env.example
オプション:セマンティックメモリ
vector-memory 機能を有効にすると、ローカルの ONNX 埋め込みモデルを使って recall_memory で真のセマンティック検索を行えます(クラウド不要、API キー不要)。
cargo build --release --features vector-memory
有効にすると、DivLens はローカルの LanceDB ベクトルストアを作成し、fastembed を使って過去の診断を意味的に埋め込み、検索します。
無効の場合(デフォルト)、recall_memory は空のリストを返します。機能に支障はありません。
サーバーを検証する
クライアントを使わずに MCP ワイヤプロトコルをテストします。
# Initialize handshake
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","clientInfo":{"name":"test","version":"0.1"}}}' \
| divlens-core --mcp
# Call a tool directly
echo '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"get_live_metrics","arguments":{}}}' \
| divlens-core --mcp
ライセンス
Apache License, Version 2.0 の下でライセンスされています。
全文については LICENSE を参照してください。
Copyright © 2024 DivLens Contributors.
![]()
Rust で構築 · クラウドゼロ · AI ネイティブな診断
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。