English Version 一个用于与语雀 API 集成的 Model-Context-Protocol (MCP) 服务器。此实现受 Figma-Context-MCP 的启发,并使用 语雀开放 API。 该服务器提供了与语雀知识库平台交互的 MCP 工具,允许 AI 模型: - 获取用户和文档信息 - 创建、读取、更新和删除文档 - 获取统计数据和分析信息 要使用 Smithery 将 Yuque MCP Server 自动安装到 Claude 桌面端: - Node.js 18+ (推荐) - 拥有 API 令牌的语雀账号 3. 基于 .env.example 创建 .env 文件: 4. (可选) 在 .env 文件中添加你的语雀 API 令牌: 你也可以选择在连接到服务器时通过查询参数提供令牌,而不是在 .env 文件中设置。 然后在 HTTP 或 CLI 模式下运行: 本项
Add this skill
npx mdskills install HenryHaoson/yuque-mcp-serverComprehensive MCP server integrating Yuque API with extensive documentation, clear tool descriptions, and flexible deployment options
1# 语雀 MCP 服务器23[](https://smithery.ai/server/@HenryHaoson/Yuque-MCP-Server)45[English Version](./README.en.md)67一个用于与语雀 API 集成的 Model-Context-Protocol (MCP) 服务器。此实现受 [Figma-Context-MCP](https://github.com/GLips/Figma-Context-MCP) 的启发,并使用 [语雀开放 API](https://app.swaggerhub.com/apis-docs/Jeff-Tian/yuque-open_api/2.0.1)。89## 概述1011该服务器提供了与语雀知识库平台交互的 MCP 工具,允许 AI 模型:1213- 获取用户和文档信息14- 创建、读取、更新和删除文档15- 搜索语雀中的内容16- 获取知识库信息17- 获取统计数据和分析信息1819## 安装2021### 安装 via Smithery2223要使用 [Smithery](https://smithery.ai) 将 Yuque MCP Server 自动安装到 Claude 桌面端:2425```bash26npx -y @smithery/cli install @HenryHaoson/Yuque-MCP-Server --client claude27```2829### 前提条件3031- Node.js 18+ (推荐)32- 拥有 API 令牌的语雀账号3334### 设置35361. 克隆此仓库:37 ```38 git clone https://github.com/Henryhaoson/Yueque-MCP-Server.git39 cd Yueque-MCP-Server40 ```41422. 安装依赖:43 ```44 npm install45 ```46473. 基于 `.env.example` 创建 `.env` 文件:48 ```49 cp .env.example .env50 ```51524. (可选) 在 `.env` 文件中添加你的语雀 API 令牌:53 ```54 YUQUE_API_TOKEN=your_yuque_api_token_here55 ```5657 你也可以选择在连接到服务器时通过查询参数提供令牌,而不是在 .env 文件中设置。5859## 使用方法6061### 运行服务器6263#### 开发模式6465```bash66# HTTP 服务器模式67npm run dev6869# CLI stdio 模式70npm run dev:cli71```7273#### 生产模式7475首先,构建项目:7677```bash78npm run build79```8081然后在 HTTP 或 CLI 模式下运行:8283```bash84# HTTP 服务器模式85npm run start8687# CLI stdio 模式88npm run start:cli89```9091### 使用 Docker 部署9293本项目提供了 Docker 支持,使您可以轻松地容器化和部署服务器。9495#### 使用 Docker Compose(推荐)96971. 构建并启动容器:98 ```bash99 docker-compose up -d100 ```1011022. 查看日志:103 ```bash104 docker-compose logs -f105 ```1061073. 停止服务:108 ```bash109 docker-compose down110 ```111112您可以通过环境变量或在 `.env` 文件中设置配置项:113```bash114# .env 文件示例115PORT=3000116YUQUE_API_TOKEN=your_token_here117YUQUE_API_BASE_URL=https://www.yuque.com/api/v2118```119120#### 手动使用 Docker1211221. 构建 Docker 镜像:123 ```bash124 docker build -t yuque-mcp-server .125 ```1261272. 运行容器:128 ```bash129 docker run -d -p 3000:3000 --name yuque-mcp-server yuque-mcp-server130 ```1311323. 使用环境变量:133 ```bash134 docker run -d -p 3000:3000 \135 -e YUQUE_API_TOKEN=your_token_here \136 -e YUQUE_API_BASE_URL=https://www.yuque.com/api/v2 \137 --name yuque-mcp-server yuque-mcp-server138 ```139140### MCP 工具141142语雀 MCP 服务器提供以下工具:143144#### 用户和文档管理145- `get_current_user` - 获取当前认证用户的信息,包括用户ID、用户名、头像等语雀账号基本信息146- `get_user_docs` - 获取当前用户的所有知识库文档列表,包括私人和协作文档147- `get_user_repos` - 获取指定用户的知识库列表,知识库是语雀中组织文档的集合148- `get_repo_docs` - 获取特定知识库中的所有文档列表,包括文档标题、更新时间等信息149- `get_doc` - 获取语雀中特定文档的详细内容,包括正文、修改历史和权限信息150- `create_doc` - 在指定知识库中创建新的语雀文档,支持多种格式内容(Markdown、HTML、Lake)151- `update_doc` - 更新语雀中已存在的文档,可以修改标题、内容或权限设置152- `delete_doc` - 从语雀知识库中删除指定文档,此操作不可撤销153- `search` - 在语雀平台中搜索文档或知识库内容,支持范围和作者筛选154155#### 团队统计分析156- `get_group_statistics` - 获取团队的汇总统计数据,包括成员人数、文档数量、阅读量和互动数据等157- `get_group_member_statistics` - 获取团队成员的统计数据,包括各成员的编辑次数、阅读量、点赞量等158- `get_group_book_statistics` - 获取团队知识库的统计数据,包括各知识库的文档数、字数、阅读量等159- `get_group_doc_statistics` - 获取团队文档的统计数据,包括各文档的字数、阅读量、评论量等160161## 与 AI 模型的集成162163此 MCP 服务器可以与支持 Model-Context-Protocol 的 AI 模型一起使用,允许它们通过定义的工具与语雀交互。例如:1641651. 启动 MCP 服务器1662. 从兼容的客户端连接到服务器1673. AI 模型现在可以使用注册的工具与语雀数据交互168169### SSE 端点的查询参数170171当连接到 SSE 端点时,你可以通过查询参数(query parameters)覆盖环境配置,这些参数的优先级高于环境变量:172173- `accessToken`: 覆盖在 .env 文件中设置的语雀 API 令牌174- `baseUrl`: 覆盖在 .env 文件中设置的语雀 API 基础 URL175176示例:177```178http://localhost:3000/sse?accessToken=your_token_here&baseUrl=https://custom.yuque.api/v2179```180181这允许你在不修改 .env 文件的情况下动态配置服务,并且查询参数的优先级高于环境变量。这对于多用户环境或测试不同 API 端点特别有用。182183每个 SSE 连接都可以使用不同的配置,这使得同一个服务器实例可以同时为不同的用户或环境提供服务。184185## 开发186187### 项目结构188189```190src/191 ├── config.ts # 服务器配置192 ├── index.ts # 主入口点193 ├── cli.ts # CLI 入口点194 ├── server.ts # MCP 服务器实现195 └── services/196 └── yuque.ts # 语雀 API 服务197```198199### 添加新工具200201要添加新工具,请修改 `src/server.ts` 中的 `registerTools` 方法。202203## API 改进204205最近的更新增加了以下功能:2062071. **团队统计数据**:添加了获取团队、成员、知识库和文档统计数据的功能,便于分析和监控团队知识库的使用情况。2082092. **文档管理增强**:210 - 支持多种文档格式(Markdown、HTML、Lake)211 - 完善的文档公开性设置(私密、公开、企业内公开)212 - 搜索功能支持更多参数和过滤条件2132143. **数据类型完善**:更新了接口定义,使其与语雀 OpenAPI 规范保持一致。215216## 许可证217218MIT License219220Copyright (c) 2025 Henryhaoson221222Permission is hereby granted, free of charge, to any person obtaining a copy223of this software and associated documentation files (the "Software"), to deal224in the Software without restriction, including without limitation the rights225to use, copy, modify, merge, publish, distribute, sublicense, and/or sell226copies of the Software, and to permit persons to whom the Software is227furnished to do so, subject to the following conditions:228229The above copyright notice and this permission notice shall be included in all230copies or substantial portions of the Software.231232THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR233IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,234FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE235AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER236LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,237OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE238SOFTWARE.239240## 致谢241242- [Figma-Context-MCP](https://github.com/GLips/Figma-Context-MCP) 提供 MCP 服务器实现参考243- [语雀开放 API](https://app.swaggerhub.com/apis-docs/Jeff-Tian/yuque-open_api/2.0.1) 提供 API 文档244- [Model Context Protocol](https://github.com/anthropics/model-context-protocol) 提供 MCP 规范245
Full transparency — inspect the skill content before installing.