mcpField
S
sysmcp

sysmcp

ローカル
github.com/arunmm8335クラウド・インフラ015 週間前に更新

sysmcp について

sysmcp は、Cursor や Claude などのクライアントに Linux ホストのリアルタイム指標を提供する MCP サーバーです。root 権限なしで /proc から基本情報を取得し、必要な権限がある場合は eBPF の活動・トラフィック情報も利用できます。

主な機能

  1. 01CPU とメモリのリアルタイム統計
  2. 02プロセスとネットワーク接続の確認
  3. 03インターフェースと cgroup のレート
  4. 04オプションの eBPF 活動・トラフィック情報
  5. 05ブラウザダッシュボードと JSON API

活用シーン

  1. 01Linux システムの負荷を調査
  2. 02ネットワーク接続に関連するプロセスを特定
  3. 03インターフェースのトラフィックレートを監視
  4. 04ブラウザダッシュボードでホスト指標を確認

MCP 対応

システムスナップショット、プロセス一覧、ネットワーク接続、オプションの eBPF データなど、Linux ホストの指標と調査ツールを MCP クライアントに提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ
パッケージ
mcpbsysmcp_0.5.0_linux_amd64.mcpb
mcpbsysmcp_0.5.0_linux_arm64.mcpb

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

sysmcp

ホストのリアルタイムなシグナル(CPU、メモリ、プロセス、ネットワーク)を Cursor / Claude に公開する MCP サーバーです。デフォルトでは /proc を使用し、root 権限は不要です。CAP_BPF / CAP_PERFMON を利用できる場合は、オプションの eBPF ツールが有効になります。

リポジトリ: https://github.com/arunmm8335/sysmcp · バージョン: 0.5.0

ツール

ツール返される情報
host_dashboardスナップショット全体(CPU、メモリ、上位プロセス、リスナー、eBPF)
poll_host_stats自動更新用の軽量な CPU/メモリ/プロセスのスナップショット
system_statsCPU 使用率、メモリ使用率、ロードアベレージ、NIC の受信/送信 B/s
top_processesサンプル期間内の CPU 使用率による上位 PID と skipped_count
network_connectionsIPv4+IPv6 の TCP/UDP。フィルターと resolve_pid に対応。行数制限(デフォルト 200)
cgroup_cpuCPU 使用率による上位 cgroup(cgroup v2 の cpu.stat)
iface_ratesインターフェースごとのバイト/パケットレート(/proc/net/dev)
ebpf_statuseBPF が機能するかどうか。機能しない場合は how_to_enable を含みます
ebpf_activityeBPF による fork + sched_switch レート。利用できない場合は available: false
ebpf_trafficカーネルの RX/TX パケットレート(netif_receive_skb / net_dev_xmit)

接続ごとの正確なバイトカウンターには、ソケットレベルの eBPF が必要です。現時点では、より詳細なネットワークシグナルを得る実用的な方法として iface_rates と ebpf_traffic を利用できます。

ブラウザーダッシュボード(HTTP)

go build -o sysmcp ./cmd/sysmcp
./sysmcp serve
# open http://127.0.0.1:8787/

オプション:./sysmcp serve -addr 127.0.0.1:9000

API:/api/dashboard、/api/poll(JSON)。

Cursor のインタラクティブビュー

「ホストダッシュボードを開いて」/*「ホストダッシュボードを更新して」*と依頼します。エージェントが host_dashboard を呼び出し、チャットの横に Cursor Canvas を開きます。

MCP Apps リソース ui://sysmcp/dashboard は、Apps の iframe を表示するホスト向けに引き続き利用できます。Cursor では通常、代わりに Canvas + JSON が使用されます。

network_connections のフィルター
引数効果
listen_onlyTCP の LISTEN + バインドされていない UDP
protocoltcp / udp
familyipv4 / ipv6
state例:ESTABLISHED、LISTEN
local_portローカルポートで絞り込み
pid所有者の PID(resolve_pid を暗黙的に指定)
limit最大行数(デフォルト 200、最大 1000)。結果に truncated が含まれます

インストール

リリースバイナリ(linux amd64 / arm64)は、各 v* タグで公開されます。

https://github.com/arunmm8335/sysmcp/releases

# example amd64
curl -fsSL -o sysmcp.tgz \
  https://github.com/arunmm8335/sysmcp/releases/download/v0.5.0/sysmcp_0.5.0_linux_amd64.tar.gz
tar -xzf sysmcp.tgz

またはソースから:

go install github.com/arunmm8335/sysmcp/cmd/sysmcp@latest
# or
git clone https://github.com/arunmm8335/sysmcp.git
cd sysmcp
go build -o sysmcp ./cmd/sysmcp
MCP Registry(ワンクリック)

名前空間:io.github.arunmm8335/sysmcp。タグ付きリリースでは .mcpb アセットがビルドされ、mcp-publisher を介した OIDC 公開が試行されます。リリース後に手動で公開するには(OIDC が設定されていない場合に推奨):

# fill fileSha256 in server.json from the release *.mcpb.sha256 files, then:
curl -fsSL -o mcp-publisher.tgz \
  https://github.com/modelcontextprotocol/registry/releases/download/v1.8.0/mcp-publisher_linux_amd64.tar.gz
tar -xzf mcp-publisher.tgz mcp-publisher
./mcp-publisher login github
./mcp-publisher publish ./server.json

https://modelcontextprotocol.io/registry/quickstart を参照してください。

Cursor / Claude MCP の設定

{
  "mcpServers": {
    "sysmcp": {
      "command": "/absolute/path/to/sysmcp"
    }
  }
}

eBPF を有効にする(オプション)

go build -o sysmcp ./cmd/sysmcp
./scripts/grant-caps.sh ./sysmcp
# sets: cap_bpf,cap_perfmon+ep

cap を付与した後、MCP サーバーを再起動してください。cap がない場合、eBPF ツールは available: false を返します。/proc ツールは引き続き動作します。

デモ

go test ./... -count=1
go build -o sysmcp ./cmd/sysmcp
go run ./scripts/smoke.go ./sysmcp
./sysmcp serve   # then open http://127.0.0.1:8787/

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。