云存储API服务

kDrive MCP Server提供了一套完整的云存储API服务,包括文件搜索、上传、下载、管理及共享功能。

  • by Infomaniak
  • JavaScript
  • 本地部署
  • 18 星标
  • 更新于
在 GitHub 查看 Infomaniak/mcp-server-kdrive

使用说明

kDrive MCP服务器

用于kDrive API的MCP服务器。

工具

  1. kdrive_search

    • 在kDrive中搜索
    • 所需输入:
      • query (string):搜索查询
    • 可选输入:
      • directory_id (number):用于将搜索范围限定到特定文件夹子树的目录ID(默认值:root)
      • depth (string):搜索深度 directory_id 已设置-- unlimited (递归)或 child (仅限直系子女)
    • 返回:文件列表
  2. kdrive_upload_file

    • 将新文件上传到kDrive(文本或二进制)
    • 所需输入:
      • file_name (string):文件名
      • 什么之中的一个:
        • text_content (string):UTF-8文本内容
        • base64_content (string):Base64编码的二进制内容
      • 可选: directory_id (数字):目标文件夹ID(默认值:root=1)
    • 返回:上传的文件元数据
  3. kdrive_download_file

    • 从kDrive下载文件
    • 所需输入:
      • file_id (number):要下载的文件的ID
    • 返回:文件内容为base64编码字符串(MIME类型可以通过以下方式获得 kdrive_info)
  4. kdrive_list

    • 列出文件夹中的文件和目录
    • 所需输入:
      • 可选: file_id (数字):文件夹ID(默认值:root=1)
      • 可选: type (string):按以下条件筛选 file 或 dir
      • 可选: cursor (string):上一次调用时返回的分页光标 has_more 是 true,用于获取下一页结果
    • 返回值:文件和/或目录数组,加上 has_more (布尔值)和 cursor (string)当有更多条目可用时
  5. kdrive_rename

    • 重命名文件或目录
    • 所需输入:
      • file_id (数字):文件或目录ID
      • name (string):新名称
    • 返回:已更新项目元数据
  6. kdrive_move

    • 将文件或目录移动到另一个文件夹
    • 所需输入:
      • file_id (数字):要移动的项目
      • dest_id (数字):目标文件夹ID
    • 返回:移动项目元数据
  7. kdrive_delete

    • 将文件或目录移至回收站
    • 所需输入:
      • file_id (数字):要删除的项目
    • 返回:垃圾箱结果
  8. kdrive_share_link

    • 为文件或目录创建共享链接
    • 所需输入:
      • file_id (编号):要共享的项目
      • right (字符串): inherit, password,或 public
      • 可选: password, valid_until, can_download, can_edit, can_request_access
    • 返回:共享链接对象
  9. kdrive_share_access

    • 通过电子邮件邀请访问文件或目录
    • 所需输入:
      • file_id (编号):要共享的项目
      • emails (字符串数组):收件人
      • right (字符串): manage, read,或 write
      • 可选: message (string):邀请文本
    • 返回:邀请反馈
  10. kdrive_create_folder

    • 在kDrive中创建新文件夹
    • 所需输入:
      • name (string):文件夹的名称
      • 可选: file_id (数字):父目录ID(默认值:root=1)
    • 返回:已创建文件夹元数据
  11. kdrive_restore

    • 从回收站还原文件或目录
    • 所需输入:
      • file_id (number):要还原的项目ID
      • destination_directory_id (number):要还原到的目录
    • 返回:已还原的项目元数据
  12. kdrive_info

    • 获取文件或目录的元数据和信息
    • 所需输入:
      • file_id (编号):项目ID
    • 返回:文件/目录元数据
  13. kdrive_recents

    • 列出最近使用的文件和目录
    • 所需输入:
      • 可选: type (string):按以下条件筛选 dir, file,或 vault
    • 返回值:最近项目的数组
  14. kdrive_shared_with_me

    • 列出与您共享的文件和目录
    • 所需输入:
      • 可选: type (string):按以下条件筛选 dir, file,或 vault
    • 返回值:共享项数组

设置

  1. 创建与您的用户链接的kDrive令牌:

使用Claude Desktop

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

NPX

{
  "mcpServers": {
    "kdrive": {
      "command": "npx",
      "args": [
        "-y",
        "@infomaniak/mcp-server-kdrive"
      ],
      "env": {
        "KDRIVE_TOKEN": "your-token",
        "KDRIVE_ID": "your-kdrive-id"
      }
    }
  }
}

码头工人

{
  "mcpServers": {
    "kdrive": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "KDRIVE_TOKEN",
        "-e",
        "KDRIVE_ID",
        "infomaniak/mcp-server-kdrive"
      ],
      "env": {
        "KDRIVE_TOKEN": "your-token",
        "KDRIVE_ID": "your-kdrive-id"
      }
    }
  }
}

环境变量

  1. KDRIVE_TOKEN:必填。您的kDrive令牌。
  2. KDRIVE_ID:必填。您的kDrive id从webapp URL获取。(例如,如果您的kDrive webapp URL为https://ksuite.infomaniak.com/all/kdrive/app/drive/12您的驱动器id是12)

故障排除

如果遇到权限错误,请验证:

  1. 所有必需的作用域都已添加到您的驱动器令牌中
  2. 令牌和驱动器id已正确复制到您的配置中

构建

Docker构建:

docker build -t infomaniak/mcp-server-kdrive -f Dockerfile .

许可证

此MCP服务器根据MIT许可证获得许可。