Google文档LLM桥接服务

非官方的Google文档MCP服务器,实现大型语言模型与Google文档的安全交互,支持文档管理、文本操作、格式设置等40+工具。

  • by NoManNayeem
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 NoManNayeem/google-docs-mcp-server

使用说明

LLM2Docs(非官方)

Google Docs MCP 服务器

非官方的LLM(大型语言模型)与Google Docs之间的MCP(可能指某种中间协议或接口)桥梁

快速入门 • 文档 • 特点/特性 • 贡献;做出贡献


概述

LLM2Docs是针对Google Docs的一个非官方模型上下文协议(MCP)服务器。它允许大型语言模型安全地访问、读取并与您的文档进行交互,从而实现更智能的工作流程和AI辅助编辑。

主要优势

  • 由人工智能驱动与Claude Desktop及其他大型语言模型(LLMs)无缝集成
  • 全面的40+种工具,实现全面文档管理
  • 专业的技术文档的高级格式化
  • 高效的批处理操作与智能自动化
  • 安全使用Google API进行OAuth 2.0认证
  • 非官方的由社区共建,为社区所用

快速入门

先决条件

  • Node.js 18及以上版本 已安装
  • 谷歌云项目 已启用API
  • Claude Desktop(可译为“Claude桌面版”或“Claude桌面应用”,具体根据上下文选择更贴切的表述) 用于人工智能集成

注:将您的Google OAuth客户端凭据放置为 credentials.json 在项目根目录(与包含此文件的同一文件夹中) package.json)。 该应用程序将存储令牌于 token.json 首次登录后自动(完成)。

安装

  1. 克隆仓库

    git clone https://github.com/NoManNayeem/google-docs-mcp-server.git
    cd google-docs-mcp-server
    
  2. 安装依赖项

    npm install
    
  3. 设置Google Cloud凭据

    • 创建一个Google云项目
    • 启用Google Docs API和Google Drive API
    • 下载 credentials.json 到项目根目录
  4. 构建项目

    npm run build
    
  5. 配置Claude桌面版 添加到您的 claude_desktop_config.json:

    {
      "mcpServers": {
        "llm2docs": {
          "command": "node",
          "args": ["/path/to/google-docs-mcp-server/build/index.js"],
          "env": {
            "NODE_ENV": "production"
          }
        }
      }
    }
    
  6. 将文档部署到 GitHub Pages

    • 确保 docs/_config.yml has:(在中文中,这个短语通常不单独翻译,因为它是一个英文中的助动词,用于构成现在完成时等时态,但在这里可以理解为“有”的意思,不过具体翻译需结合上下文) url: https://nomanayeem.github.io 和 baseurl: /google-docs-mcp-server
    • 确保 docs/index.html 使用 {{ site.baseurl }} 用于本地资产
    • 将页面源设置为 /docs 在仓库设置中
  7. 开始使用Claude桌面版

    • 重启Claude桌面版
    • 以……开始: “创建一个带有标题和一些内容的新Google文档”

特点/特性

文档管理

  • 创建文档带有可选初始内容的新版Google Docs
  • 阅读文件完整的文档内容检索
  • 搜索文档在您的云端硬盘中按名称查找文档
  • 文档元数据访问创建日期、所有者和属性

文本操作

  • 追加文本在文档末尾添加内容
  • 插入文本将内容放置在特定位置
  • 删除文本从指定范围中删除内容
  • 替换文本精确查找并替换文本

字体管理

  • **字体系列(或 字体家族)**更改字体(如Arial、Times New Roman、Calibri等)
  • 字体大小基于精确点的尺寸调整
  • 字体粗细粗体/正常控制
  • 字体样式斜体/正常格式
  • 全面格式化同时应用多个字体更改

列表与间距

  • 项目符号列表使用不同的项目符号样式进行创建
  • 编号列表各种编号格式(十进制、罗马数字、字母)
  • 行距单倍行距、1.5倍行距、双倍行距或自定义行距
  • 段落间距控制段前/段后间距

文本格式化

  • 案例转换大写,小写,标题大小写
  • 下标/上标科学记数法支持
  • 文本样式加粗、斜体、下划线、删除线
  • 颜色前景色和背景色控制
  • 标题H1-H6,标题和副标题样式

高级表格

  • 表格格式设置边框、颜色和专业样式
  • 单元管理水平或垂直合并单元格
  • 行/列操作插入、删除和管理表结构
  • 列宽精确控制桌面尺寸
  • 表头行带有格式的专业表格标题

媒体与图像

  • 图像插入来自具有自动尺寸调整的URL
  • 图像缩放精确的尺寸控制
  • 图像对齐左、中、右定位
  • 图片说明文字以无障碍性为重点的字幕
  • 图纸;画作插入形状、箭头和图表

文档结构

  • 目录自动生成导航
  • 分节符下一页,连续,偶数/奇数页分页
  • 书签用于导航的命名锚点
  • 交叉引用链接到书签和标题
  • 页眉和页脚带有页码的专业文档页眉
  • 脚注学术风格的引用和注释

搜索与内容管理

  • 查找并替换区分大小写的文本替换
  • 文档搜索查找带有上下文和位置的文本
  • 字数统计全面的文档统计
  • 拼写检查自动拼写建议
  • 内容分析字符统计,段落分析

文档

用例

技术文档

# Create a technical manual
"Create a new document titled 'API Documentation' with a table of contents"

# Format code blocks
"Format the code examples with monospace font and syntax highlighting"

# Add cross-references
"Create a bookmark called 'authentication' and link to it from the overview"

内容创作

# Professional formatting
"Make the title bold, 24pt, and center-aligned"

# Create structured content
"Create a bulleted list of features and a numbered list of steps"

# Add media
"Insert an image from this URL and add a caption"

文档管理

# Search and organize
"Find all documents containing 'project' in the title"

# Batch operations
"Replace all instances of 'old-version' with 'new-version'"

# Quality control
"Check spelling in this document and get word count statistics"

高级配置

环境变量

NODE_ENV=production
LOG_LEVEL=info
GOOGLE_CREDENTIALS_PATH=./credentials.json

自定义认证

// Custom OAuth configuration
const authConfig = {
  clientId: 'your-client-id',
  clientSecret: 'your-client-secret',
  redirectUri: 'http://localhost:3000/callback'
};

建筑学

核心组件

google-docs-mcp-server/
├── src/
│   ├── index.ts              # Main server entry point
│   ├── auth.ts               # OAuth 2.0 authentication
│   ├── types.ts              # TypeScript definitions
│   └── tools/
│       ├── create.ts         # Document creation tools
│       ├── read.ts           # Reading and search tools
│       ├── update.ts         # Text modification tools
│       ├── format.ts         # Formatting and styling tools
│       ├── tables.ts         # Advanced table management
│       ├── media.ts          # Image and media handling
│       ├── structure.ts      # Document structure tools
│       └── search.ts         # Search and content management
├── build/                    # Compiled JavaScript
├── docs/                     # Documentation website
└── package.json              # Project configuration

工具类别

类别 工具 用途
文件 4种工具 创建、阅读、搜索文档
文本 4种工具 修改和操作文本
字体 5款工具 完整字体管理
列表 2种工具 项目符号列表和编号列表
格式化 8种工具 文本样式和对齐
桌子 7种工具 高级表格操作
媒体 5种工具 图像和绘图
结构 6种工具 文档组织
搜索 4种工具 内容发现与管理

做出贡献

我们欢迎投稿!请参阅我们的 贡献指南 详情如下。

开发环境设置

  1. 为仓库创建分支(或:克隆仓库)
  2. 创建一个特性分支
    git checkout -b feature/amazing-feature
    
  3. 做出你的更改
  4. 运行测试
    npm test
    
  5. 提交您的更改
    git commit -m 'Add amazing feature'
    
  6. 推送到分支
    git push origin feature/amazing-feature
    
  7. 打开一个拉取请求

代码风格

  • 使用 TypeScript 确保类型安全
  • 遵循 ESLint 配置
  • 编写全面的测试
  • 记录新功能

许可证

这个项目遵循MIT许可证授权——详见 许可证 文件中有详细信息。


致谢

  • Anthropic(注:这是一个公司或组织的名称,直接翻译为“人类中心论的”或“以人类为中心的”并不准确,因为在此上下文中它可能指的是一个专注于人工智能或相关技术的公司或组织,但具体翻译需根据上下文确定。若作为公司名保留原样或音译为“安特罗皮克”等,具体取决于语境和翻译习惯。) 对于模型上下文协议规范
  • 谷歌 对于全面的Docs和Drive API
  • 克劳德人工智能 以实现无缝集成能力
  • 开源社区 为了寻找灵感和支持

支持


为人工智能和文档社区倾心打造

⭐ 给这个仓库点赞 • 🐛 报告错误 • 💡 请求功能