What is the Yuque MCP MCP server?
Yuque MCP server with safe read/write tools for groups, group members, repositories, docs, and TOC.
How to install Yuque MCP
Copy-paste configuration for popular MCP clients.
YUQUE_TOKENrequiredsecretYuque API token
YUQUE_ENDPOINTYuque API endpoint (optional)
YUQUE_TIMEOUT_MSYuque API timeout in milliseconds (optional)
YUQUE_MAX_RETRIESRead-only retry count (optional)
YUQUE_ALLOW_WRITEEnable write tools when true (optional, default false)
YUQUE_WRITE_NAMESPACE_ALLOWLISTComma-separated namespace allowlist for repo/doc/toc writes (optional)
YUQUE_WRITE_GROUP_ALLOWLISTComma-separated group login allowlist for group writes (optional)
YUQUE_ALLOW_DELETEEnable delete tools when true (optional, default false)
YUQUE_DELETE_NAMESPACE_ALLOWLISTComma-separated delete allowlist targets (optional)
YUQUE_FILE_ROOTAllowed root directory for file-based doc tools (optional, default current working directory)
YUQUE_FILE_MAX_BYTESMaximum size for file-based doc tools (optional, default 1048576)
YUQUE_FILE_ALLOWED_EXTENSIONSComma-separated allowed extensions for file-based doc tools (optional, default .md,.markdown,.txt)
{
"mcpServers": {
"yuque-mcp": {
"command": "npx",
"args": [
"-y",
"@wwwwwujl/yuque-mcp"
],
"env": {
"YUQUE_TOKEN": "<YOUR_YUQUE_TOKEN>",
"YUQUE_ENDPOINT": "<YOUR_YUQUE_ENDPOINT>",
"YUQUE_TIMEOUT_MS": "<YOUR_YUQUE_TIMEOUT_MS>",
"YUQUE_MAX_RETRIES": "<YOUR_YUQUE_MAX_RETRIES>",
"YUQUE_ALLOW_WRITE": "<YOUR_YUQUE_ALLOW_WRITE>",
"YUQUE_WRITE_NAMESPACE_ALLOWLIST": "<YOUR_YUQUE_WRITE_NAMESPACE_ALLOWLIST>",
"YUQUE_WRITE_GROUP_ALLOWLIST": "<YOUR_YUQUE_WRITE_GROUP_ALLOWLIST>",
"YUQUE_ALLOW_DELETE": "<YOUR_YUQUE_ALLOW_DELETE>",
"YUQUE_DELETE_NAMESPACE_ALLOWLIST": "<YOUR_YUQUE_DELETE_NAMESPACE_ALLOWLIST>",
"YUQUE_FILE_ROOT": "<YOUR_YUQUE_FILE_ROOT>",
"YUQUE_FILE_MAX_BYTES": "<YOUR_YUQUE_FILE_MAX_BYTES>",
"YUQUE_FILE_ALLOWED_EXTENSIONS": "<YOUR_YUQUE_FILE_ALLOWED_EXTENSIONS>"
}
}
}
}{
"mcpServers": {
"yuque-mcp": {
"command": "npx",
"args": [
"-y",
"@wwwwwujl/yuque-mcp"
],
"env": {
"YUQUE_TOKEN": "<YOUR_YUQUE_TOKEN>",
"YUQUE_ENDPOINT": "<YOUR_YUQUE_ENDPOINT>",
"YUQUE_TIMEOUT_MS": "<YOUR_YUQUE_TIMEOUT_MS>",
"YUQUE_MAX_RETRIES": "<YOUR_YUQUE_MAX_RETRIES>",
"YUQUE_ALLOW_WRITE": "<YOUR_YUQUE_ALLOW_WRITE>",
"YUQUE_WRITE_NAMESPACE_ALLOWLIST": "<YOUR_YUQUE_WRITE_NAMESPACE_ALLOWLIST>",
"YUQUE_WRITE_GROUP_ALLOWLIST": "<YOUR_YUQUE_WRITE_GROUP_ALLOWLIST>",
"YUQUE_ALLOW_DELETE": "<YOUR_YUQUE_ALLOW_DELETE>",
"YUQUE_DELETE_NAMESPACE_ALLOWLIST": "<YOUR_YUQUE_DELETE_NAMESPACE_ALLOWLIST>",
"YUQUE_FILE_ROOT": "<YOUR_YUQUE_FILE_ROOT>",
"YUQUE_FILE_MAX_BYTES": "<YOUR_YUQUE_FILE_MAX_BYTES>",
"YUQUE_FILE_ALLOWED_EXTENSIONS": "<YOUR_YUQUE_FILE_ALLOWED_EXTENSIONS>"
}
}
}
}{
"mcpServers": {
"yuque-mcp": {
"command": "npx",
"args": [
"-y",
"@wwwwwujl/yuque-mcp"
],
"env": {
"YUQUE_TOKEN": "<YOUR_YUQUE_TOKEN>",
"YUQUE_ENDPOINT": "<YOUR_YUQUE_ENDPOINT>",
"YUQUE_TIMEOUT_MS": "<YOUR_YUQUE_TIMEOUT_MS>",
"YUQUE_MAX_RETRIES": "<YOUR_YUQUE_MAX_RETRIES>",
"YUQUE_ALLOW_WRITE": "<YOUR_YUQUE_ALLOW_WRITE>",
"YUQUE_WRITE_NAMESPACE_ALLOWLIST": "<YOUR_YUQUE_WRITE_NAMESPACE_ALLOWLIST>",
"YUQUE_WRITE_GROUP_ALLOWLIST": "<YOUR_YUQUE_WRITE_GROUP_ALLOWLIST>",
"YUQUE_ALLOW_DELETE": "<YOUR_YUQUE_ALLOW_DELETE>",
"YUQUE_DELETE_NAMESPACE_ALLOWLIST": "<YOUR_YUQUE_DELETE_NAMESPACE_ALLOWLIST>",
"YUQUE_FILE_ROOT": "<YOUR_YUQUE_FILE_ROOT>",
"YUQUE_FILE_MAX_BYTES": "<YOUR_YUQUE_FILE_MAX_BYTES>",
"YUQUE_FILE_ALLOWED_EXTENSIONS": "<YOUR_YUQUE_FILE_ALLOWED_EXTENSIONS>"
}
}
}
}{
"servers": {
"yuque-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@wwwwwujl/yuque-mcp"
],
"env": {
"YUQUE_TOKEN": "<YOUR_YUQUE_TOKEN>",
"YUQUE_ENDPOINT": "<YOUR_YUQUE_ENDPOINT>",
"YUQUE_TIMEOUT_MS": "<YOUR_YUQUE_TIMEOUT_MS>",
"YUQUE_MAX_RETRIES": "<YOUR_YUQUE_MAX_RETRIES>",
"YUQUE_ALLOW_WRITE": "<YOUR_YUQUE_ALLOW_WRITE>",
"YUQUE_WRITE_NAMESPACE_ALLOWLIST": "<YOUR_YUQUE_WRITE_NAMESPACE_ALLOWLIST>",
"YUQUE_WRITE_GROUP_ALLOWLIST": "<YOUR_YUQUE_WRITE_GROUP_ALLOWLIST>",
"YUQUE_ALLOW_DELETE": "<YOUR_YUQUE_ALLOW_DELETE>",
"YUQUE_DELETE_NAMESPACE_ALLOWLIST": "<YOUR_YUQUE_DELETE_NAMESPACE_ALLOWLIST>",
"YUQUE_FILE_ROOT": "<YOUR_YUQUE_FILE_ROOT>",
"YUQUE_FILE_MAX_BYTES": "<YOUR_YUQUE_FILE_MAX_BYTES>",
"YUQUE_FILE_ALLOWED_EXTENSIONS": "<YOUR_YUQUE_FILE_ALLOWED_EXTENSIONS>"
}
}
}
}claude mcp add yuque-mcp --env YUQUE_TOKEN=<YOUR_YUQUE_TOKEN> --env YUQUE_ENDPOINT=<YOUR_YUQUE_ENDPOINT> --env YUQUE_TIMEOUT_MS=<YOUR_YUQUE_TIMEOUT_MS> --env YUQUE_MAX_RETRIES=<YOUR_YUQUE_MAX_RETRIES> --env YUQUE_ALLOW_WRITE=<YOUR_YUQUE_ALLOW_WRITE> --env YUQUE_WRITE_NAMESPACE_ALLOWLIST=<YOUR_YUQUE_WRITE_NAMESPACE_ALLOWLIST> --env YUQUE_WRITE_GROUP_ALLOWLIST=<YOUR_YUQUE_WRITE_GROUP_ALLOWLIST> --env YUQUE_ALLOW_DELETE=<YOUR_YUQUE_ALLOW_DELETE> --env YUQUE_DELETE_NAMESPACE_ALLOWLIST=<YOUR_YUQUE_DELETE_NAMESPACE_ALLOWLIST> --env YUQUE_FILE_ROOT=<YOUR_YUQUE_FILE_ROOT> --env YUQUE_FILE_MAX_BYTES=<YOUR_YUQUE_FILE_MAX_BYTES> --env YUQUE_FILE_ALLOWED_EXTENSIONS=<YOUR_YUQUE_FILE_ALLOWED_EXTENSIONS> -- npx -y @wwwwwujl/yuque-mcpRelated MCP servers
Scrapling MCP Server
Give your AI agent stealth web scraping with Cloudflare bypass and CSS selection, powered by Scrapling.
Chrome DevTools MCP
Give your AI coding agent full control of a live Chrome browser for automation, debugging, and performance analysis.
com.puter/mcp-server
Let AI agents manage your Puter files, websites, and serverless workers over MCP.
Browser automation for AI agents via MCP, powering ByteDance's Agent TARS hybrid GUI/DOM browser control.
Run arbitrary shell commands from an MCP-connected AI agent.
Filesystem access MCP server from ByteDance's UI-TARS/Agent TARS ecosystem.