Skip to main content
Glama

Yuque MCP Server

语雀(Yuque)文档 Model Context Protocol (MCP) 服务器,提供文档搜索、目录浏览、内容获取和文档创建功能。

功能

  • search: 搜索语雀文档

  • get_doc: 获取文档详细内容

  • get_toc: 获取知识库目录结构

  • create_doc: 创建新文档

  • update_doc: 更新现有文档

安装

npm install

构建

git clone https://github.com/wangx-wx/yuque-mcp.git
cd yuque-mcp
npm install
npm run build

MCP 配置

在 Claude Desktop 配置文件中添加:

macOS

~/Library/Application Support/Claude/claude_desktop_config.json

Windows

%APPDATA%\Claude\claude_desktop_config.json

配置内容:

{
  "mcpServers": {
    "yuque": {
      "command": "node",
      "args": ["E:\\node\\yuque-mcp\\dist\\index.js"],
      "env": {
        "YUQUE_AUTH_TOKEN": "your-auth-token-here",
        "YUQUE_BASE_URL": "https://www.yuque.com",
        "YUQUE_GROUP_LOGIN": "your-group-login",
        "YUQUE_BOOK_SLUG": "your-book-slug"
      }
    }
  }
}

CLI 配置

claude mcp add yuque-mcp-asd \
		--scope project \
		--transport stdio \
		-- node "/path/yuque-mcp/dist/index.js" \
		--env YUQUE_AUTH_TOKEN=your-auth-token-here \
		--env YUQUE_BASE_URL=https://www.leyaoyao.yuque.com \
		--env YUQUE_GROUP_LOGIN=your-group-login \
		--env YUQUE_BOOK_SLUG=your-book-slug
claude mcp add yuque-mcp-asd `
		--scope project `
		--transport stdio `
		-- node "D:/yuque-mcp/dist/index.js" `
		--env YUQUE_AUTH_TOKEN=your-auth-token-here `
		--env YUQUE_BASE_URL=https://www.leyaoyao.yuque.com `
		--env YUQUE_GROUP_LOGIN=your-group-login `
		--env YUQUE_BOOK_SLUG=your-book-slug

工具说明

搜索语雀文档。

参数:

参数

类型

必填

说明

q

string

搜索关键词

使用场景: 用户想查找特定内容的文档

示例:

搜索关键词 "TypeScript" 的文档

get_toc

获取知识库目录结构。

参数: 无(从环境变量读取知识库配置)

使用场景: 用户想浏览目录或导航文件夹结构

返回: 扁平化的目录项列表,包含 uuid 和 title

示例:

查看知识库的目录结构

get_doc

获取指定文档的详细内容。

参数:

参数

类型

必填

说明

doc_id

number

文档 ID

使用场景: 已有文档 ID,需要读取完整文档内容

示例:

获取文档 123456 的详细内容

create_doc

创建新文档并添加到目录结构中。

参数:

参数

类型

必填

说明

title

string

文档标题

content

string

文档内容(Markdown 格式)

target_uuid

string

目标节点 UUID(通过 get_toc 获取)。不填则添加到根节点

action_mode

string

插入模式:child(子级,默认)或 sibling(同级)

使用场景: 用户想创建新文档

返回: 文档 ID、标题和访问 URL

示例:

创建标题为 "部署指南" 的文档,内容为 "# 部署\n\n..."

update_doc

更新现有文档的标题、内容或路径。

参数:

参数

类型

必填

说明

doc_id

string

文档 ID 或路径

title

string

新文档标题

content

string

文档内容(Markdown 格式)

slug

string

新文档路径

使用场景: 修改已有文档的内容或标题

返回: 文档 ID、标题、路径、访问 URL 和更新时间

示例:

更新文档 abc123,将标题改为 "新标题",内容改为 "# 新内容"

项目结构

yuque-mcp/
├── src/
│   ├── config/
│   │   └── env.ts          # 环境变量配置
│   ├── models/
│   │   ├── types.ts        # TypeScript 类型定义
│   │   └── responses.ts    # 响应转换器
│   ├── api/
│   │   ├── client.ts       # HTTP 客户端
│   │   └── yuque-api.ts    # 语雀 API 封装
│   ├── tools/
│   │   ├── search.ts       # search 工具实现
│   │   ├── get-doc.ts      # get_doc 工具实现
│   │   ├── get-toc.ts      # get_toc 工具实现
│   │   ├── create-doc.ts   # create_doc 工具实现
│   │   └── update-doc.ts   # update_doc 工具实现
│   ├── server.ts           # MCP 服务器配置
│   └── index.ts            # 入口文件
├── package.json
├── tsconfig.json
└── README.md

使用示例

搜索文档

帮我搜索关于 "TypeScript" 的语雀文档

浏览目录

查看知识库的目录结构

创建文档

创建一个新文档,标题是 "部署指南",内容如下:
# 部署指南

## 环境准备
- Node.js 18+
- MySQL 8.0

## 部署步骤
...

更新文档

更新文档 123456,标题改为 "部署指南 v2",内容添加 "## 更新日志\n\n- 2024-01-01: 初始版本"

组合使用

先查看目录,找到 "技术文档" 分类的 uuid,然后在该分类下创建一个新文档

许可证

MIT

参考文档

Install Server
A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/wangx-wx/yuque-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server