io.github.yuque/yuque-mcp
MCP server for Yuque — expose your knowledge base to AI assistants.
التثبيت
أضف هذا إلى إعدادات MCP في عميلك (Claude Desktop: claude_desktop_config.json، وCursor: .cursor/mcp.json، ويستخدم VS Code وغيره الصيغة نفسها «mcpServers»).
yuque-mcpclaude mcp add yuque-mcp -e 'YUQUE_PERSONAL_TOKEN=<your yuque_personal_token>' -e 'YUQUE_GROUP_TOKEN=<your yuque_group_token>' -e 'YUQUE_TOKEN=<your yuque_token>' -- npx -y yuque-mcp@0.1.4
{
"mcpServers": {
"yuque-mcp": {
"command": "npx",
"args": [
"-y",
"yuque-mcp@0.1.4"
],
"env": {
"YUQUE_PERSONAL_TOKEN": "<your yuque_personal_token>",
"YUQUE_GROUP_TOKEN": "<your yuque_group_token>",
"YUQUE_TOKEN": "<your yuque_token>"
}
}
}
}
متغيرات البيئة
YUQUE_PERSONAL_TOKENسري Yuque personal API token (get from https://www.yuque.com/settings/tokens). Use one of: YUQUE_PERSONAL_TOKEN, YUQUE_GROUP_TOKEN, or YUQUE_TOKEN.YUQUE_GROUP_TOKENسري Yuque group/team API token (alternative to YUQUE_PERSONAL_TOKEN for team workspaces).YUQUE_TOKENسري Yuque API token (legacy, use YUQUE_PERSONAL_TOKEN or YUQUE_GROUP_TOKEN instead).
التوثيق
مأخوذ من ملف README للمشروع على GitHub ويُحدَّث أسبوعيًا. تفتح الروابط على GitHub.
المحتويات
Yuque MCP Server
Let AI assistants read and write your Yuque (语雀) knowledge base
through the Model Context Protocol.
[![CI][ci-image]][ci-url] [![npm version][npm-image]][npm-url] [![npm downloads][download-image]][download-url] [![License][license-image]][license-url]
Quick Start · Tools · Troubleshooting · Docs · 中文文档
Once connected, ask your assistant things like:
"Search my Yuque for everything about canary releases and give me a one-page summary."
"Turn today's meeting notes into a doc in my Tech Research book."
"Add a flowchart of this deployment pipeline to the design doc."
Quick Start
1. Get a token — create one at Yuque Developer Settings. If you use a team token bound to a Yuque space, also note the space host (e.g. https://your-space.yuque.com) — you will pass it as --host.
2. Install — one command locates the right config file for your OS and merges a yuque entry into it, without touching other servers:
npx yuque-mcp install --token=YOUR_TOKEN --client=cursor
Supported clients: claude-desktop · vscode · cursor · windsurf · cline · trae · qoder · opencode. Prefer an interactive flow? Run npx yuque-mcp setup.
Claude Code
Register the server directly:
claude mcp add yuque -- npx -y yuque-mcp --token=YOUR_TOKEN
Other MCP clients (generic config)
Any client that supports stdio transport works — see docs/clients.md for per-client config paths.
{
"mcpServers": {
"yuque": {
"command": "npx",
"args": ["-y", "yuque-mcp"],
"env": { "YUQUE_TOKEN": "YOUR_TOKEN" }
}
}
}
3. Restart your client and start asking.
Configuration
| Setting | Env var / CLI flag | Description |
|---|---|---|
| Token (required) | YUQUE_TOKEN / --token | Personal or team Yuque API token |
| Host (optional) | YUQUE_HOST / --host | Site or space host, e.g. https://your-space.yuque.com — required for space-bound team tokens and private deployments |
Site roots are normalized to /api/v2; when unset, the host defaults to https://www.yuque.com/api/v2.
# Team token / private deployment
npx yuque-mcp install --token=YOUR_TOKEN --client=cursor --host=https://your-space.yuque.com
Migrating from an older config?
YUQUE_PERSONAL_TOKEN, YUQUE_BASE_URL, and --base-url still work as legacy fallbacks. Precedence: YUQUE_TOKEN > YUQUE_PERSONAL_TOKEN > --token, and YUQUE_HOST > --host > YUQUE_BASE_URL > --base-url. New configs should use YUQUE_TOKEN and YUQUE_HOST.
Tools (19)
Each tool maps to exactly one Yuque API route.
| Category | Tool | Description |
|---|---|---|
| User | yuque_get_user | Get the authenticated user for the current token |
| Search | yuque_search | Search docs or repos, with paging |
| Books | yuque_list_books | List books (知识库) of a user |
yuque_get_book | Get a book by ID or namespace | |
yuque_create_book | Create a book | |
yuque_update_book | Update name, slug, description, or visibility | |
| Docs | yuque_list_docs | List docs in a book, with paging |
yuque_get_doc | Get full content — markdown, lake, or html | |
yuque_create_doc | Create a doc in a book | |
yuque_update_doc | Update a doc's body or metadata | |
| TOC | yuque_get_toc | Get a book's table of contents |
yuque_update_toc | Append or move a single TOC node | |
| Notes | yuque_list_notes | List notes (小记), with paging and status filter |
yuque_get_note | Get a note with full content | |
yuque_create_note | Create a note | |
yuque_update_note | Update a note | |
| Boards | yuque_get_resource | Read a board (mindmap / flowchart / diagram) from a doc |
yuque_create_resource | Create a board in a doc | |
yuque_update_resource | Update a board in a doc |
In particular, yuque_update_doc cannot combine a markdown body with title / slug / public changes in a single call — update metadata separately. The full contract, including format routing between the YMD markdown API and the legacy document API, is documented in docs/capability-scope.md.
Not covered (yet): comments, attachment upload and file management, permission and member management, section-level doc edits, and structured resources other than boards.
Write access
The create/update tools modify real content in your knowledge base, and the server can do whatever your token can do. Keep the token secret, and prefer a space-scoped team token (with YUQUE_HOST) when you only work within one space. To report a vulnerability, see SECURITY.md.
Troubleshooting
| Error | Solution |
|---|---|
YUQUE_TOKEN ... is required | Set YUQUE_TOKEN=YOUR_TOKEN or pass --token=YOUR_TOKEN |
401 Unauthorized | Token invalid or expired — regenerate it |
429 Rate Limited | Too many requests — wait a moment and retry |
410 Gone | Target permanently deleted or endpoint deprecated — check the doc/book exists |
| Tool not found | Update to the latest version: npx -y yuque-mcp@latest |
npx command not found | Install Node.js v18 or later |
Development
git clone https://github.com/yuque/yuque-mcp-server.git
cd yuque-mcp-server
npm install
npm test # run tests
npm run build # compile TypeScript
npm run dev # dev mode with hot reload
Architecture, tech stack, and the full tool contract live in docs/. Contributions are welcome — see CONTRIBUTING.md.
Links
- Yuque API docs
- Model Context Protocol
- Yuque AI Ecosystem — skills and plugins built on top of this server
License
[ci-image]: https://img.shields.io/github/actions/workflow/status/yuque/yuque-mcp-server/ci.yml?style=flat-square&label=CI [ci-url]: https://github.com/yuque/yuque-mcp-server/actions/workflows/ci.yml [npm-image]: https://img.shields.io/npm/v/yuque-mcp?style=flat-square [npm-url]: https://www.npmjs.com/package/yuque-mcp [download-image]: https://img.shields.io/npm/dm/yuque-mcp?style=flat-square [download-url]: https://www.npmjs.com/package/yuque-mcp [license-image]: https://img.shields.io/github/license/yuque/yuque-mcp-server?style=flat-square [license-url]: ./LICENSE
الأسئلة الشائعة
ما هو io.github.yuque/yuque-mcp؟
MCP server for Yuque — expose your knowledge base to AI assistants.
كيف أثبّت io.github.yuque/yuque-mcp؟
يعمل على جهازك. في Claude Code: claude mcp add yuque-mcp -e 'YUQUE_PERSONAL_TOKEN=<your yuque_personal_token>' -e 'YUQUE_GROUP_TOKEN=<your yuque_group_token>' -e 'YUQUE_TOKEN=<your yuque_token>' -- npx -y yuque-mcp@0.1.4. وفي العملاء الآخرين، الصق إعداد JSON من هذه الصفحة في إعدادات MCP الخاصة بهم.
هل يحتاج io.github.yuque/yuque-mcp إلى مفتاح API؟
نعم. يتطلب YUQUE_PERSONAL_TOKEN, YUQUE_GROUP_TOKEN, YUQUE_TOKEN، وتضبطها في إعداداته.
هل io.github.yuque/yuque-mcp مفتوح المصدر؟
نعم. شيفرته متاحة على GitHub بترخيص MIT.
من يصون io.github.yuque/yuque-mcp؟
ينشره yuque. يدرجه AI.tn لكنه لا يصونه ولا يوصي به.
من سجل MCP الرسمي. الإدراج ليس توصية: راجع شيفرة الخادم وصلاحياته قبل منحه الوصول إلى بياناتك.