返回市场
MCP-同步链接

MCP-同步链接

作者:Do-Boo17 星标更新:2025-04-04

项目介绍

SynoLink MCP Server

一个使用Node.js实现的Model Context Protocol (MCP),用于Synology NAS文件操作的服务器。此服务器允许您通过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 许可证

致谢