使用说明

项目简介

本项目是一个基于 Model Context Protocol (MCP) 协议构建的服务器,旨在为大型语言模型 (LLM) 提供创建和管理 Office 文档(PowerPoint 演示文稿和 Word 文档)的能力。通过提供标准化的 MCP 接口,该服务器可以方便地与各种 MCP 客户端集成,扩展 LLM 在文档生成方面的应用场景。

主要功能点

  • PowerPoint 演示文稿生成: 允许 LLM 通过调用工具创建包含标题页、章节页和内容页面的 PowerPoint 演示文稿(pptx 格式)。支持自定义幻灯片比例 (4:3 或 16:9) 和使用自定义模板。
  • Word 文档生成: 允许 LLM 通过调用工具将 Markdown 格式的文本内容转换为 Word 文档(docx 格式),支持标题、粗体、斜体、链接、列表和表格等 Markdown 语法。
  • 文件上传与存储: 支持本地文件系统或 Amazon S3 云存储两种文件上传策略,生成的文档可以保存到本地文件夹或 S3 存储桶中。
  • 自定义模板: 允许用户使用自定义 PowerPoint 和 Word 模板,以满足企业品牌或特定样式需求。
  • SSE 传输协议: 使用 Server-Sent Events (SSE) 作为 MCP 服务器的传输协议,方便客户端实时接收服务器消息。

安装步骤

  1. 环境准备: 确保已安装 Docker 和 Docker Compose。
  2. 下载仓库: 克隆 GitHub 仓库 'https://github.com/dvejsada/mcp-ms-office-documents' 到本地。
  3. 配置环境变量:
    • 复制 'docker-compose.yml' 文件模板。
    • 根据需要配置环境变量:
      • 'UPLOAD_STRATEGY': 文件上传策略,可选 'LOCAL' (本地) 或 'S3' (S3 存储)。默认为 'LOCAL'。
      • 当 'UPLOAD_STRATEGY' 设置为 'S3' 时,需要配置以下 AWS S3 相关的环境变量:
        • 'AWS_ACCESS_KEY': AWS 访问密钥。
        • 'AWS_SECRET_ACCESS_KEY': AWS 密钥。
        • 'AWS_REGION': AWS 区域。
        • 'S3_BUCKET': S3 存储桶名称。
    • 如果使用本地文件存储 ('UPLOAD_STRATEGY=LOCAL'),需要将主机目录挂载到容器的 '/app/output' 目录,以便在主机上访问生成的文档。
    • 如果需要使用自定义 PowerPoint 或 Word 模板,需要将包含 'template_4_3.pptx'、'template_16_9.pptx' (PowerPoint) 和 'template.docx' (Word) 文件的目录挂载到容器的 '/app/templates/' 目录。
  4. 启动服务器: 在仓库根目录下,使用 Docker Compose 启动服务器:
    docker-compose up -d
    服务器默认监听端口 '8958'。

服务器配置 (MCP 客户端)

以下是 MCP 客户端连接 'MCP Office文档服务' 所需的配置信息示例 (JSON 格式):

{
  "serverName": "media-creator",
  "type": "sse",
  "url": "http://<服务器地址>:8958/sse"
}

配置参数说明:

  • 'serverName': MCP 服务器的名称,客户端用于标识和管理不同的 MCP 服务器连接。 可以自定义,例如 "office-docs-server"。
  • 'type': 传输协议类型,本服务使用 SSE 协议,固定设置为 '"sse"'。
  • 'url': MCP 服务器的 SSE 端点 URL。 '<服务器地址>' 需要替换为实际部署 MCP 服务器的地址,例如 'localhost' (如果客户端和服务器在同一机器) 或服务器的 IP 地址或域名。端口号默认为 '8958',如果修改了服务器端口,此处也需要相应修改。

示例 (LibreChat 客户端配置):

如果使用 LibreChat 作为 MCP 客户端,可以将以上 JSON 配置添加到 LibreChat 的 'librechat.yaml' 配置文件中的 'mcpServers' 节点下。 具体参考仓库 'README.md' 中 "How to add to LibreChat" 部分的说明。

基本使用方法

  1. 添加 MCP 服务器到客户端: 在 MCP 客户端 (例如 LibreChat) 中,根据客户端的指引,添加上述服务器配置信息,建立与 'MCP Office文档服务' 的连接。
  2. 创建 Agent 并添加工具: 在 MCP 客户端中,创建一个 Agent (代理),并将 'create-powerpoint-presentation' 和 'create-word-document' 这两个工具添加到该 Agent。
  3. 使用 Agent 创建文档: 与 Agent 对话,指示 Agent 使用相应的工具创建 PowerPoint 演示文稿或 Word 文档。根据工具的 'inputSchema' 提供的参数要求,以 JSON 格式提供工具所需的输入参数,例如演示文稿的主题、幻灯片内容或 Word 文档的 Markdown 文本。
  4. 获取文档链接: 服务器成功创建文档后,会返回包含文档链接的文本消息。如果使用本地存储,会告知文档已保存到输出文件夹;如果使用 S3 存储,会返回一个临时的 S3 预签名 URL,用户可以通过该链接下载文档。

信息

分类

生产力应用