Token导航 LogoToken导航TokenDH.com
Aegis Cluster MCP logo
运维云端stdio官方级别未说明来源级核验

Aegis Cluster MCP

MCP Server

一个允许Claude直接查询和操作基础设施的MCP服务器,提供对Aegis家庭实验室集群各层的访问,包括Proxmox虚拟机、TrueNAS存储、OPNsense防火墙等。

工具数

19

提示词数

0

GitHub Stars

0

资源数

0
集群管理安全PythonClaudeClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

MichealBreedlove

提供方

MichealBreedlove

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install -e .

详细介绍

神盾集群mcp

MCP(模型上下文协议)服务器,使Claude本机工具能够访问Aegis家庭实验室集群的每一层——Proxmox管理程序、TrueNAS存储、OPNsense防火墙、Prometheus警报、Wazuh SIEM和OpenClaw代理VM。

由Micheal Breedlove构建,既是生产运营工具,也是网络安全/基础设施工程组合。

______________________________________________________________________

这是什么

该服务器允许Claude,而不是将API输出复制到Claude中 直接查询您的基础架构并对其采取行动 作为原生MCP工具。你用简单的英语问了一个问题;Claude调用正确的工具,解析响应,并给出基于实时集群状态的答案。

6个子系统中的20个工具:

子系统工具
Proxmox(新星/米拉/奥林)get_cluster_health, get_node_status, get_proxmox_alerts, list_vms, get_vm_status, restart_vm, get_vm_logs
TrueNAS比例尺get_zfs_pools, get_zfs_datasets, get_truenas_alerts
NFS/SSHcheck_nfs_mounts, get_agent_status, get_agent_logs
OPNsenseget_opnsense_status, get_dns_entries
普罗米修斯get_prometheus_alerts, get_prometheus_targets
瓦祖get_wazuh_agents, get_recent_alerts

______________________________________________________________________

快速开始

1.克隆并安装

git clone https://github.com/yourusername/aegis-cluster-mcp.git
cd aegis-cluster-mcp
pip install -e .

2.配置凭据

cp config/.env.example config/.env
# Edit config/.env with your actual credentials

3.用克劳德代码注册

claude mcp add aegis-cluster --command aegis-mcp

或添加到您的 ~/.claude/mcp_servers.json 手动:

{
  "aegis-cluster": {
    "command": "aegis-mcp",
    "env": {
      "PROXMOX_TOKEN_SECRET": "your-secret-here",
      "TRUENAS_API_KEY": "your-key-here"
    }
  }
}

4.验证其是否正常工作

在克劳德代码中:

Use get_cluster_health to check the status of all three Proxmox nodes.

______________________________________________________________________

环境变量参考

所有凭据都是从环境变量中读取的。永远不要硬编码秘密。

Proxmox

变量默认值描述
PROXMOX_NOVA_HOST10.1.1.2Nova(PROXMOX-1)主机名/IP
PROXMOX_MIRA_HOST10.1.1.4Mira(PROXMOX-2)主机名/IP
PROXMOX_ORIN_HOST10.1.1.5Orin(PROXMOX-3)主机名/IP
PROXMOX_PORT8006Proxmox API端口
PROXMOX_TOKEN_ID-中的API令牌 user@realm!tokenid 格式
PROXMOX_TOKEN_SECRET-API令牌机密值
PROXMOX_VERIFY_SSLfalse验证TLS证书

在Proxmox:Datacenter中创建API令牌→ API令牌→ Add. 所需的最小权限: VM.Audit, Datastore.Audit, Sys.Audit.

TrueNAS

变量默认值描述
TRUENAS_HOST10.1.1.11TrueNAS主机名/IP
TRUENAS_API_KEY-TrueNAS API密钥(凭据→ API密钥)
TRUENAS_VERIFY_SSLfalse验证TLS证书

OPNsense

变量默认值描述
OPNSENSE_HOST10.1.1.1OPNsense主机名/IP
OPNSENSE_API_KEY-API密钥(系统→ 访问→ 用户→ Edit → API密钥)
OPNSENSE_API_SECRET-API机密
OPNSENSE_VERIFY_SSLfalse验证TLS证书

普罗米修斯/格拉法纳

变量默认值描述
PROMETHEUS_HOST10.1.70.25普罗米修斯主机名/IP
PROMETHEUS_PORT9090普罗米修斯港
GRAFANA_HOST10.1.70.25Grafana主机名/IP
GRAFANA_PORT3000 格拉夫港口。
PROMETHEUS_USER_(空)_可选基本身份验证用户
PROMETHEUS_PASSWORD_(空)_可选基本身份验证密码

瓦祖

变量默认值描述
WAZUH_HOST10.1.1.26Wazuh管理器主机名/IP
WAZUH_PORT55000Wazuh API端口
WAZUH_USERwazuhAPI用户名
WAZUH_PASSWORD-API密码
WAZUH_VERIFY_SSLfalse验证TLS证书

OpenClaw代理虚拟机

变量默认值描述
AGENT_NOVA_HOST10.1.20.21Nova代理VM IP
AGENT_MIRA_HOST10.1.20.22Mira代理VM IP
AGENT_ORIN_HOST10.1.20.23Orin代理VM IP
AGENT_SSH_USERopenclawSSH用户名
AGENT_SSH_KEY_PATH_(空)_SSH私钥路径(推荐)
AGENT_SSH_PASSWORD_(空)_SSH密码(不推荐)
AGENT_SSH_PORT22SSH端口
SSH_TIMEOUT10SSH连接超时(秒)

NFS挂载

变量默认值描述
NFS_NOVA_HOST10.1.1.2NFS实时挂载的主机(Nova)
NFS_MOUNT_OPENCLAW/mnt/openclawOpenClaw NFS装载路径
NFS_MOUNT_SHARED/mnt/openclaw-shared共享NFS装载路径
NFS_SERVER10.1.40.11NFS服务器IP

将军

变量默认值描述
LOG_LEVELINFO日志记录级别:调试、信息、警告、错误
HTTP_TIMEOUT30HTTP请求超时(秒)

______________________________________________________________________

克劳德互动示例

上午集群检查

你: 检查群集运行状况,并告诉我是否需要注意。

克劳德打电话来 get_cluster_health()get_proxmox_alerts()get_truenas_alerts()get_prometheus_alerts() 并为您提供一份包含可操作项目的综合状态报告。

______________________________________________________________________

NFS挂载调试

你: openclaw NFS装载再次失败。你能检查一下并告诉我怎么了吗?

克劳德打电话来 check_nfs_mounts() 它测试两个挂载的实际读/写I/O,检测过时的NFS句柄、卸载错误和权限错误,并建议正确的补救措施。

______________________________________________________________________

安全分流

你: 显示集群中过去6小时的任何关键Wazuh警报。

克劳德打电话来 get_recent_alerts(hours=6)get_wazuh_agents() 为了交叉引用连接的代理,然后根据代理上下文按严重程度总结警报。

______________________________________________________________________

VM故障排除

你: mira上的VM 105似乎很慢。它当前的CPU和内存使用情况如何?

克劳德打电话来 get_vm_status(node="mira", vmid=105) 并返回详细的资源利用率。如果您要求它重新启动:“在mira上重新启动VM 105”→ 克劳德打电话来 restart_vmconfirm=False 首先,向您显示确认请求,然后用重新呼叫 confirm=True 只有在你批准之后。

______________________________________________________________________

基础设施审计

你: 给我一份nova上运行的所有东西的完整清单。

克劳德打电话来 list_vms(node="nova") 并返回每个VM和容器的状态、CPU、内存和正常运行时间,这些数据与您从中获得的数据相同 pvesh get /nodes/pve/qemu 但无需离开您的聊天窗口。

______________________________________________________________________

普罗米修斯警报路由

你: 普罗米修斯当前正在触发哪些警报,哪些节点受到影响?

克劳德打电话来 get_prometheus_alerts() → 交叉引用实例 get_prometheus_targets() → 通过IP将警报实例映射回集群节点。

______________________________________________________________________

安全模型

默认情况下为只读。 所有查询工具(除 restart_vm)是非破坏性的GET操作。他们无法修改群集状态。

破坏性操作需要明确确认。 restart_vm 将拒绝执行,除非 confirm=True 明确传递。当Claude在没有确认的情况下调用此工具时,它会收到一个错误响应,提示它先与您确认——Claude将在聊天中向您显示确认。

凭证永远不会离开你的机器。 所有API令牌、密码和SSH密钥都是从运行MCP服务器的机器上的环境变量加载的。它们从未被发送到Anthropic或存储在克劳德的上下文中。

最小特权原则。 每个子系统使用所需的最低API权限:

  • Proxmox: VM.Audit + Datastore.Audit + Sys.Audit (只读令牌)
  • TrueNAS:只读API密钥
  • OPNsense:只读API用户
  • 瓦祖: agents:read + alerts:read 权限

没有出站连接。 服务器仅与您的本地集群IP进行通信。没有数据离开您的网络。

______________________________________________________________________

发展

运行测试

pip install -e ".[dev]"
pytest tests/ -v

项目结构

aegis-cluster-mcp/
├── src/aegis_mcp/
│   ├── server.py       # MCP server, tool registration, dispatch
│   ├── proxmox.py      # Proxmox API client (proxmoxer)
│   ├── truenas.py      # TrueNAS API client (httpx)
│   ├── opnsense.py     # OPNsense API client (httpx)
│   ├── prometheus.py   # Prometheus API client (httpx)
│   ├── wazuh.py        # Wazuh API client (httpx + JWT auth)
│   └── ssh_health.py   # SSH health checks (paramiko)
├── config/
│   └── .env.example    # Credential reference
├── docs/
│   └── tools.md        # Full tool reference with example output
├── tests/
│   └── test_tools.py   # Unit tests with mocked responses
└── pyproject.toml

添加新工具

  1. 将实现功能添加到相关模块中(proxmox.py, truenas.py等等)
  2. 在中注册该工具 server.py --添加到 TOOLS 在中列出并添加调度案例 call_tool()
  3. 将测试添加到 tests/test_tools.py
  4. 文档在 docs/tools.md

______________________________________________________________________

集群参考

主机IP角色
新星(PROXMOX-1)10.1.1.2主Proxmox节点,TrueNAS主机
米拉(PROXMOX-2)10.1.1.4Proxmox节点
奥林(PROXMOX-3)10.1.1.5Proxmox节点
TrueNAS。 10.1.1.11ZFS存储(Nova上的VM 200)
OPNsense10.1.1.1防火墙/网关
普罗米修斯/格拉法纳10.1.70.25监控堆栈
瓦祖10.1.1.26 ,SIEM 。
Nova探员10.1.20.21Nova上的OpenClaw代理VM
米拉探员10.1.20.22Mira上的OpenClaw代理VM
奥特工10.1.20.23Orin上的OpenClaw代理VM
贾斯珀10.1.1.150游戏PC,运行OpenClaw主代理
NFS服务器10.1.40.11NFS存储服务器

______________________________________________________________________

许可证

麻省理工学院

目录标签

目录标签

集群管理安全PythonClaude本地部署基础设施自动化网络安全监控工具API集成

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

19

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP