MCP Linux Common Utility Server

MCP Linux Common Utility Server

guolisen

研究与数据
访问服务器

README

MCP Linux 通用工具服务器

Model Context Protocol (MCP) Linux 通用工具 (LCU) 服务器是一个基于 Python 的服务器,它通过 Model Context Protocol 提供对各种 Linux 系统操作和信息的访问。

功能特性

  • CPU 操作: CPU 信息、使用率、负载平均值等。
  • 内存操作: 内存和交换空间信息、使用统计。
  • 进程/线程操作: 进程列表、信息和管理。
  • 存储操作: 磁盘、卷和分区信息。
  • 文件系统操作: 文件创建、删除、更新和信息。
  • 硬件操作: 硬件检测和信息。
  • 网络操作: 接口信息、连接性测试和数据传输。
  • 监控操作: 系统状态监控和健康检查。

安装

前提条件

  • Python 3.10 或更高版本
  • Linux 操作系统

安装步骤

  1. 克隆仓库:

    git clone https://github.com/yourusername/mcp_lcu_server.git
    cd mcp_lcu_server
    
  2. 安装包:

    pip install -e .
    

配置

服务器可以使用 YAML 配置文件进行配置。 默认情况下,它会在以下位置查找配置文件:

  • ./config.yaml
  • ./config/config.yaml
  • /etc/mcp-lcu-server/config.yaml
  • ~/.config/mcp-lcu-server/config.yaml

您还可以使用 --config 命令行选项指定自定义配置文件路径。

配置文件示例

server:
  name: mcp-lcu-server
  transport: both  # stdio, sse, 或 both
  port: 8000
  host: 127.0.0.1

monitoring:
  enabled: true
  interval: 30  # 秒
  metrics:
    - cpu
    - memory
    - disk
    - network

filesystem:
  allowed_paths:
    - /
  max_file_size: 10485760  # 10MB

network:
  allow_downloads: true
  allow_uploads: true
  max_download_size: 104857600  # 100MB
  max_upload_size: 10485760  # 10MB
  allowed_domains:
    - "*"  # 允许所有域名

process:
  allow_kill: false
  allowed_users: []

使用

启动服务器

您可以使用命令行界面启动服务器:

mcp-lcu-server [OPTIONS]

可用选项:

  • --config, -c: 配置文件的路径
  • --transport, -t: 传输类型 (stdio, sse, 或 both)
  • --port, -p: SSE 传输的端口
  • --host, -h: SSE 传输的主机
  • --debug, -d: 启用调试日志

传输类型

服务器支持以下传输类型:

  • stdio: 标准输入/输出传输
  • sse: 服务器发送事件传输

示例

使用 stdio 传输启动服务器:

mcp-lcu-server --transport stdio

使用 SSE 传输在端口 8000 上启动服务器:

mcp-lcu-server --transport sse --port 8000

使用两种传输方式启动服务器:

mcp-lcu-server --transport both

API 文档

工具

服务器提供各种用于与 Linux 系统交互的工具:

CPU 工具

  • get_cpu_info: 获取详细的 CPU 信息
  • get_cpu_usage: 获取 CPU 使用百分比
  • get_load_average: 获取系统负载平均值
  • analyze_cpu_performance: 分析 CPU 性能

内存工具

  • get_memory_info: 获取详细的内存信息
  • get_memory_usage: 获取内存使用情况
  • get_swap_info: 获取交换空间信息
  • analyze_memory_performance: 分析内存性能

进程工具

  • list_processes: 列出所有进程
  • get_process_info: 获取有关进程的详细信息
  • search_processes: 搜索进程
  • analyze_top_processes: 按 CPU 和内存使用情况分析顶部进程

存储工具

  • list_disks: 列出物理磁盘
  • list_partitions: 列出磁盘分区
  • get_disk_usage: 获取磁盘使用情况
  • analyze_storage_usage: 分析存储使用情况

文件系统工具

  • list_directory: 列出目录的内容
  • read_file: 读取文件内容
  • write_file: 将内容写入文件
  • delete_file: 删除文件或目录
  • copy_file: 复制文件或目录
  • move_file: 移动文件或目录
  • search_files: 搜索与模式匹配的文件
  • search_file_contents: 搜索包含模式的文件

硬件工具

  • get_system_info: 获取常规系统信息
  • get_cpu_info: 获取 CPU 信息
  • get_memory_info: 获取内存信息
  • get_storage_info: 获取存储信息
  • get_pci_devices: 获取 PCI 设备信息
  • get_usb_devices: 获取 USB 设备信息
  • analyze_hardware: 分析硬件配置

网络工具

  • get_network_interfaces: 获取网络接口信息
  • get_network_connections: 获取网络连接
  • get_network_stats: 获取网络统计信息
  • ping_host: Ping 主机
  • traceroute_host: 跟踪到主机的路由
  • http_get_request: 执行 HTTP GET 请求
  • download_file_from_url: 从 URL 下载文件
  • upload_file_to_url: 将文件上传到 URL
  • analyze_network: 分析网络配置和连接性

监控工具

  • get_system_status: 获取系统状态
  • check_system_health: 检查系统健康状况
  • monitor_resources: 监控资源使用情况
  • get_system_uptime: 获取系统运行时间
  • get_system_load: 获取系统负载
  • analyze_system_performance: 分析系统性能

资源

服务器还提供可以通过 MCP 访问的各种资源:

系统资源

  • linux://system/info: 系统信息
  • linux://system/cpu: CPU 信息
  • linux://system/memory: 内存信息
  • linux://system/uptime: 系统运行时间

监控资源

  • linux://monitoring/status: 系统状态
  • linux://monitoring/health: 系统健康状况
  • linux://monitoring/resources: 资源使用情况

文件系统资源

  • linux://fs/dir/{path}: 目录列表
  • linux://fs/info/{path}: 文件信息
  • linux://fs/file/{path}: 文件内容
  • linux://fs/usage/{path}: 目录使用情况分析

网络资源

  • linux://network/interfaces: 网络接口
  • linux://network/connections: 网络连接
  • linux://network/stats: 网络统计信息
  • linux://network/ping/{host}: Ping 主机
  • linux://network/traceroute/{host}: 跟踪到主机的路由
  • linux://network/analysis: 网络分析

安全注意事项

服务器提供对各种系统操作的访问,如果滥用,可能会非常危险。 确保:

  • 配置文件系统操作的允许路径
  • 配置网络操作的允许域名
  • 限制终止进程的能力
  • 使用适当的权限运行服务器

许可证

该项目已获得 MIT 许可证的许可 - 有关详细信息,请参阅 LICENSE 文件。

推荐服务器

Crypto Price & Market Analysis MCP Server

Crypto Price & Market Analysis MCP Server

一个模型上下文协议 (MCP) 服务器,它使用 CoinCap API 提供全面的加密货币分析。该服务器通过一个易于使用的界面提供实时价格数据、市场分析和历史趋势。 (Alternative, slightly more formal and technical translation): 一个模型上下文协议 (MCP) 服务器,利用 CoinCap API 提供全面的加密货币分析服务。该服务器通过用户友好的界面,提供实时价格数据、市场分析以及历史趋势数据。

精选
TypeScript
MCP PubMed Search

MCP PubMed Search

用于搜索 PubMed 的服务器(PubMed 是一个免费的在线数据库,用户可以在其中搜索生物医学和生命科学文献)。 我是在 MCP 发布当天创建的,但当时正在度假。 我看到有人在您的数据库中发布了类似的服务器,但还是决定发布我的服务器。

精选
Python
mixpanel

mixpanel

连接到您的 Mixpanel 数据。 从 Mixpanel 分析查询事件、留存和漏斗数据。

精选
TypeScript
Sequential Thinking MCP Server

Sequential Thinking MCP Server

这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。

精选
Python
Nefino MCP Server

Nefino MCP Server

为大型语言模型提供访问德国可再生能源项目新闻和信息的能力,允许按地点、主题(太阳能、风能、氢能)和日期范围进行筛选。

官方
Python
Vectorize

Vectorize

将 MCP 服务器向量化以实现高级检索、私有深度研究、Anything-to-Markdown 文件提取和文本分块。

官方
JavaScript
Mathematica Documentation MCP server

Mathematica Documentation MCP server

一个服务器,通过 FastMCP 提供对 Mathematica 文档的访问,使用户能够从 Wolfram Mathematica 检索函数文档和列出软件包符号。

本地
Python
kb-mcp-server

kb-mcp-server

一个 MCP 服务器,旨在实现便携性、本地化、简易性和便利性,以支持对 txtai “all in one” 嵌入数据库进行基于语义/图的检索。任何 tar.gz 格式的 txtai 嵌入数据库都可以被加载。

本地
Python
Research MCP Server

Research MCP Server

这个服务器用作 MCP 服务器,与 Notion 交互以检索和创建调查数据,并与 Claude Desktop Client 集成以进行和审查调查。

本地
Python
Cryo MCP Server

Cryo MCP Server

一个API服务器,实现了模型补全协议(MCP),用于Cryo区块链数据提取,允许用户通过任何兼容MCP的客户端查询以太坊区块链数据。

本地
Python