Token导航 LogoToken导航TokenDH.com
Unraid Ssh MCP Share logo
安全风控stdio官方级别未说明来源级核验

Unraid Ssh MCP Share

MCP Server

一个为Unraid服务器提供安全SSH访问的MCP服务器,内置Docker管理、文件操作和系统监控工具,并具备安全控制机制。

工具数

16

提示词数

0

GitHub Stars

0

资源数

0
文件操作PythonClaude系统监控Claude DesktopClaude

安装说明

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

作者 / 组织

fraggell-tools

提供方

fraggell-tools

最后核验

2026/5/17 20:20

运行时

Python

快速接入

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

命令预览

uv run unraid-ssh-mcp

详细介绍

unraid ssh mcp

A. 装有护栏的 MCP服务器,为Claude(或任何MCP客户端)提供对Unraid服务器的SSH访问权限,并内置安全控制。

服务器没有公开原始shell,而是为Docker管理、文件操作和系统监控提供了专门构建的工具。危险的命令在到达服务器之前就被阻止了。

为什么?

官方的 unraid mcp 服务器使用GraphQL API,涵盖阵列运行状况、磁盘状态和基本容器启动/停止,但它 不能docker exec,查看容器环境变量、读取日志文件或编辑配置。

这台服务器通过SSH填补了这个空白,并配有护栏,这样克劳德就不会意外 rm -rf / 你的闪存盘。

______________________________________________________________________

特性

Docker工具

工具说明
docker_exec在容器内运行命令
docker_exec_it运行交互式命令(使用伪TTY)
docker_logs查看容器日志(带尾部/尾部)
docker_inspect完整的容器详细信息,包括环境变量、端口、挂载
docker_start启动已停止的容器
docker_stop停止正在运行的容器
docker_restart重新启动容器
docker_stats所有容器的实时资源使用情况
docker_cp在容器和主机之间复制文件

文件系统工具

工具说明
read_file读取文件(阻止敏感路径)
write_file仅写入允许的路径(/mnt/user, /tmp等等)
list_directory列出目录内容
find_files按名称模式搜索文件

系统工具

工具说明
system_overview正常运行时间、CPU、内存、磁盘使用率、顶级进程
run_command配备全护栏的总指挥部
tail_log跟踪日志文件

______________________________________________________________________

安全模型

在主机上被阻止

这些命令是 从不 在Unraid主机上执行:

  • 破坏性的: rm, rmdir, shred, dd, mkfs
  • 系统电源: shutdown, reboot, poweroff, halt
  • 防火墙: iptables, ip6tables, nftables
  • 用户管理: passwd, useradd, userdel
  • 包裹: installpkg, removepkg, slackpkg
  • 权限: chmod, chown, chgrp
  • 磁盘操作: fdisk, parted, mdadm, mount, umount

阻塞模式

  • 写给 /boot (卸载闪存驱动器)或 /dev
  • rm -rf 以任何形式
  • 叉式炸弹
  • 向破坏性命令输送管道

路径限制

操作允许阻止
阅读大多数路径/etc/shadow, /boot/config/shadow, /boot/config/smbpasswd
/mnt/user, /mnt/cache, /mnt/disk, /tmp/boot, /etc, /usr, /bin, /dev, /proc, /sys

集装箱内部

命令通过运行 docker_exec更宽容 因为容器是隔离的。只有普遍的危险(分叉炸弹、设备写入)被阻止。

输出限制

命令输出上限为 64 KB 以防止上下文窗口爆裂。超大输出显示第一部分和最后一部分。

______________________________________________________________________

安装

先决条件

  • 紫外线 已安装在本地计算机上
  • 在Unraid服务器上启用SSH(设置→ 管理访问→ SSH)
  • 您的Unraid root密码

设置

  1. 克隆仓库:
   git clone https://github.com/YOUR_USERNAME/unraid-ssh-mcp.git
   cd unraid-ssh-mcp
  1. 创建您的 .env 文件:
   cp .env.example .env

编辑 .env 使用您的Unraid SSH凭据:

   SSH_HOST=192.168.0.150
   SSH_PORT=22
   SSH_USER=root
   SSH_PASSWORD=your-password-here
  1. 安装依赖项:
   uv sync
  1. 测试其工作原理:
   uv run unraid-ssh-mcp

(它将启动stdio上的MCP服务器--按Ctrl+C停止。)

______________________________________________________________________

Claude桌面配置

将此添加到您的 claude_desktop_config.json:

视窗%APPDATA%\Claude\claude_desktop_config.json macOS~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "unraid-ssh": {
      "command": "C:\\Users\\YOUR_USER\\.local\\bin\\uv.exe",
      "args": [
        "run",
        "--directory",
        "C:\\Users\\YOUR_USER\\Desktop\\Nick's Projects\\unraid-ssh-mcp",
        "unraid-ssh-mcp"
      ],
      "env": {
        "SSH_HOST": "192.168.0.150",
        "SSH_PORT": "22",
        "SSH_USER": "root",
        "SSH_PASSWORD": "your-password-here"
      }
    }
  }
}
提示: 您可以将凭据放入 env 块(如上所述)或 .env 项目目录中的文件。这个 env 块优先。

保存后重新启动Claude Desktop。这个 unraid-ssh 工具应出现在MCP工具菜单中(🔌 图标)。

______________________________________________________________________

示例用法

You: What environment variables does the n8n container have?
Claude: [calls docker_inspect("n8n")]

You: Check the last 50 lines of syslog
Claude: [calls tail_log("/var/log/syslog", 50)]

You: What's using the most CPU right now?
Claude: [calls system_overview()]

You: Run `ip addr` on the server
Claude: [calls run_command("ip addr")]

You: How much memory is each container using?
Claude: [calls docker_stats()]

______________________________________________________________________

定制护栏

阻止列表和路径限制存在于 src/unraid_ssh_mcp/guardrails.py。您可以编辑它们以满足您的需求:

  • BLOCKED_HOST_COMMANDS --主机上阻止的命令名集
  • BLOCKED_PATTERNS --正则表达式模式处处受阻
  • BLOCKED_HOST_PATTERNS --正则表达式模式仅在主机上被阻止
  • BLOCKED_READ_PATHS --无法读取的路径
  • BLOCKED_WRITE_PATHS --无法写入的路径
  • ALLOWED_WRITE_PATHS --路径 *能* 被写入

______________________________________________________________________

建筑

Claude Desktop
    │
    ▼ (MCP / stdio)
unraid-ssh-mcp
    │
    ├── guardrails.py   ← validates every command before execution
    ├── ssh_client.py   ← persistent SSH connection with auto-reconnect
    └── server.py       ← MCP tool definitions
            │
            ▼ (SSH)
    Unraid Server (root@192.168.0.150)

______________________________________________________________________

配套:unraid mcp(GraphQL)

该项目旨在与 unraid mcp 其提供:

  • 阵列运行状况和磁盘状态
  • 通过Unraid API启动/停止容器
  • 通知管理
  • 虚拟机管理

unraid ssh mcp 添加缺失的部分: docker exec、环境变量、文件操作和主机级命令。

______________________________________________________________________

许可证

麻省理工学院

目录标签

目录标签

文件操作PythonClaude系统监控SSH安全本地部署Docker管理Unraid工具

支持客户端

Claude DesktopClaude

接入字段

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

stdio

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

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

16

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdionone部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP