sysmcp

io.github.arunmm8335由 GitHub 账号 arunmm8335 发布v0.5.0更新于 Oct 24, 2026

Live Linux host signal (CPU, memory, processes, network, optional eBPF) for MCP clients.

概览

AI 生成的概览

一个本地 MCP 服务器,向 Cursor、Claude 等 AI 助手提供 Linux 主机的实时信号:CPU、内存、进程和网络。

可以做什么
读取 CPU、内存、负载均值和各网卡网络速率,可轮询轻量快照用于自动刷新,或获取包含热门进程和监听端口的完整主机仪表盘快照。按采样窗口内的 CPU 占用列出热门进程,并按 CPU 占用列出热门 cgroup。查看 IPv4 与 IPv6 的 TCP/UDP 连接,支持仅监听、协议、地址族、状态、本地端口、所属 PID 和行数上限等过滤。在授予相应能力后,可选报告 eBPF 状态、fork 与调度活动以及内核数据包速率。
适用场景
适合让助手诊断或监控其所在的 Linux 机器:查看负载、找出占用 CPU 高的进程、确认哪些端口在监听,或在调试时观察网络吞吐。
运行要求
作为本地进程运行于 Linux(amd64 或 arm64),可通过发布二进制安装、用 Go 从源码构建,或在 MCP 客户端配置中以绝对路径指定。默认数据来自 /proc,无需 root。可选的 eBPF 工具需要为二进制授予 CAP_BPF 和 CAP_PERFMON,并重启服务。
安装前请注意
服务器会读取进程列表、网络连接等实时主机数据,可能包含运行服务的敏感信息,请留意助手宿主后续如何转发这些数据。授予 CAP_BPF 和 CAP_PERFMON 会让该二进制获得内核级监控的高权限,仅在信任该构建时授予。它只做只读监控,不修改主机状态。

安装

在 SourceWeft 中

  1. 打开 控制台中的 sysmcp,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

sysmcp

MCP server that exposes live host signal — CPU, memory, processes, network — to Cursor / Claude. Default path is /proc (no root). Optional eBPF tools activate when CAP_BPF / CAP_PERFMON is available.

Repo: https://github.com/arunmm8335/sysmcp · Version: 0.5.0

Tools

ToolWhat it returns
host_dashboardFull snapshot (CPU, mem, top procs, listeners, eBPF)
poll_host_statsLightweight CPU/mem/process snapshot for auto-refresh
system_statsCPU %, memory %, load averages, NIC rx/tx B/s
top_processesTop PIDs by CPU % over a sample window, plus skipped_count
network_connectionsIPv4+IPv6 TCP/UDP; filters + resolve_pid; row limit (default 200)
cgroup_cpuTop cgroups by CPU % (cgroup v2 cpu.stat)
iface_ratesPer-interface byte/packet rates (/proc/net/dev)
ebpf_statusWhether eBPF works; includes how_to_enable when not
ebpf_activityFork + sched_switch rates via eBPF, or available: false
ebpf_trafficKernel RX/TX packet rates (netif_receive_skb / net_dev_xmit)

True per-connection byte counters need sock-level eBPF; iface_rates + ebpf_traffic are the practical deeper network signal today.

Browser dashboard (HTTP)

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

Optional: ./sysmcp serve -addr 127.0.0.1:9000

APIs: /api/dashboard, /api/poll (JSON).

Interactive views in Cursor

Ask “Open the host dashboard” / “Refresh the host dashboard”. The agent calls host_dashboard and opens a Cursor Canvas beside the chat.

MCP Apps resource ui://sysmcp/dashboard remains for hosts that render Apps iframes. Cursor often uses Canvas + JSON instead.

network_connections filters

ArgEffect
listen_onlyTCP LISTEN + unbound UDP
protocoltcp / udp
familyipv4 / ipv6
statee.g. ESTABLISHED, LISTEN
local_portfilter by local port
pidowning PID (implies resolve_pid)
limitmax rows (default 200, max 1000); truncated in result

Install

Release binaries (linux amd64 / arm64) ship on each v* tag:

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

bash
# example amd64curl -fsSL -o sysmcp.tgz \  https://github.com/arunmm8335/sysmcp/releases/download/v0.5.0/sysmcp_0.5.0_linux_amd64.tar.gztar -xzf sysmcp.tgz

Or from source:

bash
go install github.com/arunmm8335/sysmcp/cmd/sysmcp@latest# orgit clone https://github.com/arunmm8335/sysmcp.gitcd sysmcpgo build -o sysmcp ./cmd/sysmcp

MCP Registry (one-click)

Namespace: io.github.arunmm8335/sysmcp. Tag releases build .mcpb assets and attempt an OIDC publish via mcp-publisher. To publish manually after a release (recommended if OIDC is not set up):

bash
# 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.gztar -xzf mcp-publisher.tgz mcp-publisher./mcp-publisher login github./mcp-publisher publish ./server.json

See https://modelcontextprotocol.io/registry/quickstart

Cursor / Claude MCP config

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

Enable eBPF (optional)

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

Restart the MCP server after granting caps. Without caps, eBPF tools return available: false — /proc tools still work.

Demo

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

License

MIT

来源:README.md,提交 8868a43

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.5.0最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分