Skip to main content
Glama

语雀 MCP 服务器

English Version

一个用于与语雀 API 集成的 Model-Context-Protocol (MCP) 服务器。此实现受 Figma-Context-MCP 的启发,并使用 语雀开放 API

概述

该服务器提供了与语雀知识库平台交互的 MCP 工具,允许 AI 模型:

  • 获取用户和文档信息

  • 创建、读取、更新和删除文档

  • 搜索语雀中的内容

  • 获取知识库信息

  • 获取统计数据和分析信息

Related MCP server: yuque-mcp-plus

安装

安装 via Smithery

要使用 Smithery 将 Yuque MCP Server 自动安装到 Claude 桌面端:

npx -y @smithery/cli install @HenryHaoson/Yuque-MCP-Server --client claude

前提条件

  • Node.js 18+ (推荐)

  • 拥有 API 令牌的语雀账号

设置

  1. 克隆此仓库:

    git clone https://github.com/Henryhaoson/Yueque-MCP-Server.git
    cd Yueque-MCP-Server
  2. 安装依赖:

    npm install
  3. 基于 .env.example 创建 .env 文件:

    cp .env.example .env
  4. (可选) 在 .env 文件中添加你的语雀 API 令牌:

    YUQUE_API_TOKEN=your_yuque_api_token_here

    你也可以选择在连接到服务器时通过查询参数提供令牌,而不是在 .env 文件中设置。

使用方法

运行服务器

开发模式

# HTTP 服务器模式
npm run dev

# CLI stdio 模式
npm run dev:cli

生产模式

首先,构建项目:

npm run build

然后在 HTTP 或 CLI 模式下运行:

# HTTP 服务器模式
npm run start

# CLI stdio 模式
npm run start:cli

使用 Docker 部署

本项目提供了 Docker 支持,使您可以轻松地容器化和部署服务器。

使用 Docker Compose(推荐)

  1. 构建并启动容器:

    docker-compose up -d
  2. 查看日志:

    docker-compose logs -f
  3. 停止服务:

    docker-compose down

您可以通过环境变量或在 .env 文件中设置配置项:

# .env 文件示例
PORT=3000
YUQUE_API_TOKEN=your_token_here
YUQUE_API_BASE_URL=https://www.yuque.com/api/v2

手动使用 Docker

  1. 构建 Docker 镜像:

    docker build -t yuque-mcp-server .
  2. 运行容器:

    docker run -d -p 3000:3000 --name yuque-mcp-server yuque-mcp-server
  3. 使用环境变量:

    docker run -d -p 3000:3000 \
      -e YUQUE_API_TOKEN=your_token_here \
      -e YUQUE_API_BASE_URL=https://www.yuque.com/api/v2 \
      --name yuque-mcp-server yuque-mcp-server

MCP 工具

语雀 MCP 服务器提供以下工具:

用户和文档管理

  • get_current_user - 获取当前认证用户的信息,包括用户ID、用户名、头像等语雀账号基本信息

  • get_user_docs - 获取当前用户的所有知识库文档列表,包括私人和协作文档

  • get_user_repos - 获取指定用户的知识库列表,知识库是语雀中组织文档的集合

  • get_repo_docs - 获取特定知识库中的所有文档列表,包括文档标题、更新时间等信息

  • get_doc - 获取语雀中特定文档的详细内容,包括正文、修改历史和权限信息

  • create_doc - 在指定知识库中创建新的语雀文档,支持多种格式内容(Markdown、HTML、Lake)

  • update_doc - 更新语雀中已存在的文档,可以修改标题、内容或权限设置

  • delete_doc - 从语雀知识库中删除指定文档,此操作不可撤销

  • search - 在语雀平台中搜索文档或知识库内容,支持范围和作者筛选

团队统计分析

  • get_group_statistics - 获取团队的汇总统计数据,包括成员人数、文档数量、阅读量和互动数据等

  • get_group_member_statistics - 获取团队成员的统计数据,包括各成员的编辑次数、阅读量、点赞量等

  • get_group_book_statistics - 获取团队知识库的统计数据,包括各知识库的文档数、字数、阅读量等

  • get_group_doc_statistics - 获取团队文档的统计数据,包括各文档的字数、阅读量、评论量等

与 AI 模型的集成

此 MCP 服务器可以与支持 Model-Context-Protocol 的 AI 模型一起使用,允许它们通过定义的工具与语雀交互。例如:

  1. 启动 MCP 服务器

  2. 从兼容的客户端连接到服务器

  3. AI 模型现在可以使用注册的工具与语雀数据交互

SSE 端点的查询参数

当连接到 SSE 端点时,你可以通过查询参数(query parameters)覆盖环境配置,这些参数的优先级高于环境变量:

  • accessToken: 覆盖在 .env 文件中设置的语雀 API 令牌

  • baseUrl: 覆盖在 .env 文件中设置的语雀 API 基础 URL

示例:

http://localhost:3000/sse?accessToken=your_token_here&baseUrl=https://custom.yuque.api/v2

这允许你在不修改 .env 文件的情况下动态配置服务,并且查询参数的优先级高于环境变量。这对于多用户环境或测试不同 API 端点特别有用。

每个 SSE 连接都可以使用不同的配置,这使得同一个服务器实例可以同时为不同的用户或环境提供服务。

开发

项目结构

src/
  ├── config.ts          # 服务器配置
  ├── index.ts           # 主入口点
  ├── cli.ts             # CLI 入口点 
  ├── server.ts          # MCP 服务器实现
  └── services/
      └── yuque.ts       # 语雀 API 服务

添加新工具

要添加新工具,请修改 src/server.ts 中的 registerTools 方法。

API 改进

最近的更新增加了以下功能:

  1. 团队统计数据:添加了获取团队、成员、知识库和文档统计数据的功能,便于分析和监控团队知识库的使用情况。

  2. 文档管理增强

    • 支持多种文档格式(Markdown、HTML、Lake)

    • 完善的文档公开性设置(私密、公开、企业内公开)

    • 搜索功能支持更多参数和过滤条件

  3. 数据类型完善:更新了接口定义,使其与语雀 OpenAPI 规范保持一致。

许可证

MIT License

Copyright (c) 2025 Henryhaoson

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

致谢

Available Tools

14 tools
create_docC

在指定知识库中创建新的语雀文档,支持多种格式内容

ParametersJSON Schema
NameRequiredDescriptionDefault
namespaceYes知识库的命名空间,格式为 user/repo
titleYes文档标题
slugYes文档的短链接名称,用于URL路径
bodyYes文档内容,支持Markdown格式
formatNo内容格式,可选值:markdown、html、lake,默认为 markdown
public_levelNo公开性,可选值:0(私密)、1(公开)、2(企业内公开),默认为 1
accessTokenNo用于认证 API 请求的令牌

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions support for multiple formats but doesn't cover critical aspects like required permissions, rate limits, error handling, or what happens on success (e.g., returns a document ID). For a creation tool with zero annotation coverage, this leaves significant gaps in understanding its behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core purpose ('创建新的语雀文档') and adds useful context about format support. Every word earns its place with no redundancy or wasted text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (7 parameters, creation operation) and lack of both annotations and output schema, the description is insufficient. It doesn't explain return values, error conditions, or behavioral nuances, leaving the agent under-informed for a mutation tool with multiple inputs.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 7 parameters thoroughly. The description adds minimal value beyond the schema, only implying that 'format' supports multiple types without specifying details. Baseline 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('创建新的语雀文档' - create new Yuque document) and resource ('在指定知识库中' - in specified knowledge base), specifying it supports multiple content formats. It distinguishes from siblings like 'update_doc' or 'delete_doc' by focusing on creation, though it doesn't explicitly contrast with 'get_doc' operations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. The description doesn't mention prerequisites (e.g., needing a valid namespace or authentication), nor does it contrast with sibling tools like 'update_doc' for modifications or 'get_repo_docs' for listing documents.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_docA

从语雀知识库中删除指定文档,此操作不可撤销

ParametersJSON Schema
NameRequiredDescriptionDefault
namespaceYes知识库的命名空间,格式为 user/repo
idYes要删除的文档ID
accessTokenNo用于认证 API 请求的令牌

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly states the tool performs a deletion and that it's irreversible ('此操作不可撤销'), which is critical behavioral information. However, it does not mention authentication requirements, rate limits, or error handling, leaving some gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the key information: the action, resource, and critical warning about irreversibility. Every word earns its place with no redundancy or unnecessary details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive tool with no annotations and no output schema, the description is moderately complete. It covers the core purpose and irreversible nature but lacks details on authentication (implied by 'accessToken' in schema), response format, or error scenarios. Given the complexity, it should provide more behavioral context to be fully adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all three parameters ('namespace', 'id', 'accessToken') with descriptions. The description does not add any additional meaning or context beyond what the schema provides, such as format examples or usage tips, meeting the baseline for high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('删除' meaning 'delete'), the resource ('文档' meaning 'document'), and the system context ('从语雀知识库中' meaning 'from Yuque knowledge base'). It distinguishes from siblings like 'create_doc', 'update_doc', and 'get_doc' by specifying the destructive delete operation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for deleting documents in Yuque, but does not explicitly state when to use this tool versus alternatives (e.g., 'update_doc' for modifications or 'get_doc' for retrieval). It mentions the operation is irreversible, which provides some contextual guidance but lacks explicit comparisons or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_current_userC

获取当前认证用户的信息,包括用户ID、用户名、头像等语雀账号基本信息

ParametersJSON Schema
NameRequiredDescriptionDefault
accessTokenNo用于认证 API 请求的令牌

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It mentions authentication ('当前认证用户') which aligns with the accessToken parameter, but doesn't describe what happens without authentication, rate limits, error conditions, or response format. For a tool with authentication requirements and no annotations, this leaves significant behavioral gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core purpose. It wastes no words and directly communicates what the tool does. However, it could be slightly more structured by separating authentication requirements from returned data.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (authentication required, returns user data), no annotations, and no output schema, the description is minimally adequate. It covers the basic purpose and data returned but lacks details about authentication flow, error handling, and response structure that would be helpful for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with one parameter (accessToken) fully documented in the schema. The description adds minimal value beyond the schema by implying authentication context ('当前认证用户'), but doesn't provide additional syntax, format, or usage details for the parameter. Baseline 3 is appropriate when schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '获取当前认证用户的信息' (get current authenticated user information) with specific resources listed (user ID, username, avatar, basic Yuque account information). It distinguishes from siblings by focusing on current user data rather than documents, groups, or repositories. However, it doesn't explicitly contrast with potential similar tools like 'get_user_docs'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when this tool is appropriate compared to other user-related tools (like 'get_user_docs' or 'get_user_repos'), nor does it specify prerequisites or context requirements beyond the implied authentication.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_docC

获取语雀中特定文档的详细内容,包括正文、修改历史和权限信息(支持分块处理大型文档)

ParametersJSON Schema
NameRequiredDescriptionDefault
namespaceYes知识库的命名空间,格式为 user/repo
slugYes文档的唯一标识或短链接名称
chunk_indexNo要获取的文档块索引,不提供则返回第一块或全部(如果内容较小)
chunk_sizeNo分块大小(字符数),默认为100000
accessTokenNo用于认证 API 请求的令牌

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It mentions that the tool retrieves detailed content and supports chunking for large documents, which adds some context. However, it lacks critical details like authentication requirements (implied by 'accessToken' parameter but not stated), rate limits, error conditions, or what happens if chunk parameters are omitted. For a tool with 5 parameters and no annotations, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence in Chinese that front-loads the core purpose and includes key features (chunking support). It avoids redundancy and wastes no words, though it could be slightly more structured for clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (5 parameters, no annotations, no output schema), the description is incomplete. It covers the basic purpose and chunking but misses authentication needs, error handling, output format details, and differentiation from siblings. For a tool that retrieves detailed document data, more context is needed to guide effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds minimal value beyond the schema: it implies the tool handles large documents via chunking, which relates to 'chunk_index' and 'chunk_size', but doesn't provide additional syntax or format details. Baseline 3 is appropriate as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '获取语雀中特定文档的详细内容,包括正文、修改历史和权限信息' (retrieve detailed content of a specific document in Yuque, including body, revision history, and permission information). It specifies the resource (document in Yuque) and what content is retrieved, though it doesn't explicitly distinguish from siblings like 'get_doc_chunks_info' or 'get_repo_docs' beyond mentioning chunking support.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It mentions chunking for large documents but doesn't clarify when to use 'get_doc' vs. 'get_doc_chunks_info' for chunk-related operations or 'get_repo_docs' for listing documents. No explicit when/when-not or alternative tool references are included.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_doc_chunks_infoC

获取文档的分块元信息,包括总块数、每块的字符数等

ParametersJSON Schema
NameRequiredDescriptionDefault
namespaceYes知识库的命名空间,格式为 user/repo
slugYes文档的唯一标识或短链接名称
chunk_sizeNo分块大小(字符数),默认为100000
accessTokenNo用于认证 API 请求的令牌

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It states it retrieves metadata (implying read-only), but doesn't disclose behavioral traits like authentication requirements (implied by 'accessToken' parameter but not described), rate limits, error conditions, or whether it's idempotent. For a tool with no annotations, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence in Chinese that front-loads the core purpose. It avoids unnecessary words, though it could be slightly more structured (e.g., separating purpose from details). Every part earns its place, making it appropriately concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description is incomplete. It doesn't explain the return format (e.g., structure of metadata), error handling, or dependencies like authentication. For a tool with 4 parameters and no structured output, more context is needed to guide effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters. The description doesn't add meaning beyond the schema, such as explaining relationships between parameters (e.g., how 'namespace' and 'slug' identify a document) or usage examples. Baseline 3 is appropriate as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('获取' - get/retrieve) and the resource ('文档的分块元信息' - document chunk metadata), specifying what information is returned (total chunks, character count per chunk). It distinguishes from siblings like 'get_doc' (full document) and 'search' (search functionality), though not explicitly named. The purpose is specific but could be more precise about differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing an existing document), exclusions, or comparisons to siblings like 'get_doc' (for full content) or 'get_repo_docs' (for listing). The description implies usage for metadata analysis but lacks explicit context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_group_book_statisticsC

获取团队知识库的统计数据,包括各知识库的文档数、字数、阅读量等

ParametersJSON Schema
NameRequiredDescriptionDefault
loginYes团队的登录名或唯一标识
nameNo知识库名称,用于过滤特定知识库
rangeNo时间范围(0: 全部, 30: 近30天, 365: 近一年)
pageNo页码,默认为1
limitNo每页数量,默认为10,最大为20
sortFieldNo排序字段,可选值:content_updated_at_ms、word_count、post_count、read_count、like_count、watch_count、comment_count
sortOrderNo排序方向,可选值:desc(降序)、asc(升序),默认为desc
accessTokenNo用于认证 API 请求的令牌

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It mentions statistics retrieval but doesn't disclose behavioral traits like pagination behavior (implied by page/limit parameters), authentication requirements (accessToken parameter), rate limits, error conditions, or what happens when no data matches. For a read operation with 8 parameters, this is insufficient disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient Chinese sentence that clearly states the tool's purpose with relevant examples. It's front-loaded with the main function and wastes no words. Every element earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 8 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain the return format, pagination behavior, authentication requirements, or error handling. While the schema covers parameter definitions, the description fails to provide necessary context for proper tool invocation and result interpretation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 8 parameters thoroughly. The description adds no parameter-specific information beyond what's in the schema. It mentions general statistics types but doesn't explain how parameters like 'range' or 'sortField' affect which statistics are returned. Baseline 3 is appropriate when schema does all the work.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '获取团队知识库的统计数据' (get team knowledge base statistics) with specific examples of metrics like document count, word count, and read count. It distinguishes from siblings like get_group_doc_statistics (doc-specific) and get_group_statistics (general group stats) by focusing on knowledge base-level metrics. However, it doesn't explicitly name the sibling tools for comparison.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like get_group_doc_statistics or get_group_statistics. It doesn't mention prerequisites, exclusions, or typical use cases. The agent must infer usage from the tool name and parameters alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_group_doc_statisticsC

获取团队文档的统计数据,包括各文档的字数、阅读量、评论量等

ParametersJSON Schema
NameRequiredDescriptionDefault
loginYes团队的登录名或唯一标识
bookIdNo知识库ID,用于过滤特定知识库的文档
nameNo文档名称,用于过滤特定文档
rangeNo时间范围(0: 全部, 30: 近30天, 365: 近一年)
pageNo页码,默认为1
limitNo每页数量,默认为10,最大为20
sortFieldNo排序字段,可选值:content_updated_at、word_count、read_count、like_count、comment_count、created_at
sortOrderNo排序方向,可选值:desc(降序)、asc(升序),默认为desc
accessTokenNo用于认证 API 请求的令牌

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden but offers minimal behavioral insight. It mentions the types of statistics returned but doesn't disclose critical traits like whether this is a read-only operation (implied by 'get'), authentication requirements (only hinted via accessToken parameter), rate limits, pagination behavior (implied by page/limit parameters), or what happens with invalid inputs. For a tool with 9 parameters and no annotation coverage, this is inadequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence in Chinese that front-loads the core purpose. It wastes no words but could be slightly more structured (e.g., separating purpose from data details). Every part earns its place, though it might benefit from brevity in English contexts.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given high complexity (9 parameters, no annotations, no output schema), the description is incomplete. It doesn't explain the return format (e.g., list of documents with stats?), error conditions, authentication needs beyond the accessToken parameter, or how to interpret results. For a statistical query tool with multiple filters and sorting options, more context is needed to guide effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, providing detailed documentation for all 9 parameters including enums and defaults. The description adds no parameter-specific semantics beyond implying statistics include 'word count, read count, comment count' which loosely relates to sortField options. It doesn't explain parameter interactions (e.g., how bookId, name, and range combine) or provide examples. Baseline 3 is appropriate since the schema does heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('获取' meaning 'get') and resource ('团队文档的统计数据' meaning 'team document statistics'), specifying what data is included (word count, read count, comment count, etc.). It distinguishes from siblings like get_doc (single document) or get_group_statistics (general group stats) by focusing on document-level metrics. However, it doesn't explicitly differentiate from get_group_book_statistics or get_repo_docs, which might overlap in scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like get_group_book_statistics (for book-level stats), get_doc (for single document details), or get_repo_docs (for document listings). It lacks context about prerequisites (e.g., needing team access) or exclusions (e.g., not for user-specific docs). Usage is implied only by the name and parameters, with no explicit instructions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_group_member_statisticsC

获取团队成员的统计数据,包括各成员的编辑次数、阅读量、点赞量等

ParametersJSON Schema
NameRequiredDescriptionDefault
loginYes团队的登录名或唯一标识
nameNo成员名称,用于过滤特定成员
rangeNo时间范围(0: 全部, 30: 近30天, 365: 近一年)
pageNo页码,默认为1
limitNo每页数量,默认为10,最大为20
sortFieldNo排序字段,可选值:write_doc_count、write_count、read_count、like_count
sortOrderNo排序方向,可选值:desc(降序)、asc(升序),默认为desc
accessTokenNo用于认证 API 请求的令牌

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It describes a read operation ('获取' - get) but doesn't mention authentication requirements (though 'accessToken' is in the schema), rate limits, pagination behavior (implied by 'page' and 'limit' but not explained), or what happens on errors. For a tool with 8 parameters and no annotation coverage, this leaves significant gaps in understanding its behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core purpose. It avoids redundancy and wastes no words, though it could be slightly more structured (e.g., by explicitly listing key metrics). Every part earns its place by specifying what statistics are included.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (8 parameters, no annotations, no output schema), the description is incomplete. It lacks details on authentication, pagination, error handling, and output format (e.g., what data is returned beyond the mentioned metrics). Without annotations or an output schema, the description should compensate more to guide effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all 8 parameters with descriptions, enums, and defaults. The description adds no additional parameter semantics beyond implying statistics include '编辑次数、阅读量、点赞量等' (edit count, read count, like count, etc.), which loosely relates to 'sortField' options but doesn't clarify parameter usage or interactions. Baseline 3 is appropriate as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '获取团队成员的统计数据,包括各成员的编辑次数、阅读量、点赞量等' (Get team member statistics, including each member's edit count, read count, like count, etc.). It specifies the verb ('获取' - get) and resource ('团队成员统计数据' - team member statistics) with concrete examples of metrics. However, it doesn't explicitly differentiate from sibling tools like 'get_group_statistics' or 'get_group_doc_statistics', which appear related.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'get_group_statistics' or 'get_group_doc_statistics', nor does it specify prerequisites (e.g., needing an access token) or exclusions. Usage is implied by the purpose but lacks explicit context for selection among similar tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_group_statisticsC

获取团队的汇总统计数据,包括成员人数、文档数量、阅读量和互动数据等

ParametersJSON Schema
NameRequiredDescriptionDefault
loginYes团队的登录名或唯一标识
accessTokenNo用于认证 API 请求的令牌

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It states this is a read operation ('获取' - get/retrieve) which implies non-destructive behavior, but doesn't disclose authentication requirements (though the schema shows accessToken parameter), rate limits, error conditions, or what happens if the team doesn't exist. For a tool with no annotation coverage, this leaves significant behavioral gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that states the purpose and enumerates key metrics. It's appropriately sized for a read operation with clear parameters. Every element serves a purpose, though it could be slightly more structured by separating purpose from metric examples.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only statistics tool with 100% schema coverage but no output schema, the description adequately covers what metrics are returned. However, without annotations and with multiple sibling tools offering similar functionality, it should provide more context about when to choose this comprehensive tool versus more specific alternatives. The lack of output schema means the description should ideally hint at return format.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters (login and accessToken) with descriptions. The tool description adds no parameter-specific information beyond what's in the schema. With complete schema coverage, the baseline is 3 even without additional param details in the description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '获取团队的汇总统计数据' (get team summary statistics) and lists specific metrics like member count, document count, reading volume, and interaction data. It distinguishes from siblings like get_group_book_statistics or get_group_member_statistics by covering multiple aggregated metrics rather than specific subsets. However, it doesn't explicitly name the sibling tools for comparison.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. With siblings like get_group_book_statistics, get_group_doc_statistics, and get_group_member_statistics that retrieve specific subsets of statistics, there's no indication of when this comprehensive tool is preferred over those more targeted tools. No prerequisites or exclusions are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_repo_docsB

获取特定知识库中的所有文档列表,包括文档标题、更新时间等信息

ParametersJSON Schema
NameRequiredDescriptionDefault
namespaceYes知识库的命名空间,格式为 user/repo
accessTokenNo用于认证 API 请求的令牌

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions returning '文档标题、更新时间等信息' (document titles, update times, and other information), which hints at a read-only list operation, but doesn't specify whether this is paginated, rate-limited, requires authentication (though the schema shows an optional accessToken), or what 'other information' includes. For a tool with zero annotation coverage, this leaves significant behavioral gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core purpose ('获取特定知识库中的所有文档列表' - get all documents in a specific knowledge base) and adds useful detail ('包括文档标题、更新时间等信息' - including document titles, update times, and other information). Every word earns its place with zero redundancy or waste.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (2 parameters, no output schema, no annotations), the description is minimally adequate. It covers the basic purpose and return data types but lacks details on authentication behavior, error handling, pagination, or sibling differentiation. Without annotations or output schema, the description should do more to compensate, but it meets the bare minimum for a read-only list tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, with both parameters ('namespace' and 'accessToken') fully described in the schema. The description adds no additional parameter semantics beyond implying the tool operates on a '特定知识库' (specific knowledge base), which aligns with the 'namespace' parameter. Since the schema does the heavy lifting, the baseline score of 3 is appropriate, as the description doesn't compensate but doesn't detract either.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('获取' - get/retrieve) and resource ('特定知识库中的所有文档列表' - all documents in a specific knowledge base), making the purpose unambiguous. It distinguishes from siblings like 'get_doc' (single document) and 'get_user_docs' (user-specific documents) by specifying 'all documents in a specific knowledge base'. However, it doesn't explicitly contrast with 'get_user_repos' or 'search', which slightly limits differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when to choose 'get_repo_docs' over 'get_user_docs' (for user-specific docs) or 'search' (for filtered queries), nor does it indicate prerequisites like authentication needs. The lack of usage context leaves the agent to infer from tool names alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_user_docsB

获取当前用户的所有知识库文档列表,包括私人和协作文档

ParametersJSON Schema
NameRequiredDescriptionDefault
accessTokenNo用于认证 API 请求的令牌

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It states what the tool does but lacks behavioral details: it doesn't mention pagination, rate limits, sorting, what fields are returned, error conditions, or whether this is a read-only operation. The description is functional but misses important operational context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence in Chinese that efficiently conveys the core functionality. No wasted words, appropriately front-loaded with the main purpose. Every word earns its place in this compact description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a list retrieval tool with 1 parameter (100% schema coverage) but no annotations and no output schema, the description is minimally adequate. It covers what the tool does but lacks important context about return format, pagination, and operational constraints. The absence of output schema means the description should ideally mention something about the response structure.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with one parameter (accessToken) fully documented in the schema. The description doesn't add any parameter-specific information beyond what's in the schema. With high schema coverage, the baseline is 3 even without additional param details in the description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('获取' - get/retrieve) and resource ('所有知识库文档列表' - all knowledge base document list) with scope ('当前用户' - current user, '包括私人和协作文档' - including private and collaborative documents). It distinguishes from siblings like get_doc (single document) and get_repo_docs (repository-specific), but doesn't explicitly mention these distinctions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context ('当前用户' - current user) but doesn't explicitly state when to use this tool versus alternatives like get_repo_docs (repository-focused) or search (filtered search). No exclusions or prerequisites are mentioned, though the accessToken parameter suggests authentication is required.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_user_reposB

获取指定用户的知识库列表,知识库是语雀中组织文档的集合

ParametersJSON Schema
NameRequiredDescriptionDefault
loginYes用户的登录名或唯一标识
accessTokenNo用于认证 API 请求的令牌

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It states the tool retrieves a list but doesn't disclose behavioral traits like pagination, rate limits, error handling, or whether it requires authentication (though the accessToken parameter hints at this). For a read operation with no annotation coverage, this leaves significant gaps in understanding how the tool behaves.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core purpose. It wastes no words and is appropriately sized for a simple list-retrieval tool, making it easy for an AI agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (2 parameters, no output schema, no annotations), the description is minimally adequate. It explains what the tool does but lacks details on behavior, output format, or usage context. Without annotations or an output schema, more completeness would be helpful, but it meets the bare minimum for a read operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, with both parameters (login and accessToken) fully described in the schema. The description adds no additional meaning beyond what the schema provides, such as explaining the format of login or when accessToken is required. Since the schema does the heavy lifting, the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '获取指定用户的知识库列表' (get a specified user's repository list), specifying the verb '获取' (get) and resource '知识库列表' (repository list). It distinguishes from siblings like get_user_docs (which gets documents) by focusing on repositories. However, it doesn't explicitly differentiate from get_repo_docs (which gets docs within a repo), so it's not a perfect 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when to use get_user_repos instead of get_user_docs or get_repo_docs, nor does it specify prerequisites like authentication requirements. The context is implied but not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_docC

更新语雀中已存在的文档,可以修改标题、内容或权限设置

ParametersJSON Schema
NameRequiredDescriptionDefault
namespaceYes知识库的命名空间,格式为 user/repo
idYes要更新的文档ID
titleNo文档的新标题
slugNo文档的新短链接名称
bodyNo文档的新内容,支持Markdown格式
publicNo文档的公开状态,0(私密)、1(公开)、2(企业内公开)
formatNo内容格式,可选值:markdown、html、lake
accessTokenNo用于认证 API 请求的令牌

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It states this is an update operation ('更新'), implying mutation, but doesn't disclose behavioral traits like authentication requirements (though accessToken parameter hints at this), rate limits, whether changes are reversible, what happens to unspecified fields, or error conditions. For a mutation tool with zero annotation coverage, this is a significant gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence in Chinese that front-loads the core purpose. It wastes no words but could be slightly more structured (e.g., separating scope from modifiable fields). Every part earns its place, making it appropriately concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given this is a mutation tool with 8 parameters, no annotations, and no output schema, the description is incomplete. It doesn't cover authentication needs (implied by accessToken but not stated), response format, error handling, or behavioral constraints. For a tool of this complexity with no structured safety hints, the description should provide more contextual guidance.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 8 parameters thoroughly. The description mentions '标题、内容或权限设置' (title, content, or permission settings), which maps to title, body, and public parameters, but adds no additional semantic context beyond what the schema provides. With high schema coverage, baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('更新' meaning 'update') and resource ('语雀中已存在的文档' meaning 'existing documents in Yuque'), and specifies what can be modified ('标题、内容或权限设置' meaning 'title, content, or permission settings'). It distinguishes from create_doc by specifying '已存在的' (existing), but doesn't explicitly differentiate from other update operations if they exist.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like create_doc or delete_doc. It doesn't mention prerequisites (e.g., needing an existing document ID) or contextual constraints (e.g., user permissions). The only implied usage is for updating existing documents, but no explicit alternatives or exclusions are stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 14 tool updates
    • First observedcreate_doc
    • First observeddelete_doc
    • First observedget_current_user
    • First observedget_doc
    • First observedget_doc_chunks_info
    • First observedget_group_book_statistics
    • First observedget_group_doc_statistics
    • First observedget_group_member_statistics
    • First observedget_group_statistics
    • First observedget_repo_docs
    • First observedget_user_docs
    • First observedget_user_repos
    • First observedsearch
    • First observedupdate_doc

TDQS

B3.4/5.0
Disambiguation4/5

Most tools have distinct purposes, such as create_doc, delete_doc, get_doc, and update_doc for document CRUD operations, and get_current_user for user info. However, there is some overlap among the statistics tools (e.g., get_group_book_statistics, get_group_doc_statistics, get_group_member_statistics, get_group_statistics), which could cause confusion as they all retrieve similar team-related data but with slightly different scopes. Descriptions help clarify, but the boundaries are not perfectly clear.

Naming Consistency5/5

Tool names follow a highly consistent verb_noun pattern throughout, using snake_case uniformly. Examples include create_doc, get_doc, update_doc, get_user_repos, and search. All tools adhere to this convention, making them predictable and easy to understand at a glance.

Tool Count5/5

With 14 tools, the count is well-scoped for a Yuque (knowledge base) MCP server. It covers core operations like document management (CRUD), user and repository info, and statistics, without being overwhelming. Each tool appears to serve a specific purpose, justifying its inclusion in the set.

Completeness4/5

The tool set provides comprehensive coverage for document management (create, get, update, delete, list, search) and user/repository info, with added statistics for teams. Minor gaps exist, such as no tools for managing knowledge repositories (e.g., create_repo, delete_repo) or handling comments/likes on documents, but agents can likely work around these with the available tools for core workflows.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Connectors

Related MCP Servers

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/HenryHaoson/Yuque-MCP-Server'

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