系统信息监控服务

一个提供系统监控和进程管理工具的服务,允许AI代理安全访问CPU使用率、内存使用率、运行进程等信息,并进行受控的进程终止。

  • by Atara57769
  • Python
  • 本地部署
  • 4 星标
  • 更新于
在 GitHub 查看 Atara57769/MCP-system-info

使用说明

MCP服务器系统信息

一种模型上下文协议(MCP)服务器,它公开了系统监控和流程管理工具。

该项目为AI代理提供了对系统信息的安全访问,如CPU使用率、内存使用率、正在运行的进程和具有验证保护的受控进程终止。

🚀 特性

  • ✅ 检索系统信息(CPU、RAM、磁盘、网络、正常运行时间)

  • ✅ 列出正在运行的进程

  • ✅ 检测高资源使用率进程

  • ✅ 通过验证安全终止流程

  • ✅ MCP工具集成

  • ✅ 防止关键系统进程终止的安全检查

🧱 项目结构

system-info/
│
├── main.py                     # MCP server entry point
├── services/
│   └── system_info_service.py # System monitoring logic
├── models/
│   ├── system_info.py
│   └── process_info.py
├── validation.py              # Safety validation rules
├── tests.py                   # Unit tests
└── README.md

⚙️ 需求

Python 3.10+

psutil

MCP快速MCP

安装依赖项:

pip安装psutil

pip安装mcp

▶️ 运行MCP服务器

启动服务器:

python main.py

MCP服务器将启动并向兼容的MCP客户端公开注册的工具。

🧠 可用的MCP工具

system_info_tool

返回系统信息,包括:

操作系统详细信息

CPU 使用率

内存使用情况

磁盘使用情况

网络统计数据

运行时间

resource_usage_tool

检测消耗过多资源的进程,并仅返回那些可以安全终止的进程。

list_processs_tool

返回当前正在运行的进程列表。

terminate_process_tool

在验证和用户确认后安全终止进程。

参数:

pid--进程ID

已确认--必须为真才能执行终止

安全保护措施包括:

防止杀死系统关键进程

防止终止PID 0/1

防止自我终止

🔐 安全模型

在终止进程之前:

收集过程信息。

应用验证规则。

关键操作系统进程被阻止。

需要用户确认。

🧪 运行测试

运行单元测试:

python -m unittest utils.tests

测试使用模拟来避免与真实的系统进程交互。

🔌 将此MCP服务器添加到MCP客户端

示例配置(克劳德桌面/MCP兼容客户端):

{
  "mcpServers": {
    "system-info": {
      "command": "python",
      "args": ["PATH_TO_PROJECT/main.py"]
    }
  }
}

替换:

PATH_TO_项目

带有项目文件夹的绝对路径。

示例(Windows):

C: \用户\您的用户\桌面\系统信息\main.py 🧩 MCP集成如何工作

本项目使用:

mcp=FastMCP(“系统信息mcp服务器”)

每个工具都使用以下方式注册:

@mcp.tool()

当服务器运行时,MCP会自动将这些工具暴露给AI代理。

🛡️ 安全说明

未经身份验证,切勿公开此服务器。

进程终止受到限制,但仍然强大。

适用于本地开发或受控环境。

📄 许可证

MIT许可证