diff --git "a/docs/\351\203\250\347\275\262 & \344\275\277\347\224\250\346\211\213\345\206\214.md" "b/docs/\351\203\250\347\275\262 & \344\275\277\347\224\250\346\211\213\345\206\214.md"
index 139ca3e6a17e8524592458e9514b24544300920a..5ddec1857ef391a5e170539ca833d6cb51772d01 100644
--- "a/docs/\351\203\250\347\275\262 & \344\275\277\347\224\250\346\211\213\345\206\214.md"
+++ "b/docs/\351\203\250\347\275\262 & \344\275\277\347\224\250\346\211\213\345\206\214.md"
@@ -153,9 +153,11 @@ hce运维助手包含2个 MCP 服务,以下为工具列表
| get_dns_info_tool | 必选参数:无 可选参数: - host:远程主机名称 / IP(默认本地) | 获取本地或远程主机 DNS 配置信息,含 DNS 服务器列表、搜索域列表 |
| perf_data_tool | 必选参数:无 可选参数: - host:远程主机名称 / IP(默认本地) - pid:进程 ID(默认所有进程) | 收集本地或远程主机性能数据,含 CPU / 内存使用率、I/O 统计信息 |
-- 使用方法参考,可根据工具能力咨询相关问题或者执行命令
+##### 使用方法参考
-如果需要查询远程服务器相关能力,需要配置 `/usr/lib/euler-copilot-framework/mcp_center/config/public/public_config.toml`
+可根据工具能力咨询相关问题或者执行命令
+
+如果需要查询远程服务器相关能力,需要配置 `/usr/lib/openEuler Intelligence/mcp_center/config/public/public_config.toml`
```toml
# 公共配置文件
@@ -598,3 +600,861 @@ redis:
- `benchmark`: benchmark 脚本,脚本可参考 `/etc/euler-copilot-tune/scripts` 结合业务需求自定义
#### 5.3.2 根据调优工具进行使用,采集数据,分析,推荐参数以及开始调优
+
+### 5.4 OE-core 运维助手
+
+OE-Core 是 openEuler Intelligence 智能体群的核心全能型助手,定位为 “系统基础运维一站式工具集”。其整合系统监控、文件管理、进程管控三大类 MCP 服务,无需切换多工具即可完成日常运维中 80% 的基础操作,覆盖从 “系统状态查看” 到 “文件操作” 再到 “进程管理” 的全流程需求。
+
+其核心价值在于打破传统运维中“系统监控用 top/free、文件操作靠 rm/tar、进程管理需 ps/kill”的工具碎片化现状,通过标准化 MCP 工具封装与结构化数据输出,实现“一站式操作+自动化适配”——既支持本地主机快速巡检,也可通过 SSH 认证对接远程集群,适配 x86_64、arm64 多架构服务器,兼容 EulerOS、CentOS、Ubuntu 等主流 Linux 发行版,满足中小规模集群及单机运维的基础需求。
+
+#### 5.4.1 MCP服务矩阵
+
+智能体通过 14 个标准化 MCP 工具,构建“全场景覆盖、轻量化操作”的服务体系,涵盖系统监控、文件管理、进程管控三大运维维度,具体服务与工具映射如下:
+
+| 服务分类 | MCP 工具名称 | 核心功能定位 | 默认端口 |
+|------------------|-----------------------------|----------------------------|-----------|
+| 系统综合状态洞察 | [top_mcp](#top_mcp) | 实时监控系统负载与进程状态,支持自定义采集维度 | 12110 |
+| | [free_mcp](#free_mcp) | 查看系统内存使用状态 | 13100 |
+| | [vmstat_mcp](#vmstat_mcp) | 采集系统资源交互瓶颈数据 | 13101 |
+| | [nvidia_mcp](#nvidia_mcp) | 查询 GPU 负载与状态 | 12114 |
+| 文件与目录管理 | [ls_mcp](#ls_mcp) | 查看目录内容与文件属性 | 13112 |
+| | [file_content_tool_mcp](#file_content_tool_mcp) | 文件内容增删改查 | 12125 |
+| | [find_mcp](#find_mcp) | 按条件搜索文件/目录 | 13107 |
+| | [grep_mcp](#grep_mcp) | 搜索文件内容关键词 | 13120 |
+| | [rm_mcp](#rm_mcp) | 删除文件/目录 | 13110 |
+| | [mv_mcp](#mv_mcp) | 文件/目录移动或重命名 | 13111 |
+| | [mkdir_mcp](#mkdir_mcp) | 创建目录(支持多级) | 13109 |
+| | [tar_mcp](#tar_mcp) | 文件/目录压缩解压(tar格式)| 13118 |
+| | [zip_mcp](#zip_mcp) | 文件/目录压缩解压(zip格式)| 13119 |
+| 进程基础管理 | [kill_mcp](#kill_mcp) | 暂停/恢复进程,查看信号量 | 12111 |
+
+#### 5.4.2 使用案例
+
+以下按 “系统监控、文件管理、进程管控、综合运维” 四大高频场景分类,提供不同需求粒度的 Prompt 格式,直接复制即可使用,无需额外补充技术参数,只需替换ip或者一些目标信息即可
+
+##### 系统监控类场景(核心需求:查状态、判异常)
+
+- **案例 1**:远程单点服务器基础状态巡检(最常用场景)
+
+ ```text
+ 帮我查一下 192.168.3.5 这台服务器的运行状态,要包含 CPU 负载(1/5/15分钟)、内存实际使用率(排除缓存)、GPU 显存和核心占用率,最后告诉我有没有异常
+ ```
+
+- **案例 2**:本地节点资源告警排查
+
+ ```text
+ 我本地机器提示“内存不足”,帮我确认一下总内存、已用内存、缓存占用多少,再看看哪些进程内存占比最高,Top3 就行
+ ```
+
+- **案例 3**:多节点负载对比
+
+ ```text
+ 帮我批量查一下 192.168.3.5、192.168.3.6、192.168.3.7 这三台服务器的 CPU 空闲率和磁盘根目录使用率,整理成对比结果
+ ```
+
+- **案例 4**:GPU 专项检查
+
+ ```text
+ 192.168.3.10 这台 GPU 服务器的训练任务卡住了,帮我看看有几块 GPU、每块的显存使用率是不是超 90%,还有哪些进程在占用 GPU 资源
+ ```
+
+##### 文件管理类场景(核心需求:找文件、改内容、做归档)
+
+- **案例 1**:远程过期日志清理
+
+ ```text
+ 192.168.3.5 的 /var/log/nginx 目录下,帮我找所有 30 天前的 .log 文件,先压缩成 tar.gz 包存到 /var/log/archive,再把原文件删掉
+ ```
+
+- **案例 2**:本地多文件内容修改
+
+ ```text
+ 我本地 /data/app 目录下,所有子目录里的 config.yaml 文件,帮我把“timeout: 30s”改成“timeout: 60s”,改完后确认一下修改结果
+ ```
+
+- **案例 3**:按条件查找大文件
+
+ ```text
+ 帮我在 192.168.3.6 的 /data 目录下,找所有大于 10GB 的 .tar 或 .zip 压缩文件,显示文件路径、大小和最后修改时间
+ ```
+
+- **案例 4**:文件内容关键词搜索
+
+ ```text
+ 192.168.3.5 的 /var/log/messages 文件里,帮我搜索最近 7 天包含“error”或“fail”的日志,输出匹配的行号和内容
+ ```
+
+##### 进程管控类场景(核心需求:查进程、解阻塞)
+
+- **案例 1**:本地高负载进程临时暂停
+
+ ```text
+ 我本地有个叫“data_export”的进程,现在 CPU 占比快 90% 了,先帮我查它的 PID,然后暂停这个进程,暂停后再确认一下它的状态是不是“stopped”
+ ```
+
+- **案例 2**:远程关键进程恢复运行
+
+ ```text
+ 192.168.3.5 上有个叫“redis-server”的进程之前暂停了(PID 1234),帮我恢复它的运行,恢复后验证进程状态是否正常,还要看它的内存占比有没有异常
+ ```
+
+- **案例 3**:批量暂停同类临时进程
+
+ ```text
+ 我本地运行了多个叫“test_task”的临时进程,帮我先列出所有这类进程的 PID 和状态,然后把它们全部暂停,最后输出暂停成功的 PID 列表
+ ```
+
+- **案例 4**:按 PID 精准暂停与恢复(应急场景)
+
+ ```text
+ 帮我先查看 PID 5678 的进程名称和当前状态,确认是“app_worker”后暂停它;等 10 秒后,再恢复这个 PID 5678 进程的运行,全程记录状态变化
+ ```
+
+- **案例 5**:常用信号量含义查询(基础认知)
+
+ ```text
+ 我想了解一下进程管理里常用的几个信号量含义,帮我解释下 SIGSTOP(19)、SIGCONT(18)、SIGTERM(15)这三个信号分别是做什么的,适合在什么场景用
+ ```
+
+- **案例 6**:应急信号量查询(操作前确认)
+
+ ```text
+ 现在要恢复一个之前被暂停的“file_sync”进程,不确定该用哪个信号量,帮我查一下“恢复暂停进程”对应的信号量名称、编号和使用注意事项
+ ```
+
+##### 综合运维类场景(多需求组合)
+
+- **案例 1**:服务器初始化检查
+
+ ```text
+ 新部署的 192.168.3.20 服务器,帮我做个初始化检查:1. 查 CPU 核心数、内存总大小;2. 看 /data 目录是否存在,不存在就创建;3. 确认 sshd 进程是否在运行
+ ```
+
+- **案例 2**:应用部署前环境确认
+
+ ```text
+ 要在 192.168.3.8 部署 Java 应用,帮我确认:1. 内存空闲是否超 16GB;2. /opt/app 目录是否有写权限;3. 有没有占用 8080 端口的进程
+ ```
+
+- **案例 3**:故障应急排查
+
+ ```text
+ 192.168.3.9 的 nginx 服务没响应,帮我排查:1. nginx 进程是否存活;2. CPU 和内存有没有满;3. /var/log/nginx/error.log 里最近 10 条错误日志是什么
+ ```
+
+### 5.5 OE-PerfDoctor 性能诊断医师
+
+OE-PerfDoctor 是 openEuler Intelligence 体系下的**系统级性能智能诊断智能体**,专注于服务器集群、关键业务应用的性能瓶颈定位与优化建议生成。其核心能力在于整合底层硬件分析、内存访问监控、CPU 性能剖析及高级诊断工具链,通过“自动化工具调用+多维度数据联动分析+可视化结果呈现”的流程,替代传统人工性能调优中的重复性操作,大幅提升性能问题排查效率。
+
+OE-PerfDoctor 已集成四大类核心性能分析服务,覆盖从硬件基线到应用层瓶颈的全链路诊断,支持 x86_64、arm64 多架构服务器,适配 EulerOS、CentOS、Ubuntu 等主流 Linux 发行版。
+
+#### 5.5.1 MCP服务矩阵
+
+OE-PerfDoctor是 openEuler Intelligence 中的性能深度诊断专家,专注于系统级性能问题的定位和优化。该智能体通过 10 个标准化 MCP 工具,构建 “硬件 - 系统 - 应用” 全链路的性能诊断体系,涵盖 NUMA 架构分析、CPU 性能剖析、系统调用与中断诊断三大维度,具体服务与工具映射如下:
+
+| 服务分类 | MCP 工具名称 | 核心功能定位 | 默认端口 |
+|------------------------|-----------------------------|------------------------------------------------|-----------|
+| NUMA 架构分析与优化 | [lscpu_mcp](#lscpu_mcp) | 采集 CPU 静态架构信息,为 NUMA 分析提供硬件基线 | 12202 |
+| | [numa_topo_mcp](#numa_topo_mcp) | 解析 NUMA 节点分布、CPU 与内存绑定关系 | 12203 |
+| | [numastat_mcp](#numastat_mcp) | 监控 NUMA 节点内存访问状态,识别分配不均衡问题 | 12210 |
+| | [numa_cross_node_mcp](#numa_cross_node_mcp) | 定位跨 NUMA 节点访问的进程,量化性能损耗 | 12211 |
+| CPU 性能剖析 | [hotspot_trace_mcp](#hotspot_trace_mcp) | 跟踪 CPU 热点进程/函数,识别高负载代码段 | 12216 |
+| | [cache_miss_audit_mcp](#cache_miss_audit_mcp) | 审计 CPU 缓存(L1/L2/L3)未命中率,定位缓存损耗 | 12217 |
+| | [flame_graph_mcp](#flame_graph_mcp) | 生成 CPU 耗时火焰图,可视化函数调用栈性能瓶颈 | 12222 |
+| | [func_timing_trace_mcp](#func_timing_trace_mcp) | 分析函数级执行耗时,定位慢函数 | 12218 |
+| 系统调用与中断诊断 | [strace_syscall_mcp](#strace_syscall_mcp) | 统计进程系统调用频率与耗时,定位 I/O 瓶颈 | 12219 |
+| | [perf_interrupt_mcp](#perf_interrupt_mcp) | 定位高频中断源,识别中断导致的 CPU 资源争抢 | 12220 |
+
+#### 5.5.2 使用案例
+
+以下按 “NUMA 内存问题诊断、CPU 热点定位、系统调用瓶颈排查” 三大高频性能场景分类,提供自然语言交互 Prompt 格式,直接替换 IP、进程名等关键信息即可使用,无需额外补充技术参数。
+
+- 场景 1:NUMA 内存分配不均衡诊断(数据库性能下降)
+
+ ```text
+ 192.168.4.10 这台数据库服务器查询延迟突增,帮我分析是不是 NUMA 内存问题:1. 查一下 NUMA 节点分布和各节点内存使用率;2. 看看有没有进程跨节点访问内存,占比多少;3. 最后给优化建议
+ ```
+
+- 场景 2:CPU 高负载根因定位(应用响应慢)
+
+ ```text
+ 我本地运行的“order-service”应用 CPU 一直占 85% 以上,帮我定位瓶颈:1. 找出 CPU 热点函数;2. 查一下 L3 缓存未命中率是不是超标;3. 生成火焰图看看函数调用栈哪里耗时最多
+ ```
+
+- 场景 3:系统调用瓶颈排查(I/O 密集型应用卡顿)
+
+ ```text
+ 192.168.4.15 的“file-transfer”应用传输文件时卡顿,帮我查:1. 这个进程的系统调用里,哪些调用频率高、耗时久;2. 有没有高频中断占用 CPU;3. 总结卡顿的核心原因
+ ```
+
+- 场景 4:综合性能诊断(集群节点性能差异)
+
+ ```text
+ 帮我对比 192.168.4.20 和 192.168.4.21 两台节点的性能差异:1. 查 CPU 架构和 NUMA 拓扑是否一致;2. 对比相同“data-process”进程的 CPU 热点和缓存命中率;3. 指出导致性能差异的关键因素
+ ```
+
+### 5.6 OE-高级运维工程师
+
+OE-AdvOps 是 openEuler Intelligence 智能体群中的专精型高级运维工具,定位为“复杂运维场景解决方案提供者”。其聚焦企业级服务器的进阶运维需求,整合进程高级控制、系统资源深度监控、内存与交换空间管理三大核心能力,通过标准化 MCP 工具封装,替代传统“命令拼接 + 人工判断” 的低效运维模式,实现复杂操作的自动化与可追溯,适配中大规模集群的高级运维场景。
+
+其核心价值在于解决传统运维中 “进程后台启动靠 nohup 手动记录、资源瓶颈诊断需 sar/vmstat 多工具拼接、swap 管理风险高” 的痛点,支持本地与远程(SSH 认证)双模式操作,适配 x86_64、arm64 多架构服务器,兼容 EulerOS、CentOS、Ubuntu 等主流 Linux 发行版,可满足 “进程精细化管控、系统资源深度诊断、内存交换空间安全管理” 的高阶需求。
+
+#### 5.6.1 MCP服务矩阵
+
+OE-AdvOps 智能体通过 9 个标准化 MCP 工具,构建 “进程 - 资源 - 内存” 全维度的高级运维体系,涵盖进程高级控制、系统资源监控与诊断、内存与交换空间管理三大维度,具体服务与工具映射如下:
+
+| 服务分类 | MCP 工具名称 | 核心功能定位 | 默认端口 |
+|------------------------|-----------------------------|------------------------------------------------|-----------|
+| 进程高级控制 | [nohup_mcp](#nohup_mcp) | 后台启动进程并记录输出日志,避免会话断开中断 | 12301 |
+| | [strace_mcp](#strace_mcp) | 跟踪进程系统调用与信号,分析进程异常原因 | 12302 |
+| | [kill_mcp](#kill_mcp) | 精细化控制进程(暂停/恢复/发送指定信号),查看进程状态 | 12111 |
+| | [top_mcp](#top_mcp) | 实时监控进程资源占用(CPU/内存),识别高负载进程 | 12110 |
+| 系统资源监控与诊断 | [sar_mcp](#sar_mcp) | 采集系统历史/实时资源数据(CPU/内存/I/O),生成诊断报告 | 12303 |
+| | [vmstat_mcp](#vmstat_mcp) | 监控系统内存交换、I/O 等待、CPU 上下文切换,定位资源瓶颈 | 13101 |
+| 内存与交换空间管理 | [sync_mcp](#sync_mcp) | 同步系统缓冲区数据到磁盘,避免数据丢失 | 12304 |
+| | [swapon_mcp](#swapon_mcp) | 启用 swap 分区/文件,查看当前 swap 使用状态 | 13104 |
+| | [swapoff_mcp](#swapoff_mcp) | 安全停用 swap 分区/文件,释放交换空间 | 13105 |
+| | [fallocate_mcp](#fallocate_mcp) | 预分配文件空间(常用于创建 swap 文件),指定大小与路径 | 12305 |
+
+#### 5.6.2 使用案例
+
+以下按 “进程高级管控、系统资源深度诊断、内存与交换空间管理” 三大高频高级运维场景分类,提供自然语言交互 Prompt 格式,直接替换 IP、进程名、路径等关键信息即可使用:
+
+- 场景 1:进程后台启动与异常跟踪
+
+ ```text
+ 帮我在 192.168.5.10 上后台启动“data_sync.sh”脚本,日志输出到 /var/log/data_sync.log;启动后用 top_mcp 监控它的内存占用,要是超过 50% 就用 strace_mcp 跟踪它的系统调用,查异常原因
+ ```
+
+- 场景 2:系统资源历史瓶颈诊断
+
+ ```text
+ 192.168.5.15 昨天 14:00-16:00 出现 CPU 负载突增,帮我用 sar_mcp 查这段时间的 CPU 使用率(用户态/系统态)、内存交换情况,再用 vmstat_mcp 看当时的 I/O 等待时间,总结负载突增的原因
+ ```
+
+- 场景 3:swap 文件创建与安全管理
+
+ ```text
+ 我本地服务器内存不足,帮我创建一个 20G 的 swap 文件:1. 用 fallocate_mcp 在 /data/swapfile 预分配 20G 空间;2. 启用这个 swap 文件(用 swapon_mcp);3. 最后查看当前 swap 总容量和使用率
+ ```
+
+- 场景 4:进程异常恢复与数据保护
+
+ ```text
+ 192.168.5.20 上的“db_backup”进程(PID 6789)无响应,帮我:1. 用 kill_mcp 发送 SIGSTOP 暂停进程;2. 用 sync_mcp 强制同步缓冲区数据;3. 尝试发送 SIGCONT 恢复进程,恢复失败就输出重启建议
+ ```
+
+### 5.7 OE-文件系统专家
+
+OE-FileMaster 是 openEuler Intelligence 中的专精型文件系统管理工具,定位为 “全场景文件操作一站式解决方案”。其聚焦文件系统的全生命周期管理,整合高级查找与内容处理、权限与所有权管控、文件创建与查看三大核心能力,覆盖从 “文件创建” 到 “内容编辑” 再到 “权限配置” 的全流程操作,替代传统运维中 “多命令切换 + 手动校验” 的低效模式,实现文件操作的标准化与自动化。
+
+其核心价值在于解决传统文件管理中 “高级查找靠 find 复杂参数拼接、内容修改需 grep+sed 组合、权限配置易因参数错误导致安全风险” 的痛点,支持本地与远程(SSH 认证)双模式操作,适配 x86_64、arm64 多架构服务器,兼容 EulerOS、CentOS、Ubuntu 等主流 Linux 发行版,可满足 “日常文件运维、批量内容处理、权限安全管控” 的精细化需求。
+
+#### 5.7.1 MCP服务矩阵
+
+OE-FileMaster 智能体通过 14 个标准化 MCP 工具,构建 “查找 - 处理 - 管控 - 查看” 全维度的文件系统管理体系,涵盖高级查找与内容处理、权限与所有权管理、文件创建与查看三大维度,具体服务与工具映射如下:
+
+| 服务分类 | MCP 工具名称 | 核心功能定位 | 默认端口 |
+|------------------------|-----------------------------|------------------------------------------------|-----------|
+| 高级查找与内容处理 | [find_mcp](#find_mcp) | 按路径/名称/大小/修改时间等多条件查找文件/目录 | 13107 |
+| | [grep_mcp](#grep_mcp) | 按关键词搜索文件内容,支持多文件批量匹配 | 13120 |
+| | [sed_mcp](#sed_mcp) | 批量替换文件内容(支持正则),处理结构化文本 | 13201 |
+| | [file_content_tool_mcp](#file_content_tool_mcp) | 全功能文件内容管理(读/写/改/删),支持大文件分段操作 | 12125 |
+| 权限与所有权管理 | [chmod_mcp](#chmod_mcp) | 配置文件/目录权限(数字/符号格式),保障访问安全 | 13202 |
+| | [chown_mcp](#chown_mcp) | 修改文件/目录所有者与所属组,管控资源归属 | 13203 |
+| 文件创建与查看 | [touch_mcp](#touch_mcp) | 创建空文件/更新文件修改时间,初始化文件资源 | 13204 |
+| | [cat_mcp](#cat_mcp) | 读取完整文件内容,支持文本/配置文件快速查看 | 13205 |
+| | [head_mcp](#head_mcp) | 查看文件前 N 行内容,快速定位文件头部信息 | 13206 |
+| | [tail_mcp](#tail_mcp) | 查看文件后 N 行/实时跟踪文件更新(tail -f) | 13207 |
+| | [echo_mcp](#echo_mcp) | 向文件写入文本内容(覆盖/追加模式),快速生成简单文件 | 13208 |
+| | [ls_mcp](#ls_mcp) | 查看目录内容与文件属性(权限/大小/修改时间) | 13112 |
+| | [rm_mcp](#rm_mcp) | 安全删除文件/目录(支持递归),清理无效资源 | 13110 |
+| | [mv_mcp](#mv_mcp) | 移动文件/目录或重命名,调整资源存储路径 | 13111 |
+
+#### 5.7.2 使用案例
+
+以下按 “高级内容处理、权限安全管控、日常文件运维” 三大高频文件管理场景分类,提供自然语言交互 Prompt 格式,直接替换 IP、文件路径、关键词等关键信息即可使用:
+
+- 场景 1:批量文件内容替换(配置更新)
+
+ ```text
+ 192.168.6.10 的 /data/apps 目录下,所有子目录的 config.ini 文件里,帮我把“server_ip = 10.0.0.1”改成“server_ip = 10.0.0.2”,改完后用 grep_mcp 验证替换结果
+ ```
+
+- 场景 2:文件权限与所有权修复(安全管控)
+
+ ```text
+ 本地 /var/www/html 目录下的网站文件,现在普通用户也能修改,帮我处理:1. 用 chmod_mcp 把所有 .php 文件权限设为 644,目录设为 755;2. 用 chown_mcp 把所有者改成 www 用户和 www 组,递归处理所有子文件
+ ```
+
+- 场景 3:日志文件高级处理(运维分析)
+
+ ```text
+ 帮我处理 192.168.6.15 的 /var/log/nginx/access.log:1. 用 find_mcp 找出去年 12 月的日志文件;2. 用 grep_mcp 统计这些日志里包含“/api/login”的请求行数;3. 用 tail_mcp 实时跟踪当前日志的最新 20 行
+ ```
+
+- 场景 4:文件创建与内容初始化(资源准备)
+
+ ```text
+ 要在 192.168.6.20 部署脚本,帮我:1. 用 touch_mcp 在 /opt/scripts 下创建 start.sh 和 stop.sh;2. 用 echo_mcp 向 start.sh 写入“#!/bin/bash\n/opt/app/start”(追加模式);3. 用 chmod_mcp 给两个脚本设为 700 权限
+ ```
+
+### 5.8 NUMA专精专家
+
+OE-NUMAExpert 是 openEuler Intelligence 中的专精型硬件优化工具,定位为 “NUMA 架构全场景优化与诊断解决方案”。其聚焦多 CPU 服务器的 NUMA(非均匀内存访问)架构特性,整合进程 NUMA 绑定、Docker 容器 NUMA 控制、NUMA 性能测试与硬件诊断四大核心能力,解决传统 NUMA 优化中 “手动绑定效率低、容器管控难、性能差异无量化” 的痛点,最大化发挥多架构服务器的硬件性能。
+
+其核心价值在于通过标准化 MCP 工具,实现 “NUMA 拓扑可视化→进程 / 容器精准绑定→性能对比测试→硬件问题诊断” 的全流程自动化,支持本地与远程(SSH 认证)双模式操作,适配 x86_64、arm64 多架构服务器,兼容 EulerOS、CentOS、Ubuntu 等主流 Linux 发行版,可满足 “高性能计算、数据库集群、AI 训练” 等对硬件资源敏感场景的 NUMA 优化需求。
+
+#### 5.8.1 MCP服务矩阵
+
+OE-NUMAExpert 智能体通过 8 个标准化 MCP 工具,构建 “拓扑分析 - 绑定控制 - 性能测试 - 诊断优化” 全维度的 NUMA 硬件管理体系,涵盖 NUMA 拓扑与状态监控、进程 / 容器 NUMA 绑定、NUMA 性能对比与诊断三大维度,具体服务与工具映射如下:
+
+| 服务分类 | MCP 工具名称 | 核心功能定位 | 默认端口 |
+|------------------------|-----------------------------|------------------------------------------------|-----------|
+| NUMA 拓扑与状态监控 | [numa_topo_mcp](#numa_topo_mcp) | 解析 NUMA 节点分布、CPU 核心归属与内存关联关系,生成拓扑图 | 12203 |
+| | [numastat_mcp](#numastat_mcp) | 实时监控各 NUMA 节点内存访问量、本地/跨节点访问占比,识别不均衡问题 | 12210 |
+| 进程/容器 NUMA 绑定 | [numa_bind_proc_mcp](#numa_bind_proc_mcp) | 进程启动时绑定到指定 NUMA 节点,避免跨节点内存访问 | 12401 |
+| | [numa_rebind_proc_mcp](#numa_rebind_proc_mcp) | 对运行中进程重新绑定 NUMA 节点,动态调整资源分配 | 12402 |
+| | [numa_bind_docker_mcp](#numa_bind_docker_mcp) | 启动 Docker 容器时绑定 NUMA 节点,管控容器硬件资源 | 12403 |
+| | [numa_container_mcp](#numa_container_mcp) | 查看/修改已运行 Docker 容器的 NUMA 绑定配置,动态优化 | 12404 |
+| NUMA 性能对比与诊断 | [numa_perf_compare_mcp](#numa_perf_compare_mcp) | 对比不同 NUMA 绑定策略下的性能数据(延迟/吞吐量),生成优化建议 | 12405 |
+| | [numa_diagnose_mcp](#numa_diagnose_mcp) | 诊断 NUMA 相关硬件问题(节点故障、内存访问异常),输出修复方案 | 12406 |
+
+#### 5.8.2 使用案例
+
+以下按 “进程 NUMA 优化、Docker 容器 NUMA 管控、NUMA 性能测试与诊断” 三大高频硬件优化场景分类,提供自然语言交互 Prompt 格式,直接替换 IP、进程 ID、节点 ID 等关键信息即可使用:
+
+- 场景 1:数据库进程 NUMA 绑定(性能优化)
+
+ ```text
+ 192.168.7.10 上的 MySQL 进程(PID 3456)跨 NUMA 节点访问导致延迟高,帮我:1. 用 numa_topo_mcp 查该服务器的 NUMA 节点分布;2. 把 MySQL 进程重新绑定到 NUMA 节点 0;3. 用 numastat_mcp 验证跨节点访问占比是否下降
+ ```
+
+- 场景 2:Docker 容器 NUMA 管控(资源隔离)
+
+ ```text
+ 要在 192.168.7.15 启动一个 AI 训练容器(镜像 tensorflow:latest),帮我:1. 启动时用 numa_bind_docker_mcp 绑定到 NUMA 节点 1;2. 启动后用 numa_container_mcp 确认绑定是否生效;3. 限制容器只使用节点 1 的 CPU 和内存
+ ```
+
+- 场景 3:NUMA 绑定策略性能对比(方案选型)
+
+ ```text
+ 帮我在本地服务器测试不同 NUMA 绑定对“data-process”程序的影响:1. 分别绑定到 NUMA 节点 0、节点 1、不绑定;2. 用 numa_perf_compare_mcp 对比三种场景下的处理延迟和吞吐量;3. 推荐最优绑定策略
+ ```
+
+- 场景 4:NUMA 硬件问题诊断(故障排查)
+
+ ```text
+ 192.168.7.20 服务器近期内存访问延迟突然升高,怀疑是 NUMA 节点问题,帮我:1. 用 numa_diagnose_mcp 检查所有 NUMA 节点和内存状态;2. 用 numastat_mcp 看各节点跨访问占比;3. 输出问题根因和修复建议
+ ```
+
+### 5.9 MCP 总览
+
+当前已集成 **30+ 核心功能模块**,能力覆盖运维全场景,具体包含七大方向:
+
+1. 硬件信息采集:支持 CPU 架构解析、NUMA 拓扑查询、GPU 负载监控,为底层资源分析提供数据基线;
+2. 系统资源监控:实时采集内存使用状态、CPU 负载变化、网络流量数据,动态捕捉资源瓶颈;
+3. 进程与服务管控:实现进程启停控制、信号量含义查询、后台进程稳定执行,保障服务运行可控;
+4. 文件操作管理:覆盖文件增删改查、压缩解压(tar/zip 格式)、权限与所有权配置,满足文件全生命周期需求;
+5. 性能诊断优化:**内置火焰图生成能力**(基于系统原生 `perf` 工具封装)、系统调用排查、CPU 缓存失效定位,无需额外部署独立性能分析工具,即可助力深度性能调优;
+6. 虚拟化与容器辅助:支持 Docker 容器 NUMA 绑定、QEMU 虚拟机管理,适配虚拟化运维场景;
+7. 网络扫描探测:可执行 IP/网段探测、端口识别,快速完成网络基础巡检。
+
+上述能力仅依赖系统原生基础工具(如 `perf`),无需额外部署第三方独立运维套件,即可满足从基础运维到深度性能优化的全流程需求。
+
+在部署与迭代层面,具备两大核心优势:
+
+- **双模式适配**:支持本地直接调用与远程 SSH 管控,兼顾单机运维与多节点集群管理场景;
+- **高稳定性与可扩展性**:单个模块的升级、维护不影响整体运行;开源特性允许社区开发者参与功能迭代与 Bug 修复,持续丰富模块能力,适配更多新兴运维场景。
+
+#### 5.9.1 MCP_Server列表
+
+| 端口号 | 服务名称 | 目录路径 | 简介 |
+|--------|------------------------------|-----------------------------------------------|-------------------------------------------------|
+| 12100 | [remote_info_mcp](#remote_info_mcp) | mcp_center/servers/remote_info_mcp | 获取端点信息 |
+| 12101 | [shell_generator_mcp](#shell_generator_mcp) | mcp_center/servers/shell_generator_mcp | 生成&执行shell命令 |
+| 12110 | [top_mcp](#top_mcp) | mcp_center/servers/top_mcp | 获取系统负载信息 |
+| 12111 | [kill_mcp](#kill_mcp) | mcp_center/servers/kill_mcp | 控制进程&查看进程信号量含义 |
+| 12112 | [nohup_mcp](#nohup_mcp) | mcp_center/servers/nohup_mcp | 后台执行进程 |
+| 12113 | [strace_mcp](#strace_mcp) | mcp_center/servers/strace_mcp | 跟踪进程信息,可以用于异常情况分析 |
+| 12114 | [nvidia_mcp](#nvidia_mcp) | mcp_center/servers/nvidia_mcp | GPU负载信息查询 |
+| 12125 | [file_content_tool_mcp](#file_content_tool_mcp) | mcp_center/servers/file_content_tool_mcp | 文件内容增删改查 |
+| 12145 | [systrace_mcpserver_mcp](#systrace_mcpserver_mcp) | mcp_center/servers/systrace/systrace_mcpserver_mcp | 开启MCP Server服务 |
+| 12146 | [ssystrace_openapi_mcp](#ssystrace_openapi_mcp) | mcp_center/servers/systrace/ssystrace_openapi_mcp | 开启OpenAPI Server服务 |
+| 12147 | [euler_copilot_tune_mcp](#euler_copilot_tune_mcp) | mcp_center/servers/euler_copilot_tune_mcp | 调优MCP服务 |
+| 12202 | [lscpu_mcp](#lscpu_mcp) | mcp_center/servers/lscpu_mcp | CPU架构等静态信息收集 |
+| 12203 | [numa_topo_mcp](#numa_topo_mcp) | mcp_center/servers/numa_topo_mcp | 查询 NUMA 硬件拓扑与系统配置 |
+| 12204 | [numa_bind_proc_mcp](#numa_bind_proc_mcp) | mcp_center/servers/numa_bind_proc_mcp | 启动时绑定进程到指定 NUMA 节点 |
+| 12205 | [numa_rebind_proc_mcp](#numa_rebind_proc_mcp) | mcp_center/servers/numa_rebind_proc_mcp | 修改已启动进程的 NUMA 绑定 |
+| 12206 | [numa_bind_docker_mcp](#numa_bind_docker_mcp) | mcp_center/servers/numa_bind_docker_mcp | 为 Docker 容器配置 NUMA 绑定 |
+| 12208 | [numa_perf_compare_mcp](#numa_perf_compare_mcp) | mcp_center/servers/numa_perf_compare_mcp | 用 NUMA 绑定控制测试变量 |
+| 12209 | [numa_diagnose_mcp](#numa_diagnose_mcp) | mcp_center/servers/numa_diagnose_mcp | 用 NUMA 绑定定位硬件问题 |
+| 12210 | [numastat_mcp](#numastat_mcp) | mcp_center/servers/numastat_mcp | 查看系统整体 NUMA 内存访问状态 |
+| 12211 | [numa_cross_node_mcp](#numa_cross_node_mcp) | mcp_center/servers/numa_cross_node_mcp | 定位跨节点内存访问过高的进程 |
+| 12214 | [numa_container_mcp](#numa_container_mcp) | mcp_center/servers/numa_container_mcp | 监控 Docker 容器的 NUMA 内存访问 |
+| 12216 | [hotspot_trace_mcp](#hotspot_trace_mcp) | mcp_center/servers/hotspot_trace_mcp | 快速定位系统 / 进程的 CPU 性能瓶颈 |
+| 12217 | [cache_miss_audit_mcp](#cache_miss_audit_mcp) | mcp_center/servers/cache_miss_audit_mcp | 定位 CPU 缓存失效导致的性能损耗 |
+| 12218 | [func_timing_trace_mcp](#func_timing_trace_mcp) | mcp_center/servers/func_timing_trace_mcp | 精准测量函数执行时间(含调用栈) |
+| 12219 | [strace_syscall_mcp](#strace_syscall_mcp) | mcp_center/servers/strace_syscall_mcp | 排查不合理的系统调用(高频 / 耗时) |
+| 12220 | [perf_interrupt_mcp](#perf_interrupt_mcp) | mcp_center/servers/perf_interrupt_mcp | 定位高频中断导致的 CPU 占用 |
+| 12222 | [flame_graph_mcp](#flame_graph_mcp) | mcp_center/servers/flame_graph_mcp | 火焰图生成:可视化展示性能瓶颈 |
+| 13100 | [free_mcp](#free_mcp) | mcp_center/servers/free_mcp | 获取系统内存整体状态 |
+| 13101 | [vmstat_mcp](#vmstat_mcp) | mcp_center/servers/vmstat_mcp | 系统资源交互瓶颈信息采集 |
+| 13102 | [sar_mcp](#sar_mcp) | mcp_center/servers/sar_mcp | 系统资源监控与故障诊断 |
+| 13103 | [sync_mcp](#sync_mcp) | mcp_center/servers/sync_mcp | 内存缓冲区数据写入磁盘 |
+| 13104 | [swapon_mcp](#swapon_mcp) | mcp_center/servers/swapon_mcp | 查看swap设备状态 |
+| 13105 | [swapoff_mcp](#swapoff_mcp) | mcp_center/servers/swapoff_mcp | swap设备停用 |
+| 13106 | [fallocate_mcp](#fallocate_mcp) | mcp_center/servers/fallocate_mcp | 临时创建并启用swap文件 |
+| 13107 | [find_mcp](#find_mcp) | mcp_center/servers/find_mcp | 文件查找 |
+| 13108 | [touch_mcp](#touch_mcp) | mcp_center/servers/touch_mcp | 文件创建与时间校准 |
+| 13109 | [mkdir_mcp](#mkdir_mcp) | mcp_center/servers/mkdir_mcp | 文件夹创建 |
+| 13110 | [rm_mcp](#rm_mcp) | mcp_center/servers/rm_mcp | 文件删除 |
+| 13111 | [mv_mcp](#mv_mcp) | mcp_center/servers/mv_mcp | 文件移动或重命名 |
+| 13112 | [ls_mcp](#ls_mcp) | mcp_center/servers/ls_mcp | 查看目录内容 |
+| 13113 | [head_mcp](#head_mcp) | mcp_center/servers/head_mcp | 文件开头内容查看工具 |
+| 13114 | [tail_mcp](#tail_mcp) | mcp_center/servers/tail_mcp | 文件末尾内容查看工具 |
+| 13115 | [cat_mcp](#cat_mcp) | mcp_center/servers/cat_mcp | 文件内容查看工具 |
+| 13116 | [chown_mcp](#chown_mcp) | mcp_center/servers/chown_mcp | 文件所有者修改工具 |
+| 13117 | [chmod_mcp](#chmod_mcp) | mcp_center/servers/chmod_mcp | 文件权限修改工具 |
+| 13118 | [tar_mcp](#tar_mcp) | mcp_center/servers/tar_mcp | 文件压缩解压工具 |
+| 13119 | [zip_mcp](#zip_mcp) | mcp_center/servers/zip_mcp | 文件压缩解压工具 |
+| 13120 | [grep_mcp](#grep_mcp) | mcp_center/servers/grep_mcp | 文件内容搜索工具 |
+| 13121 | [sed_mcp](#sed_mcp) | mcp_center/servers/sed_mcp | 文本处理工具 |
+| 13125 | [echo_mcp](#echo_mcp) | mcp_center/servers/echo_mcp | 文本写入工具 |
+
+#### 5.9.2 MCP_Server 详情
+
+本部分将针对核心MCP服务模块展开详细说明,通过“服务-工具-功能-参数-返回值”的结构化表格,清晰呈现每个MCP_Server的具体能力:包括其包含的工具列表、各工具的核心作用、调用时需传入的关键参数,以及执行后返回的结构化数据格式。旨在为运维人员提供“即查即用”的操作指南,确保能快速理解服务功能、正确配置参数、高效解析返回结果,满足日常运维、性能分析与故障排查的实际需求。
+
+##### remote_info_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|-----------------|-----------------------|--------------------------------------------------------------------------|------------------------------------------------------------------------------|------------------------------------------------------------------------------|
+| | top_collect_tool | 获取目标设备(本地/远程)中**内存占用排名前k个**的进程信息,k支持自定义配置 | - `host`:远程主机名/IP(本地采集可不填)
- `k`:需获取的进程数量(默认5) | 进程列表(含`pid`进程ID、`name`进程名称、`memory`内存使用量(MB)) |
+| | get_process_info_tool | 查询指定PID进程的**详细运行信息**,支持本地与远程进程信息获取 | - `host`:远程主机名/IP(本地查询可不填)
- `pid`:需查询的进程ID(必传,且为正整数) | 进程详细字典(含`status`状态、`create_time`创建时间、`cpu_times`CPU时间、`memory_info`内存信息、`open_files`打开文件列表、`connections`网络连接等) |
+| | change_name_to_pid_tool | 根据进程名称反向查询对应的**PID列表**,解决“已知进程名查ID”的场景需求 | - `host`:远程主机名/IP(本地查询可不填)
- `name`:需查询的进程名称(必传,不能为空) | 以空格分隔的PID字符串(如“1234 5678”) |
+| **remote_info_mcp** | get_cpu_info_tool | 采集目标设备的CPU硬件与使用状态信息,包括核心数、频率、核心使用率 | - `host`:远程主机名/IP(本地采集可不填) | CPU信息字典(含`physical_cores`物理核心数、`total_cores`逻辑核心数、`max_frequency`最大频率(MHz)、`cpu_usage`各核心使用率(%)等) |
+| | memory_anlyze_tool | 分析目标设备的内存使用情况,计算总内存、可用内存及使用率 | - `host`:远程主机名/IP(本地采集可不填) | 内存信息字典(含`total`总内存(MB)、`available`可用内存(MB)、`used`已用内存(MB)、`percent`内存使用率(%)等) |
+| | get_disk_info_tool | 采集目标设备的磁盘分区信息与容量使用状态,过滤临时文件系统(tmpfs/devtmpfs) | - `host`:远程主机名/IP(本地采集可不填) | 磁盘列表(含`device`设备名、`mountpoint`挂载点、`fstype`文件系统类型、`total`总容量(GB)、`percent`磁盘使用率(%)等) |
+| | get_os_info_tool | 获取目标设备的操作系统类型与版本信息,适配OpenEuler、Ubuntu、CentOS等多系统 | - `host`:远程主机名/IP(本地采集可不填) | 操作系统信息字符串(如“OpenEuler 22.03 LTS”或“Ubuntu 20.04.5 LTS”) |
+| | get_network_info_tool | 采集目标设备的网络接口信息,包括IP地址、MAC地址、接口启用状态 | - `host`:远程主机名/IP(本地采集可不填) | 网络接口列表(含`interface`接口名、`ip_address`IP地址、`mac_address`MAC地址、`is_up`接口是否启用(布尔值)等) |
+| | write_report_tool | 将系统信息分析结果写入本地报告文件,自动生成带时间戳的文件路径 | - `report`:报告内容字符串(必传,不能为空) | 报告文件路径字符串(如“/reports/system_report_20240520_153000.txt”) |
+| | telnet_test_tool | 测试目标主机指定端口的Telnet连通性,验证端口开放状态 | - `host`:远程主机名/IP(必传)
- `port`:端口号(1-65535,必传) | 连通性结果(布尔值:`True`成功,`False`失败) |
+| | ping_test_tool | 测试目标主机的ICMP Ping连通性,验证主机网络可达性 | - `host`:远程主机名/IP(必传) | 连通性结果(布尔值:`True`成功,`False`失败) |
+| | get_dns_info_tool | 采集目标设备的DNS配置信息,包括DNS服务器列表与搜索域 | - `host`:远程主机名/IP(本地采集可不填) | DNS信息字典(含`nameservers`DNS服务器列表、`search`搜索域列表) |
+| | perf_data_tool | 采集目标设备的实时性能数据,支持“指定进程”或“全系统”性能监控 | - `host`:远程主机名/IP(本地采集可不填)
- `pid`:进程ID(全系统监控可不填) | 性能数据字典(含`cpu_usage`CPU使用率(%)、`memory_usage`内存使用率(%)、`io_counters`I/O统计信息) |
+
+---
+
+##### shell_generator_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|------------------|-----------------------|--------------------------------------------------------------------------|------------------------------------------------------------------------------|------------------------------------------------------------------------------|
+| **shell_generator** | cmd_generator_tool | 1. 系统信息采集:指定`host`则通过SSH获取远程主机信息(系统发行版、运行时间、根分区/内存使用、Top5内存进程),不指定则采集本机信息;2. LLM命令生成:将系统信息与用户需求传入大语言模型,生成符合场景的Linux shell命令;3. 格式校验:提取LLM返回的YAML格式命令块,输出有效命令字符串 | - `host`(可选):远程主机名/IP,需提前在配置文件配置主机IP、端口、用户名、密码,不提供则操作本机
- `goal`(必填):用户运维需求描述(如“查询根分区使用率”“查看内存占用最高的3个进程”) | 符合场景的Linux shell命令字符串(经格式校验后的有效命令) |
+| | cmd_executor_tool | 1. 多场景命令执行:支持本地或远程主机执行shell命令;2. 远程执行:通过SSH连接远程主机(基于配置文件信息),执行命令并捕获标准输出/错误输出,执行后关闭连接;3. 本地执行:通过`subprocess`模块执行命令,返回结果;4. 错误处理:命令执行出错(权限不足、命令不存在等)时,返回具体错误信息 | - `host`(可选):远程主机名/IP,需与配置文件信息匹配,不提供则操作本机
- `command`(必填):需执行的Linux shell命令字符串(建议由`cmd_generator_tool`生成) | 1. 命令执行成功:返回命令标准输出内容;2. 命令执行失败:返回具体错误信息(如“权限不足:Permission denied”“命令不存在:command not found”) |
+
+---
+
+##### top_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-----------------------|--------------------------------------------------------------------------|------------------------------------------------------------------------------|------------------------------------------------------------------------------|
+| **top_mcp** | top_collect_tool | 获取目标设备(本地/远程)中**内存占用排名前k个**的进程信息,k支持自定义配置 | - `host`:远程主机名/IP(本地采集可不填)
- `k`:需获取的进程数量(默认5) | 进程列表(含`pid`进程ID、`name`进程名称、`memory`内存使用量(MB)) |
+| | top_servers_tool | 通过`top`命令获取指定目标(本地/远程服务器)的负载信息,涵盖CPU、内存、磁盘、网络及进程状态,为运维、性能分析和故障排查提供数据支持 | - `host`:远程主机名/IP(本地采集可不填)
- `dimensions`:需采集的维度(可选值:cpu、memory、disk、network)
- `include_processes`:是否包含进程信息(布尔值)
- `top_n`:需返回的进程数量(整数) | - `server_info`:服务器基本信息
- `metrics`:请求维度的统计结果(如CPU使用率、内存占用率)
- `processes`:进程列表(仅`include_processes`=True时返回)
- `error`:错误信息(如连接失败,无错误则为null) |
+
+---
+
+##### kill_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-----------------------|--------------------------------------------------------------------------|------------------------------------------------------------------------------|------------------------------------------------------------------------------|
+| | pause_process | 通过`kill`指令发送`SIGSTOP`信号暂停进程(支持本地/远程) | - `pid`:需暂停的进程PID(正整数,必填)
- `host`:远程主机名/IP(默认`localhost`,本地操作可不填)
- `port`:SSH端口(默认22,远程操作时使用)
- `username`:SSH用户名(默认`root`,远程操作时需指定)
- `password`:SSH密码(远程操作时必填) | - `success`:操作是否成功(布尔值)
- `message`:操作结果描述(字符串)
- `data`:包含操作详情的字典
- `host`:操作的主机名/IP
- `pid`:被暂停的进程PID |
+| **kill_mcp** | resume_process | 通过`kill`指令发送`SIGCONT`信号恢复进程(支持本地/远程) | - `pid`:需恢复的进程PID(正整数,必填)
- `host`:远程主机名/IP(默认`localhost`,本地操作可不填)
- `port`:SSH端口(默认22,远程操作时使用)
- `username`:SSH用户名(默认`root`,远程操作时需指定)
- `password`:SSH密码(远程操作时必填) | - `success`:操作是否成功(布尔值)
- `message`:操作结果描述(字符串)
- `data`:包含操作详情的字典
- `host`:操作的主机名/IP
- `pid`:被恢复的进程PID |
+| | get_kill_signals | 查看本地或远程服务器的`kill`信号量含义及功能说明 | - `host`:远程主机名/IP(本地查询可不填)
- `port`:SSH端口(默认22,远程查询时使用)
- `username`:SSH用户名(远程查询时必填)
- `password`:SSH密码(远程查询时必填) | - `success`:查询是否成功(布尔值)
- `message`:查询结果描述(字符串)
- `data`:包含信号量信息的字典
- `host`:查询的主机名/IP(本地为`localhost`)
- `signals`:信号量列表,每个元素包含:
- `number`:信号编号(整数)
- `name`:信号名称(如`SIGTERM`)
- `description`:信号功能说明 |
+
+---
+
+##### ls_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-----------------------|------------------|------------------------------------------------------------------------------|--------------------|
+| **ls_mcp** | ls_collect_tool | 列出目录内容 | - `host`:远程主机名/IP(本地采集可不填)
- `file`:目标文件/目录 | 目标目录内容的列表 |
+
+---
+
+##### lscpu_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-----------------------| ------------------------------------- | ------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------- |
+| **lscpu_mcp** | lscpu_info_tool | 使用 `lscpu` 命令获取本地或远程主机的 CPU 架构及核心静态信息 | - `host`:远程主机名/IP(若不提供则获取本机信息) | `architecture`:CPU 架构(如 x86\_64)、`cpus_total`:CPU 总数量、`model_name`:CPU 型号名称、`cpu_max_mhz`:CPU 最大频率 (MHz)、`vulnerabilities`:常见安全漏洞的缓解状态字典 |
+
+---
+
+##### mkdir_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-----------------------|----------------------------------------------------------|------------------------------------------------------------------------------|----------------------------|
+| **mkdir_mcp** | mkdir_collect_tool | 进行目录创建、支持批量创建、设置权限、递归创建多级目录 | - `host`:远程主机名/IP(本地采集可不填)
- `dir`:创建目录名 | 布尔值,表示mkdir操作是否成功 |
+
+---
+
+##### mv_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-----------------------|--------------------------|------------------------------------------------------------------------------|----------------------------|
+| **mv_mcp** | mv_collect_tool | 移动或重命名文件/目录 | - `host`:远程主机名/IP(本地采集可不填)
- `source`:源文件或目录
- `target`:目标文件或目录 | 布尔值,表示mv操作是否成功 |
+
+---
+
+##### nohup_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-----------------------|----------------------------------------------------------|------------------------------------------------------------------------------|------------------------------------------------------------------------------|
+| **nohup_mcp** | run_with_nohup | 使用`nohup`在本地或远程服务器运行命令,支持后台执行 | - `command`:需执行的命令(字符串,必填)
- `host`:远程主机IP或hostname(本地执行可不填)
- `port`:SSH端口(默认22,远程执行时使用)
- `username`:SSH用户名(远程执行时必填)
- `password`:SSH密码(远程执行时必填)
- `output_file`:输出日志文件路径(可选,默认自动生成)
- `working_dir`:命令执行的工作目录(可选) | - `success`:操作是否成功(布尔值)
- `message`:执行结果描述(字符串)
- `pid`:进程ID(成功执行时返回)
- `output_file`:输出日志文件路径
- `command`:实际执行的命令
- `host`:执行命令的主机(本地为`localhost`) |
+
+---
+
+##### perf_microarch_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------------|---------------------------|---------------------------------------------------------------------------------------|------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------|
+| **perf_microarch_mcp** | cache_miss_audit_tool | 通过 `perf stat -a -e cache-misses,cycles,instructions sleep 10` 采集整机的微架构指标,支持本地和远程执行 | - `host`:可选,远程主机名/IP,留空则采集本机 | `cache_misses`:缓存未命中次数
`cycles`:CPU 周期数
`instructions`:指令数
`ipc`:每周期指令数 (Instructions per Cycle)
`seconds`:采集时长(秒) |
+
+---
+
+##### cache_miss_audit_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------------|---------------------------|---------------------------------------------------------------------------------------|------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------|
+| **cache_miss_audit_mcp** | cache_miss_audit_tool | 通过 `perf stat -a -e cache-misses,cycles,instructions sleep 10` 采集整机的微架构指标,支持本地和远程执行 | - `host`:可选,远程主机名/IP,留空则采集本机 | `cache_miss`:缓存未命中次数
`cycles`:CPU 周期数
`instructions`:指令数
`ipc`:每周期指令数 (Instructions per Cycle)
`seconds`:采集时长(秒) |
+
+---
+
+##### cat_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-----------------------|------------------|------------------------------------------------------------------------------|--------------------|
+| **cat_mcp** | cat_file_view_tool | 快速查看文件内容 | - `host`:远程主机名/IP(本地采集可不填)
- `file`:查看的文件路径 | 文件内容字符串 |
+
+---
+
+##### chmod_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-------------------------|--------------------------|------------------------------------------------------------------------------|----------------------------|
+| **chmod_mcp** | chmod_change_mode_tool | 修改文件或目录的权限 | - `host`:远程主机名/IP(本地操作可不填)
- `mode`:权限模式(如755、644等)
- `file`:目标文件或目录路径 | 布尔值,表示操作是否成功 |
+
+---
+
+##### chown_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|---------------------------|------------------------------|------------------------------------------------------------------------------|----------------------------|
+| **chown_mcp** | chown_change_owner_tool | 修改文件或目录的所有者和所属组 | - `host`:远程主机名/IP(本地操作可不填)
- `owner_group`:文件所有者和文件关联组
- `file`:要修改的目标文件 | 布尔值,表示操作是否成功 |
+
+---
+
+##### disk_manager_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|--------------------|-----------------------|--------------------------------------------------------------------------|------------------------------------------------------------------------------|------------------------------------------------------------------------------|
+| | top_collect_tool | 获取目标设备(本地/远程)中**内存占用排名前k个**的进程信息,k支持自定义配置 | - `host`:远程主机名/IP(本地采集可不填)
- `k`:需获取的进程数量(默认5) | 进程列表(含`pid`进程ID、`name`进程名称、`memory`内存使用量(MB)) |
+| | get_process_info_tool | 查询指定PID进程的**详细运行信息**,支持本地与远程进程信息获取 | - `host`:远程主机名/IP(本地查询可不填)
- `pid`:需查询的进程ID(必传,且为正整数) | 进程详细字典(含`status`状态、`create_time`创建时间、`cpu_times`CPU时间、`memory_info`内存信息、`open_files`打开文件列表、`connections`网络连接等) |
+| | change_name_to_pid_tool | 根据进程名称反向查询对应的**PID列表**,解决“已知进程名查ID”的场景需求 | - `host`:远程主机名/IP(本地查询可不填)
- `name`:需查询的进程名称(必传,不能为空) | 以空格分隔的PID字符串(如“1234 5678”) |
+| | get_cpu_info_tool | 采集目标设备的CPU硬件与使用状态信息,包括核心数、频率、核心使用率 | - `host`:远程主机名/IP(本地采集可不填) | CPU信息字典(含`physical_cores`物理核心数、`total_cores`逻辑核心数、`max_frequency`最大频率(MHz)、`cpu_usage`各核心使用率(%)等) |
+| | memory_anlyze_tool | 分析目标设备的内存使用情况,计算总内存、可用内存及使用率 | - `host`:远程主机名/IP(本地采集可不填) | 内存信息字典(含`total`总内存(MB)、`available`可用内存(MB)、`used`已用内存(MB)、`percent`内存使用率(%)等) |
+| **disk_manager_mcp** | get_disk_info_tool | 采集目标设备的磁盘分区信息与容量使用状态,过滤临时文件系统(tmpfs/devtmpfs) | - `host`:远程主机名/IP(本地采集可不填) | 磁盘列表(含`device`设备名、`mountpoint`挂载点、`fstype`文件系统类型、`total`总容量(GB)、`percent`磁盘使用率(%)等) |
+| | get_os_info_tool | 获取目标设备的操作系统类型与版本信息,适配OpenEuler、Ubuntu、CentOS等多系统 | - `host`:远程主机名/IP(本地采集可不填) | 操作系统信息字符串(如“OpenEuler 22.03 LTS”或“Ubuntu 20.04.5 LTS”) |
+| | get_network_info_tool | 采集目标设备的网络接口信息,包括IP地址、MAC地址、接口启用状态 | - `host`:远程主机名/IP(本地采集可不填) | 网络接口列表(含`interface`接口名、`ip_address`IP地址、`mac_address`MAC地址、`is_up`接口是否启用(布尔值)等) |
+| | write_report_tool | 将系统信息分析结果写入本地报告文件,自动生成带时间戳的文件路径 | - `report`:报告内容字符串(必传,不能为空) | 报告文件路径字符串(如“/reports/system_report_20240520_153000.txt”) |
+| | telnet_test_tool | 测试目标主机指定端口的Telnet连通性,验证端口开放状态 | - `host`:远程主机名/IP(必传)
- `port`:端口号(1-65535,必传) | 连通性结果(布尔值:`True`成功,`False`失败) |
+| | ping_test_tool | 测试目标主机的ICMP Ping连通性,验证主机网络可达性 | - `host`:远程主机名/IP(必传) | 连通性结果(布尔值:`True`成功,`False`失败) |
+| | get_dns_info_tool | 采集目标设备的DNS配置信息,包括DNS服务器列表与搜索域 | - `host`:远程主机名/IP(本地采集可不填) | DNS信息字典(含`nameservers`DNS服务器列表、`search`搜索域列表) |
+| | perf_data_tool | 采集目标设备的实时性能数据,支持“指定进程”或“全系统”性能监控 | - `host`:远程主机名/IP(本地采集可不填)
- `pid`:进程ID(全系统监控可不填) | 性能数据字典(含`cpu_usage`CPU使用率(%)、`memory_usage`内存使用率(%)、`io_counters`I/O统计信息) |
+
+---
+
+##### echo_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-------------------------|--------------------------|------------------------------------------------------------------------------|----------------------------|
+| **echo_mcp** | echo_write_to_file_tool | 使用echo命令将文本写入文件 | - `host`:远程主机名/IP(本地操作可不填)
- `text`:要写入的文本内容
- `file`:要写入的文件路径
- `options`:echo选项(可选),如"-n"不输出换行符等
- `mode`:写入模式,"w"表示覆盖写入,"a"表示追加写入,默认为"w" | 布尔值,表示写入操作是否成功 |
+
+---
+
+##### fallocate_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|------------------|---------------------------|--------------------------|------------------------------------------------------------------------------|--------------------------------|
+| **fallocate_mcp** | fallocate_create_file_tool | 创建并启用swap文件(修正工具功能描述,与参数匹配) | - `host`:远程主机名/IP(本地采集可不填)
- `name`:swap空间对应的设备或文件路径
- `size`:创建的磁盘空间大小 | 布尔值,表示创建启用swap文件是否成功 |
+
+---
+
+##### file_content_tool_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|------------------------|-------------------------|--------------------------------------------------------------------------|------------------------------------------------------------------------------|------------------------------------------------------------------------------|
+| | file_grep_tool | 通过`grep`命令搜索文件中匹配指定模式的内容(支持正则、大小写忽略等) | - `file_path`:目标文件路径(绝对路径,必填)
- `pattern`:搜索模式(支持正则,如"error",必填)
- `options`:`grep`可选参数(如"-n"显示行号、"-i"忽略大小写,可选)
- `host`:远程主机名/IP(默认`localhost`,本地操作可不填)
- `port`:SSH端口(默认22,远程操作时使用)
- `username`:SSH用户名(默认`root`,远程操作时需指定)
- `password`:SSH密码(远程操作时必填) | - `success`:操作是否成功(布尔值)
- `message`:操作结果描述(如"本地文件搜索完成")
- `data`:包含操作详情的字典
- `host`:操作的主机名/IP
- `file_path`:目标文件路径
- `result`:匹配结果列表(每行一个匹配项) |
+| | file_sed_tool | 通过`sed`命令替换文件中匹配的内容(支持全局替换、原文件修改) | - `file_path`:目标文件路径(绝对路径,必填)
- `pattern`:替换模式(如"s/old/new/g",`g`表示全局替换,必填)
- `in_place`:是否直接修改原文件(布尔值,默认`False`,仅输出结果)
- `options`:`sed`可选参数(如"-i.bak"备份原文件,可选)
- `host`/`port`/`username`/`password`:同`file_grep_tool` | - `success`:操作是否成功(布尔值)
- `message`:操作结果描述(如"远程sed执行成功")
- `data`:包含操作详情的字典
- `host`:操作的主机名/IP
- `file_path`:目标文件路径
- `result`:替换后内容(`in_place=False`时返回) |
+| **file_content_tool_mcp** | file_awk_tool | 通过`awk`命令对文本文件进行高级处理(支持列提取、条件过滤) | - `file_path`:目标文件路径(绝对路径,必填)
- `script`:`awk`处理脚本(如"'{print $1,$3}'"提取1、3列,必填)
- `options`:`awk`可选参数(如"-F:"指定分隔符为冒号,可选)
- `host`/`port`/`username`/`password`:同`file_grep_tool` | - `success`:操作是否成功(布尔值)
- `message`:操作结果描述(如"本地awk处理成功")
- `data`:包含操作详情的字典
- `host`:操作的主机名/IP
- `file_path`:目标文件路径
- `result`:处理结果列表(每行一个结果项) |
+| | file_sort_tool | 通过`sort`命令对文本文件进行排序(支持按列、升序/降序) | - `file_path`:目标文件路径(绝对路径,必填)
- `options`:`sort`可选参数(如"-n"按数字排序、"-k2"按第2列排序、"-r"降序,可选)
- `output_file`:排序结果输出路径(可选,默认不保存到文件)
- `host`/`port`/`username`/`password`:同`file_grep_tool` | - `success`:操作是否成功(布尔值)
- `message`:操作结果描述(如"远程排序完成")
- `data`:包含操作详情的字典
- `host`:操作的主机名/IP
- `file_path`/`output_file`:目标文件/输出文件路径
- `result`:排序结果列表(`output_file`为空时返回) |
+| | file_unique_tool | 通过`unique`命令对文本文件进行去重(支持统计重复次数) | - `file_path`:目标文件路径(绝对路径,必填)
- `options`:`unique`可选参数(如"-u"仅显示唯一行、"-c"统计重复次数,可选)
- `output_file`:去重结果输出路径(可选,默认不保存到文件)
- `host`/`port`/`username`/`password`:同`file_grep_tool` | - `success`:操作是否成功(布尔值)
- `message`:操作结果描述(如"本地去重完成")
- `data`:包含操作详情的字典
- `host`:操作的主机名/IP
- `file_path`/`output_file`:目标文件/输出文件路径
- `result`:去重结果列表(`output_file`为空时返回) |
+| | file_echo_tool | 通过`echo`命令向文件写入内容(支持覆盖/追加模式) | - `content`:要写入的内容(如"Hello World",必填)
- `file_path`:目标文件路径(绝对路径,必填)
- `append`:是否追加内容(布尔值,默认`False`,覆盖原文件)
- `host`/`port`/`username`/`password`:同`file_grep_tool` | - `success`:操作是否成功(布尔值)
- `message`:操作结果描述(如"本地写入成功")
- `data`:包含操作详情的字典
- `host`:操作的主机名/IP
- `file_path`:目标文件路径
- `action`:操作类型("overwrite"覆盖/"append"追加) |
+
+---
+
+##### find_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-------------------------|------------------------------|------------------------------------------------------------------------------|------------------------------------------------|
+| | find_with_name_tool | 基于名称在指定目录下查找文件 | - `host`:远程主机名/IP(本地采集可不填)
- `path`:指定查找的目录
- `name`:要找的文件名 | 查找到的文件列表(含`file`符合查找要求的具体文件路径) |
+| **find_mcp** | find_with_date_tool | 基于修改时间在指定目录下查找文件 | - `host`:远程主机名/IP(本地采集可不填)
- `path`:指定查找的目录
- `date_condition`:修改时间条件(如"-mtime -1"表示1天内修改,补充参数使功能匹配) | 查找到的文件列表(含`file`符合查找要求的具体文件路径) |
+| | find_with_size_tool | 基于文件大小在指定目录下查找文件 | - `host`:远程主机名/IP(本地采集可不填)
- `path`:指定查找的目录
- `size_condition`:文件大小条件(如"+10M"表示大于10MB,补充参数使功能匹配) | 查找到的文件列表(含`file`符合查找要求的具体文件路径) |
+
+---
+
+##### flame_graph_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|------------------|-----------------------| ----------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- |
+| **flame_graph_mcp** | flame_graph | 基于 `perf.data` 生成 CPU 火焰图,用于性能分析(支持本地/远程) | - `host`:远程主机地址(可选)
- `perf_data_path`:perf.data 输入路径(必选)
- `output_path`:SVG 输出路径(默认:\~/cpu\_flamegraph.svg)
- `flamegraph_path`:FlameGraph 脚本路径(必选) | - `svg_path`:生成的火焰图文件路径
- `status`:生成状态(success / failure)
- `message`:状态信息 |
+
+---
+
+##### free_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-----------------------|--------------------------------------------|------------------------------------------------------------------------------|------------------------------------------------------------------------------|
+| **free_mcp** | free_collect_tool | 获取目标设备(本地/远程)中内存整体状态信息 | - `host`:远程主机名/IP(本地采集可不填) | 内存信息列表(含`total`系统内存总量(MB)、`used`系统已使用内存量(MB)、`free`空闲物理内存(MB)、`available`系统可分配内存(MB)) |
+
+---
+
+##### func_timing_trace_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|------------------------|---------------------------| ------------------------------------------ | -------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
+| **func_timing_trace_mcp** | func_timing_trace_tool | 使用 `perf record -g` 采集目标进程的函数调用栈耗时,并解析热点函数 | - `pid`:目标进程 PID
- `host`:可选,远程主机 IP/域名;留空则采集本机 | `top_functions`:函数耗时分析结果,包含列表,每项包括:
• `function`:函数名
• `self_percent`:函数自身耗时占比
• `total_percent`:函数总耗时占比
• `call_stack`:函数调用栈 |
+
+---
+
+##### grep_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-----------------------|--------------------------|------------------------------------------------------------------------------|------------------------------------------------|
+| **grep_mcp** | grep_search_tool | 在文件中搜索指定模式的内容 | - `host`:远程主机名/IP(本地搜索可不填)
- `options`:grep选项(可选),如"-i"忽略大小写,"-n"显示行号等
- `pattern`:要搜索的模式(支持正则表达式)
- `file`:要搜索的文件路径 | 包含匹配行的字符串,如果没有找到匹配项则返回相应的提示信息 |
+
+---
+
+##### head_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-----------------------|--------------------------|------------------------------------------------------------------------------|--------------------|
+| **head_mcp** | head_file_view_tool | 快速查看文件开头部分内容 | - `host`:远程主机名/IP(本地采集可不填)
- `num`:查看文件开头行数,默认为10行
- `file`:查看的文件路径 | 文件内容字符串 |
+
+---
+
+##### hotspot_trace_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|--------------------|-------------------------| ---------------------------------------------------- | ------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
+| **hotspot_trace_mcp** | hotspot_trace_tool | 使用 `perf record` 和 `perf report` 分析系统或指定进程的 CPU 性能瓶颈 | - `host`:远程主机名/IP(可选,不填则分析本机)
- `pid`:目标进程 ID(可选,不填则分析整机) | - `total_samples`:总样本数
- `event_count`:事件计数(如 cycles)
- `hot_functions`:热点函数列表(按 Children 百分比排序,包含函数名、库、符号类型和占比) |
+
+---
+
+##### numa_bind_docker_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|------------------------|---------------------------| ------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- |
+| **numa_bind_docker_mcp** | numa_bind_docker_tool | 使用 `numactl` 将指定 NUMA 绑定参数插入到镜像原有的 ENTRYPOINT / CMD 前,运行 Docker 容器(本地/远程) | - `image`:镜像名称
- `cpuset_cpus`:允许使用的 CPU 核心范围
- `cpuset_mems`:允许使用的内存节点
- `detach`:是否后台运行容器(默认 False)
- `host`:远程主机名/IP(可选) | - `status`:操作状态(success / error)
- `message`:操作结果信息
- `output`:命令的原始输出(如有) |
+
+---
+
+##### numa_bind_proc_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|------------------------|---------------------------| ------------------------------------------------ | --------------------------------------------------------------------------------------------------- | ------------------------------------------------- |
+| **numa_bind_proc_mcp** | numa_bind_proc_tool | 使用 `numactl` 命令在指定的 NUMA 节点和内存节点上运行程序(支持本地/远程执行) | - `host`:远程主机名/IP(本地可不填)
- `numa_node`:NUMA 节点编号(整数)
- `memory_node`:内存节点编号(整数)
- `program_path`:程序路径(必填) | `stdout`:程序标准输出、`stderr`:程序标准错误、`exit_code`:程序退出码 |
+
+---
+
+##### numa_container_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|--------------------|-------------------------| -------------------------------------- | --------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
+| **numa_container_mcp** | numa_container | 监控指定 Docker 容器的 NUMA 内存访问情况(支持本地/远程执行) | - `container_id`:要监控的容器 ID 或名称
- `host`:远程主机地址(可选,若为空则在本地执行) | - `status`:操作状态(success / error)
- `message`:操作结果信息
- `output`:NUMA 内存访问统计信息(包含每个 NUMA 节点的内存使用情况) |
+
+---
+
+##### numa_cross_node_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------------|---------------------------| ------------------------------- | ------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
+| **numa_cross_node_mcp** | numa_cross_node | 自动检测 NUMA 跨节点访问异常的进程(支持本地与远程主机) | - `host`:远程主机 IP/域名(可选,留空则检测本机)
- `threshold`:跨节点内存比例阈值(默认 30%) | `overall_conclusion`:整体结论(是否存在问题、严重程度、摘要),`anomaly_processes`:异常进程列表(包含 `pid`、`local_memory`、`remote_memory`、`cross_ratio`、`name`、`command`) |
+
+---
+
+##### numa_diagnose_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|--------------------|-------------------------| --------------------------------------------- | ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
+| **numa_diagnose_mcp** | numa_diagnose | 获取 NUMA 架构硬件监控信息,包括 CPU 实时频率、规格参数以及 NUMA 拓扑结构 | - `host`:远程主机地址(可选,不填则在本地执行) | - `real_time_frequencies`:各 CPU 核心实时频率 (MHz)
- `specifications`:CPU 规格信息(型号 / 频率范围 / NUMA 节点)
- `numa_topology`:NUMA 拓扑结构 |
+
+---
+
+##### numa_perf_compare_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|------------------------|---------------------------| ------------------------------- | ---------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
+| **numa_perf_compare_mcp** | numa_perf_compare | 执行NUMA基准测试,支持本地绑定、跨节点绑定和不绑定三种策略 | - `benchmark`:基准测试可执行文件路径(如 `/root/mcp_center/stream`)
- `host`:远程主机名称或IP地址(可选) | `numa_nodes`:系统NUMA节点数量
`test_results`:包含三种绑定策略的测试结果
`timestamp`:执行时间
`error`:错误信息(如有) |
+
+---
+
+##### numa_rebind_proc_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|------------------------|---------------------------| -------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------- |
+| **numa_rebind_proc_mcp** | numa_rebind_proc_tool | 修改已运行进程的 NUMA 内存绑定,使用 migratepages 工具将进程的内存从一个 NUMA 节点迁移到另一个节点 | - `pid`:进程 ID
- `from_node`:当前内存所在的 NUMA 节点编号
- `to_node`:目标 NUMA 节点编号
- `host`:远程主机 IP 或名称(可选) | `status`:操作状态(success / error)
`message`:操作结果信息
`output`:命令的原始输出(如有) |
+
+---
+
+##### numa_topo_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|--------------------|-------------------------| ------------------------------- | ---------------------------------- | --------------------------------------------------------------------------------------------------------------------- |
+| **numa_topo_mcp** | numa_topo_tool | 使用 numactl 获取本地或远程主机的 NUMA 拓扑信息 | - `host`:远程主机名称或 IP(可选,不填表示获取本机信息) | - `nodes_total`:总节点数
- `nodes`:节点信息列表,每个节点包含:`node_id`(节点 ID)、`cpus`(CPU 列表)、`size_mb`(内存大小 MB)、`free_mb`(空闲内存 MB) |
+
+---
+
+##### numastat_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|--------------------|-------------------------| ------------------------------------ | ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
+| **numastat_mcp** | numastat_info_tool | 使用 `numastat` 命令获取本地或远程主机的 NUMA 统计信息 | - `host`:远程主机名称或 IP,若不提供则获取本机信息 | `numa_hit`: NUMA 命中次数、`numa_miss`: NUMA 未命中次数、`numa_foreign`: 外部访问次数、`interleave_hit`: 交错命中次数、`local_node`: 本地节点访问次数、`other_node`: 其他节点访问次数 |
+
+---
+
+##### nvidia_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-------------------------|-------------------------------------------|------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------|
+| | nvidia_smi_status | 输出结构化 GPU 状态数据(JSON 友好) | - `host`:远程主机 IP/hostname(本地可不填)
- `port`:SSH 端口(默认 22)
- `username`/`password`:远程查询必填
- `gpu_index`:指定 GPU 索引(可选)
- `include_processes`:是否包含进程信息(默认 False) | - `success`:查询成功与否
- `message`:结果描述
- `data`:结构化数据,包含:
- `host`:主机地址
- `gpus`:GPU 列表(含索引、型号、利用率、显存等) |
+| **nvidia_mcp** | nvidia_smi_raw_table | 输出 `nvidia-smi` 原生表格(保留原始格式) | - `host`:远程主机 IP/hostname(本地可不填)
- `port`:SSH 端口(默认 22)
- `username`/`password`:远程查询必填 | - `success`:查询成功与否
- `message`:结果描述
- `data`:原始表格数据,包含:
- `host`:主机地址
- `raw_table`:`nvidia-smi` 原生表格字符串(含换行和格式) |
+
+---
+
+##### perf_interrupt_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|--------------------|-------------------------| ---------------------------- | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
+| **perf_interrupt_mcp** | perf_interrupt_health_check | 检查系统中断统计信息,以定位高频中断导致的 CPU 占用 | - `host`:远程主机名称或 IP 地址,若不提供则获取本机信息 | 返回一个包含中断信息的列表,每个元素包含:`irq_number` 中断编号、`total_count` 总触发次数、`device` 设备名称、`cpu_distribution` 各 CPU 核心的中断分布、`interrupt_type` 中断类型 |
+
+---
+
+##### rm_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-----------------------|--------------------------|------------------------------------------------------------------------------|----------------------------|
+| **rm_mcp** | rm_collect_tool | 对文件或文件夹进行删除 | - `host`:远程主机名/IP(本地采集可不填)
- `path`:要进行删除的文件或文件夹路径 | 布尔值,表示rm操作是否成功 |
+
+---
+
+##### sar_mcp
+
+|MCP_Server名称|MCP_Tool列表|工具功能|核心输入参数|关键返回内容|
+|---|---|---|---|---|
+||sar_cpu_collect_tool|分析CPU使用的周期性规律|- `host`:远程主机名/IP(本地采集可不填)
- `interval`:监控的时间间隔
- `count`:监控次数|采集指标列表:含`timestamp`采集时间点、`user`用户空间程序占用CPU的百分比、`nice`低优先级用户进程占用的CPU百分比、`system`内核空间程序占用CPU的百分比、`iowait`CPU等待磁盘I/O操作的时间百分比、`steal`虚拟化环境中其他虚拟机占用的CPU时间百分比、`idle`CPU空闲时间百分比|
+||sar_memory_collect_tool|分析内存资源使用的周期性规律|- `host`:远程主机名/IP(本地采集可不填)
- `interval`:监控的时间间隔
- `count`:监控次数|采集指标列表:含`timestamp`采集时间点、`kbmemfree`物理空闲内存量、`kbavail`实际可用内存、`kbmemused`已使用的物理内存、`memused`已用内存占总物理内存的百分比、`kbbuffers`内核缓冲区(Buffer)占用的内存、`kbcached`内核缓存(Cache)占用的内存、`kbcommit`当前工作负载所需的总内存量、`commit`kbcommit占系统总可用内存百分比、`kbactive`活跃内存、`kbinact`非活跃内存、`kbdirty`等待写入磁盘的脏数据量|
+||sar_disk_collect_tool|分析磁盘IO使用的周期性规律|- `host`:远程主机名/IP(本地采集可不填)
- `interval`:监控的时间间隔
- `count`:监控次数|采集指标列表:含`timestamp`采集时间点、`name`磁盘设备名称、`tps`每秒传输次数、`rkB_s`每秒读取的数据量、`wkB_s`每秒写入的数据量、`dkB_s`每秒丢弃的数据量、`areq-sz`平均每次I/O请求的数据大小、`aqu-sz`平均I/O请求队列长度、`await`平均每次I/O请求的等待时间、`util`设备带宽利用率|
+|**sar_mcp**|sar_network_collect_tool|分析网络流量的周期性规律|- `host`:远程主机名/IP(本地采集可不填)
- `interval`:监控的时间间隔
- `count`:监控次数|采集指标列表:含`timestamp`采集时间点、`iface`网络接口名称、`rxpck_s`每秒接收的数据包数量、`txpck_s`每秒发送的数据包数量、`rxkB_s`每秒接收的数据量、`txkB_s`每秒发送的数据量、`rxcmp_s`每秒接收的压缩数据包数、`txcmp_s`每秒发送的压缩数据包数、`rxmcst_s`每秒接收的多播数据包数、`ifutil`网络接口带宽利用率|
+||sar_cpu_historicalinfo_collect_tool|进行历史状态分析,排查过去某时段cpu的性能问题|- `host`:远程主机名/IP(本地查询可不填)
- `file`:sar要分析的log文件
- `starttime`:分析开始的时间点
- `endtime`:分析结束的时间点|采集指标列表:含`timestamp`采集时间点、`user`用户空间程序占用CPU的百分比、`nice`低优先级用户进程占用的CPU百分比、`system`内核空间程序占用CPU的百分比、`iowait`CPU等待磁盘I/O操作的时间百分比、`steal`虚拟化环境中其他虚拟机占用的CPU时间百分比、`idle`CPU空闲时间百分比|
+||sar_memory_historicalinfo_collect_tool|进行历史状态分析,排查过去某时段内存的性能问题|- `host`:远程主机名/IP(本地查询可不填)
- `file`:sar要分析的log文件
- `starttime`:分析开始的时间点
- `endtime`:分析结束的时间点|采集指标列表:含`timestamp`采集时间点、`kbmemfree`物理空闲内存量、`kbavail`实际可用内存、`kbmemused`已使用的物理内存、`memused`已用内存占总物理内存的百分比、`kbbuffers`内核缓冲区(Buffer)占用的内存、`kbcached`内核缓存(Cache)占用的内存、`kbcommit`当前工作负载所需的总内存量、`commit`kbcommit占系统总可用内存百分比、`kbactive`活跃内存、`kbinact`非活跃内存、`kbdirty`等待写入磁盘的脏数据量|
+||sar_disk_historicalinfo_collect_tool|进行历史状态分析,排查过去某时段磁盘IO的性能问题|- `host`:远程主机名/IP(本地查询可不填)
- `file`:sar要分析的log文件
- `starttime`:分析开始的时间点
- `endtime`:分析结束的时间点|采集指标列表:含`timestamp`采集时间点、`name`磁盘设备名称、`tps`每秒传输次数、`rkB_s`每秒读取的数据量、`wkB_s`每秒写入的数据量、`dkB_s`每秒丢弃的数据量、`areq-sz`平均每次I/O请求的数据大小、`aqu-sz`平均I/O请求队列长度、`await`平均每次I/O请求的等待时间、`util`设备带宽利用率|
+||sar_network_historicalinfo_collect_tool|进行历史状态分析,排查过去某时段网络的性能问题|- `host`:远程主机名/IP(本地查询可不填)
- `file`:sar要分析的log文件
- `starttime`:分析开始的时间点
- `endtime`:分析结束的时间点|采集指标列表:含`timestamp`采集时间点、`iface`网络接口名称、`rxpck_s`每秒接收的数据包数量、`txpck_s`每秒发送的数据包数量、`rxkB_s`每秒接收的数据量、`txkB_s`每秒发送的数据量、`rxcmp_s`每秒接收的压缩数据包数、`txcmp_s`每秒发送的压缩数据包数、`rxmcst_s`每秒接收的多播数据包数、`ifutil`网络接口带宽利用率|
+
+---
+
+##### sed_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-----------------------|--------------------------|------------------------------------------------------------------------------|----------------------------|
+| **sed_mcp** | sed_text_replace_tool | 在文件中替换指定模式的文本 | - `host`:远程主机名/IP(本地操作可不填)
- `options`:sed选项(可选),如"-i"直接修改文件
- `pattern`:要替换的模式(支持正则表达式)
- `replacement`:替换后的文本
- `file`:要操作的文件路径 | 布尔值,表示操作是否成功 |
+| | sed_text_delete_tool | 删除文件中匹配模式的行 | - `host`:远程主机名/IP(本地操作可不填)
- `options`:sed选项(可选),如"-i"直接修改文件
- `pattern`:要删除的行的模式(支持正则表达式)
- `file`:要操作的文件路径 | 布尔值,表示操作是否成功 |
+
+---
+
+##### strace_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-----------------------------|--------------------------------------------|------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------|
+| | strace_track_file_process | 跟踪进程的文件操作和运行状态(如打开、读取、写入文件等) | - `pid`:目标进程PID(必填)
- `host`:远程主机IP/hostname(本地跟踪可不填)
- `port`:SSH端口(默认22)
- `username`/`password`:远程跟踪时必填
- `output_file`:日志路径(可选)
- `follow_children`:是否跟踪子进程(默认False)
- `duration`:跟踪时长(秒,可选) | - `success`:跟踪启动状态
- `message`:结果描述
- `strace_pid`:跟踪进程ID
- `output_file`:日志路径
- `target_pid`/`host`:目标进程及主机信息 |
+| **strace_mcp** | strace_check_permission_file| 排查进程的"权限不足"和"文件找不到"错误 | - `pid`:目标进程PID(必填)
- 远程参数(`host`/`port`/`username`/`password`)
- `output_file`:日志路径(可选)
- `duration`:跟踪时长(默认30秒) | - 基础状态信息(`success`/`message`等)
- `errors`:错误统计字典,包含:
- 权限不足错误详情
- 文件找不到错误详情 |
+| | strace_check_network | 诊断进程网络问题(连接失败、超时、DNS解析等) | - `pid`:目标进程PID(必填)
- 远程参数(同上)
- `output_file`:日志路径(可选)
- `duration`:跟踪时长(默认30秒)
- `trace_dns`:是否跟踪DNS调用(默认True) | - 基础状态信息
- `errors`:网络错误统计,包含:
- 连接被拒绝、超时等错误
- DNS解析失败详情(若启用) |
+| | strace_locate_freeze | 定位进程卡顿原因(IO阻塞、锁等待等慢操作) | - `pid`:目标进程PID(必填)
- 远程参数(同上)
- `output_file`:日志路径(可选)
- `duration`:跟踪时长(默认30秒)
- `slow_threshold`:慢操作阈值(默认0.5秒) | - 基础状态信息
- `analysis`:卡顿分析字典,包含:
- 慢操作调用详情
- 阻塞类型分类统计
- 耗时最长的系统调用 |
+
+---
+
+##### strace_syscall_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-----------------------|--------------------------|------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------|
+| **strace_syscall_mcp** | strace_syscall | 采集指定进程的系统调用统计信息 | - `host`:可选,远程主机地址
- `pid`:目标进程ID(必填)
- `timeout`:采集超时时间,默认10秒 | List\[Dict],每个字典包含:
- `syscall`:系统调用名称
- `total_time`:总耗时(秒)
- `call_count`:调用次数
- `avg_time`:平均耗时(微秒)
- `error_count`:错误次数 |
+
+---
+
+##### swapoff_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-----------------------------|--------------------------------------------|------------------------------------------------------------------------------|----------------------------|
+| **swapoff_mcp** | swapoff_disabling_swap_tool | 停用交换空间(Swap),释放已启用的交换分区或交换文件,将其从系统内存管理中移除 | - `host`:远程主机名/IP(本地采集可不填)
- `name`:停用的swap空间路径 | 布尔值,表示停用指定swap空间是否成功 |
+
+---
+
+##### swapon_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-----------------------|--------------------------|------------------------------------------------------------------------------|----------------------------|
+| **swapon_mcp** | swapon_collect_tool | 获取目标设备(本地/远程)中当前swap设备状态 | - `host`:远程主机名/IP(本地采集可不填) | swap设备列表(含`name`swap空间对应的设备或文件路径、`type`swap空间的类型、`size`swap空间的总大小、`used`当前已使用的swap空间量、`prio`swap空间的优先级) |
+
+---
+
+##### tail_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-----------------------|--------------------------|------------------------------------------------------------------------------|----------------------------|
+| **tail_mcp** | tail_file_view_tool | 快速查看文件末尾部分内容 | - `host`:远程主机名/IP(本地采集可不填)
- `num`:查看文件末尾行数,默认为10行
- `file`:查看的文件路径 | 文件内容字符串 |
+
+---
+
+##### tar_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-----------------------|--------------------------|------------------------------------------------------------------------------|----------------------------|
+| **tar_mcp** | tar_extract_file_tool | 使用tar命令解压文件或目录 | - `host`:远程主机名称或IP地址,若不提供则表示对本机文件进行修改
- `options`:tar命令选项(如`-xzvf`等)
- `file`:压缩包文件路径
- `extract_path`:指定解压目录 | 布尔值,表示解压操作是否成功 |
+| | tar_compress_file_tool | 使用tar命令压缩文件或目录 | - `host`:远程主机名称或IP地址,若不提供则表示对本机文件进行压缩
- `options`:tar命令选项(如`-czvf`、`-xzvf`等)
- `source_path`:需要压缩的文件或目录路径
- `archive_path`:压缩包输出路径 | 布尔值,表示压缩操作是否成功 |
+
+---
+
+##### touch_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|---------------------------|--------------------------|------------------------------------------------------------------------------|----------------------------|
+| **touch_mcp** | touch_create_files_tool | 进行文件快速初始化、批量创建 | - `host`:远程主机名/IP(本地采集可不填)
- `file`:创建的文件名 | 布尔值,表示touch操作是否成功 |
+| | touch_timestamp_files_tool | 进行文件时间戳校准与模拟 | - `host`:远程主机名/IP(本地查询可不填)
- `options`:更新访问时间\更新修改时间(`-a`表示仅更新访问时间、`-m`表示仅更新修改时间)
- `file`:文件名 | 布尔值,表示touch操作是否成功 |
+
+---
+
+##### vmstat_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-----------------------------|--------------------------|------------------------------------------------------------------------------|----------------------------|
+| **vmstat_mcp** | vmstat_collect_tool | 获取目标设备资源整体状态 | - `host`:远程主机名/IP(本地采集可不填) | 系统资源状态字典(含`r`运行队列进程数、`b`等待 I/O 的进程数、`si`每秒从磁盘加载到内存的数据量(KB/s)、`so`每秒从内存换出到磁盘的数据量(KB/s)、`bi`从磁盘读取的块数、`bo`写入磁盘的块数、`in`每秒发生的中断次数(含时钟中断)、`cs`每秒上下文切换次数、`us`用户进程消耗 CPU 时间、`sy`内核进程消耗 CPU 时间、`id`CPU 空闲时间、`wa`CPU 等待 I/O 完成的时间百分比、`st`被虚拟机偷走的 CPU 时间百分比) |
+| | vmstat_slabinfo_collect_tool | 获取内核 slab 内存缓存(slabinfo)的统计信息 | - `host`:远程主机名/IP(本地查询可不填) | slab内存缓存信息详细字典(含`cache`内核中slab缓存名称、`num`当前活跃的缓存对象数量、`total`该缓存的总对象数量、`size`每个缓存对象的大小、`pages`每个slab中包含的缓存对象数量) |
+
+---
+
+##### zip_mcp
+
+| MCP_Server名称 | MCP_Tool列表 | 工具功能 | 核心输入参数 | 关键返回内容 |
+|----------------|-----------------------|--------------------------|------------------------------------------------------------------------------|----------------------------|
+| **zip_mcp** | zip_extract_file_tool | 使用unzip命令解压zip文件 | - `host`:远程主机名称或IP地址,若不提供则表示对本机文件进行修改
- `file`:压缩包文件路径
- `extract_path`:指定解压目录 | 布尔值,表示解压操作是否成功 |
+| | tar_compress_file_tool | 使用zip命令压缩文件或目录 | - `host`:远程主机名称或IP地址,若不提供则表示对本机文件进行压缩
- `source_path`:需要压缩的文件或目录路径
- `archive_path`:压缩包输出路径 | 布尔值,表示压缩操作是否成功 |