项目简介

ONLYOFFICE DocSpace MCP 服务器充当 LLM 客户端和 ONLYOFFICE DocSpace 之间的桥梁。它实现了 Model Context Protocol (MCP) 标准,允许兼容 MCP 的 LLM 客户端(如某些桌面版 LLM 应用)通过结构化的方式访问 ONLYOFFICE DocSpace 的特定功能,例如文件操作和获取平台信息。

主要功能点

该 MCP 服务器专注于实现 MCP 的“工具 (Tools)”能力。通过暴露 ONLYOFFICE DocSpace 的 API 功能作为可由 LLM 调用的工具,LLM 客户端可以执行以下操作:

  • 文件操作: 管理 DocSpace 中的文件和文件夹,包括获取信息、创建、删除、重命名、复制和移动等。
  • 空间 (Room) 管理: 创建、更新、归档空间,以及管理空间的访问权限和安全设置。
  • 平台信息: 获取用户列表、查询配额和资费信息、获取支持的语言和时区等平台级别的设置。

安装步骤

此 MCP 服务器通常由支持 MCP 的 LLM 客户端按需启动。您无需单独安装为一个长期运行的服务。典型的安装(配置)方式是在 MCP 客户端的配置文件中指定如何启动此服务器。

大多数 MCP 客户端使用 JSON 格式的配置文件。您可以在 'mcpServers' 部分添加一个条目来配置 ONLYOFFICE DocSpace MCP 服务器。例如:

  • 定义一个名为 'onlyoffice-docspace' 的 MCP 服务器配置。
  • 在 'env' 字段中设置必要的环境变量来连接到您的 ONLYOFFICE DocSpace 实例(参见下一节的配置说明)。
  • 在 'command' 字段中指定启动命令,例如使用 'npx' 来执行已安装的 npm 包 '@onlyoffice/docspace-mcp'。
  • 在 'args' 字段中指定启动命令的参数,例如 '--yes @onlyoffice/docspace-mcp'。

配置示例(这部分由MCP客户端负责解析和执行,您只需知道需要提供哪些信息):

  • 服务器名称: 'onlyoffice-docspace' (客户端配置文件中定义)
  • 启动命令: 'npx' (用于执行 Node.js 包)
  • 命令参数: '--yes @onlyoffice/docspace-mcp' (指定要执行的包)
  • 环境变量配置: (用于连接到DocSpace实例)

服务器配置

此 MCP 服务器主要通过环境变量进行配置。这些环境变量通常在 MCP 客户端的配置文件中,通过 'env' 字段进行设置。

  • 'DOCSPACE_BASE_URL': 必填。您的 ONLYOFFICE DocSpace 实例的基础 URL。例如:'https://your-instance.onlyoffice.com/'。
  • 'DOCSPACE_API_KEY': 可选。用于访问 DocSpace API 的 API 密钥。如果未提供 'DOCSPACE_AUTH_TOKEN' 或用户名/密码,则需要此项。
  • 'DOCSPACE_AUTH_TOKEN': 可选。用于访问 DocSpace API 的认证令牌。如果未提供 'DOCSPACE_API_KEY' 或用户名/密码,则需要此项。
  • 'DOCSPACE_USERNAME' 和 'DOCSPACE_PASSWORD': 可选。用于通过基本认证访问 DocSpace API 的用户名和密码。如果未提供 'DOCSPACE_API_KEY' 或 'DOCSPACE_AUTH_TOKEN',则需要同时设置这两项。
  • 'DOCSPACE_ORIGIN': 可选。DocSpace 实例的源地址,用于设置请求头中的 'Origin' 字段。
  • 'DOCSPACE_USER_AGENT': 可选。用于设置请求头中的 'User-Agent' 字段,默认为服务器的项目名称和版本。

基本使用方法

配置完成后,兼容 MCP 的 LLM 客户端在需要访问 ONLYOFFICE DocSpace 的信息或执行相关操作时,会通过 MCP 协议向此服务器发送请求。您可以通过与 LLM 进行对话,指示其执行某些任务,例如:

  • 询问“列出我在 DocSpace 中 '我的文档' 文件夹下的文件。” (LLM 客户端可能会调用 'files_get_my_folder' 和 'files_get_folder' 工具)
  • 要求“在我的文档文件夹下创建一个名为 'LLM 生成内容' 的新文件夹。” (LLM 客户端可能会调用 'files_create_folder' 工具)
  • 请求“查看某个文件的详细信息,文件 ID 是 [文件 ID]。” (LLM 客户端可能会调用 'files_get_file_info' 工具)

LLM 客户端会根据您的指令和其理解,确定需要调用的工具及其参数,然后将 MCP 请求发送给此服务器。服务器执行相应的 DocSpace API 调用,并将结果返回给 LLM 客户端,供 LLM 进一步处理或响应您。

信息

分类

生产力应用