mcpField
S
SynoLink MCP Server

SynoLink MCP Server

本地服务
github.com/Do-Boo文件与存储2782 周前更新

关于 SynoLink MCP Server

SynoLink MCP Server 是一个基于 Node.js 的 MCP 服务,用于通过 Claude 等 AI 助手对 Synology NAS 进行文件操作。适合需要用自然语言管理 NAS 文件与共享链接的用户。

主要功能

  1. 01登录与退出 Synology DSM
  2. 02列出、上传与下载文件
  3. 03创建、删除、移动与重命名
  4. 04按关键字搜索文件和文件夹
  5. 05创建与查看共享链接及配额信息

适用场景

  1. 01通过 AI 助手浏览 NAS 中的目录
  2. 02将文件上传到 NAS 指定路径
  3. 03查询各存储卷的配额使用情况

MCP 相关

该项目是一个 MCP 服务,向 MCP 客户端暴露登录、文件管理、搜索、共享链接和服务器信息等工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"MCP-SynoLink": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"build"
]
}
}
}
启动命令docker run -i --rm build

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
ocibuild

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

SynoLink MCP Server

一个用于 Synology NAS 文件操作的 Node.js 服务,实现了 Model Context Protocol (MCP)。该服务让你可以通过 Claude 或其他兼容的 AI 助手与你的 Synology NAS 设备进行交互。

功能

  • 登录/登出 Synology DSM
  • 列出文件和文件夹
  • 下载文件内容
  • 上传文件
  • 创建文件夹
  • 删除文件/文件夹
  • 移动/重命名文件和文件夹
  • 搜索功能
  • 创建和列出共享链接
  • 获取服务信息
  • 获取配额信息

前置条件

  • Node.js 18 或更高版本
  • npm 或 yarn
  • 运行 DSM 6.0 或更高版本的 Synology NAS
  • 对 Synology NAS 的网络访问

安装

克隆此仓库:

git clone https://github.com/Do-Boo/MCP-SynoLink.git
cd MCP-SynoLink

安装依赖:

npm install

构建项目:

npm run build

与 Claude Desktop 配合使用

Node.js 方式

将以下内容添加到你的 claude_desktop_config.json:

{
  "mcpServers": {
    "synolink": {
      "command": "node",
      "args": [
        "/path/to/MCP-SynoLink/dist/index.js",
        "https://your-synology-url:port",
        "your-username",
        "your-password"
      ]
    }
  }
}
Docker 方式

构建 Docker 镜像:

docker build -t mcp/synolink .

然后将以下内容添加到你的 claude_desktop_config.json:

{
  "mcpServers": {
    "synolink": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "mcp/synolink",
        "https://your-synology-url:port",
        "your-username",
        "your-password"
      ]
    }
  }
}
安全说明

务必小心处理凭据。当前实现将密码作为命令行参数发送,这可能会在进程列表中可见。为了在生产环境中提高安全性,请考虑实现替代的身份验证方式。

API 文档

该服务提供以下工具:

身份验证工具
  • login

    • 向 Synology NAS 进行身份验证
    • 无需参数(使用命令行中的凭据)
  • logout

    • 从 Synology NAS 登出
    • 无需参数
文件管理工具
  • list_folders

    • 列出目录中的文件和文件夹
    • 输入:path(字符串)— 要列出文件的路径,例如 '/photos'
  • get_file

    • 获取文件的内容
    • 输入:path(字符串)— Synology NAS 上文件的完整路径
  • upload_file

    • 将文件上传到 Synology NAS
    • 输入:
      • path(字符串)— Synology NAS 上的目标路径,包括文件名
      • content(字符串)— 要上传的文件内容
  • create_folder

    • 创建新文件夹
    • 输入:
      • path(字符串)— 创建文件夹的完整路径
      • name(字符串)— 新文件夹的名称
  • delete_item

    • 删除文件或文件夹
    • 输入:path(字符串)— 要删除的文件或文件夹的完整路径
  • move_item

    • 移动或重命名文件或文件夹
    • 输入:
      • source(字符串)— 源文件或文件夹的完整路径
      • destination(字符串)— 目标位置的完整路径
搜索和信息工具
  • search

    • 搜索文件和文件夹
    • 输入:
      • keyword(字符串)— 搜索关键词
      • path(字符串,可选)— 要搜索的路径,默认为 "/"
  • get_share_links

    • 获取或创建文件或文件夹的共享链接
    • 输入:path(字符串)— 要获取共享链接的路径
  • get_server_info

    • 获取 Synology 服务的信息
    • 无需参数
  • get_quota_info

    • 获取卷的配额信息
    • 输入:volume(字符串,可选)— 卷名称,如果省略则显示所有卷

许可证

MIT License

致谢

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。