Skip to main content
Glama

yuque_get_docs

Retrieve document lists from a Yuque knowledge base repository using repository ID, with pagination controls for managing results.

Instructions

获取文档列表 (List documents in a repository)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
repoIdYes知识库ID (Repository ID)
limitNo返回数量限制,默认20 (Result limit, default 20)
offsetNo偏移量,默认0 (Offset for pagination, default 0)

Implementation Reference

  • The handler function that executes the yuque_get_docs tool logic: extracts repoId, limit, offset from arguments, calls yuqueClient.getDocs API, and returns the result as JSON-formatted text content.
    async function handleGetDocs( client: YuqueClient, args: { repoId: number; limit?: number; offset?: number } ) { const docs = await client.getDocs(args.repoId, { limit: args.limit, offset: args.offset, }); return { content: [ { type: 'text', text: JSON.stringify(docs, null, 2), }, ], }; }
  • Input schema and metadata definition for the yuque_get_docs tool.
    { name: 'yuque_get_docs', description: '获取文档列表 (List documents in a repository)', inputSchema: { type: 'object', properties: { repoId: { type: 'number', description: '知识库ID (Repository ID)', }, limit: { type: 'number', description: '返回数量限制,默认20 (Result limit, default 20)', minimum: 1, maximum: 100, }, offset: { type: 'number', description: '偏移量,默认0 (Offset for pagination, default 0)', minimum: 0, }, }, required: ['repoId'], }, },
  • src/server.ts:46-50 (registration)
    Server registration for listing tools, which includes the yuque_get_docs schema from YUQUE_TOOLS array.
    server.setRequestHandler(ListToolsRequestSchema, async () => { return { tools: YUQUE_TOOLS, }; });
  • src/server.ts:53-67 (registration)
    Server registration for tool calls, which dispatches to handleTool (containing switch for yuque_get_docs).
    server.setRequestHandler(CallToolRequestSchema, async (request) => { try { return await handleTool(request, { client: yuqueClient }); } catch (error) { if (error instanceof McpError) { throw error; } const errorMessage = error instanceof Error ? error.message : String(error); throw new McpError( ErrorCode.InternalError, `Error executing tool: ${errorMessage}` ); } });
  • Supporting utility in YuqueClient that performs the actual HTTP request to Yuque API /repos/{repoId}/docs endpoint with optional pagination parameters.
    async getDocs(repoId: number, options?: { limit?: number; offset?: number }): Promise<YuqueDoc[]> { const params = new URLSearchParams(); if (options?.limit) params.append('limit', options.limit.toString()); if (options?.offset) params.append('offset', options.offset.toString()); const endpoint = `/repos/${repoId}/docs${params.toString() ? '?' + params.toString() : ''}`; return this.request<YuqueDoc[]>(endpoint); }

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/tanis2010/yuque-mcp-server'

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