项目简介

dbx-mcp-server 是一个 MCP (Model Context Protocol) 服务器的实现,旨在桥接大型语言模型 (LLM) 客户端与 Dropbox 云存储服务。通过此服务器,兼容 MCP 协议的客户端能够以标准化的方式访问和操作 Dropbox 中的文件资源,并利用预设的工具集扩展 LLM 的功能。

主要功能点

  • 资源管理: 将 Dropbox 文件系统作为 MCP 资源进行托管和管理,允许 LLM 客户端通过 URI 访问 Dropbox 中的文件和文件夹。
  • 工具集成: 提供一系列预定义的工具,使 LLM 能够调用 Dropbox API 执行文件操作,例如:
    • 文件和文件夹的列表、上传、下载、删除、复制、移动。
    • 文件元数据获取和搜索。
    • 共享链接创建。
    • 账户信息查询。
  • 安全机制: 通过 OAuth 2.0 协议进行身份验证,并支持令牌加密存储,保障 Dropbox 访问安全。
  • 灵活配置: 支持环境变量配置 Dropbox 应用密钥、加密密钥等敏感信息,并允许自定义安全策略和日志记录。
  • 易于扩展: 基于 MCP SDK 构建,方便开发者根据需求扩展工具集和资源类型。

安装步骤

  1. 克隆仓库

    git clone https://github.com/Albiemark/dbx-mcp-server.git
    cd dbx-mcp-server
  2. 安装依赖并构建

    npm install
    npm run build
  3. 运行设置脚本

    npm run setup

    按照提示完成 Dropbox 应用注册和授权配置。

服务器配置

要将 dbx-mcp-server 集成到 MCP 客户端,您需要在客户端的 MCP 服务器配置中添加以下信息。以下是一个 JSON 格式的配置示例,您需要根据实际情况修改 'command' 和 'args' 字段中的路径:

{
  "mcpServers": {
    "dbx": {
      "command": "node",
      "args": ["/path/to/dbx-mcp-server/build/src/index.js"]
    }
  }
}
  • 'server name': 'dbx' (服务器名称,可自定义)
  • 'command': 'node' (启动服务器的命令,通常是 Node.js)
  • 'args': '["/path/to/dbx-mcp-server/build/src/index.js"]' (启动命令的参数,指向服务器入口文件 'index.js' 的构建后路径,请替换为实际路径)

基本使用方法

配置完成后,在 MCP 客户端中,您可以使用以下方式调用 dbx-mcp-server 提供的功能:

  • 使用工具: 通过 'tools/call' 方法调用预定义的工具,例如列出根目录文件:

    await mcp.useTool("dbx-mcp-server", "list_files", { path: "" });
  • 访问资源: 使用 'dbx://' 协议访问 Dropbox 资源,例如读取文件内容:

    await mcp.readResource("dbx:///path/to/your/file.txt");
  • 利用 Prompt 模板: dbx-mcp-server 提供了 Prompt 模板,可以根据需要获取并使用,以实现更复杂的交互逻辑。

    const prompt = await mcp.getPrompt("dbx_help");

请参考仓库 'README.md' 文件和测试用例了解更多工具和资源的使用细节。

信息

分类

数据库与文件