yuque-mcp 0.1.2 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/server.js CHANGED
@@ -15,7 +15,7 @@ export function createServer(token) {
15
15
  const client = new YuqueClient(token);
16
16
  const server = new Server({
17
17
  name: 'yuque-mcp',
18
- version: '0.1.0',
18
+ version: '0.1.2',
19
19
  }, {
20
20
  capabilities: {
21
21
  tools: {},
@@ -135,4 +135,34 @@ export interface YuqueApiError {
135
135
  message: string;
136
136
  status?: number;
137
137
  }
138
+ /** Data for creating a repo/book. */
139
+ export interface CreateRepoData {
140
+ name: string;
141
+ slug: string;
142
+ description?: string;
143
+ public?: number;
144
+ type?: string;
145
+ }
146
+ /** Data for updating a repo/book. */
147
+ export interface UpdateRepoData {
148
+ name?: string;
149
+ slug?: string;
150
+ description?: string;
151
+ public?: number;
152
+ }
153
+ /** Data for creating a document. */
154
+ export interface CreateDocData {
155
+ title: string;
156
+ slug?: string;
157
+ body?: string;
158
+ format?: string;
159
+ public?: number;
160
+ }
161
+ /** Data for updating a document. */
162
+ export interface UpdateDocData {
163
+ title?: string;
164
+ slug?: string;
165
+ body?: string;
166
+ public?: number;
167
+ }
138
168
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/services/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/services/types.ts"],"names":[],"mappings":"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"}
@@ -1,63 +1,62 @@
1
- import type { YuqueUser, YuqueGroup, YuqueRepo, YuqueDoc, YuqueTocItem, YuqueSearchResult, YuqueDocVersion, YuqueGroupMember, YuqueStatistics } from './types.js';
1
+ import type { YuqueUser, YuqueGroup, YuqueRepo, YuqueDoc, YuqueTocItem, YuqueSearchResult, YuqueDocVersion, YuqueGroupMember, YuqueStatistics, CreateRepoData, UpdateRepoData, CreateDocData, UpdateDocData } from './types.js';
2
2
  export declare class YuqueClient {
3
3
  private client;
4
4
  constructor(token: string, baseURL?: string);
5
+ /** Get the currently authenticated user. */
5
6
  getUser(): Promise<YuqueUser>;
7
+ /** List groups/teams that a user belongs to. */
6
8
  listGroups(userId: number): Promise<YuqueGroup[]>;
9
+ /** Search for documents, repos, or users. */
7
10
  search(query: string, type?: string): Promise<YuqueSearchResult>;
11
+ /** List all repos for a user. */
8
12
  listUserRepos(login: string): Promise<YuqueRepo[]>;
13
+ /** List all repos for a group. */
9
14
  listGroupRepos(login: string): Promise<YuqueRepo[]>;
15
+ /** Get a repo by ID or namespace (e.g. "group/book"). */
10
16
  getRepo(idOrNamespace: string | number): Promise<YuqueRepo>;
11
- createUserRepo(login: string, data: {
12
- name: string;
13
- slug: string;
14
- description?: string;
15
- public?: number;
16
- type?: string;
17
- }): Promise<YuqueRepo>;
18
- createGroupRepo(login: string, data: {
19
- name: string;
20
- slug: string;
21
- description?: string;
22
- public?: number;
23
- type?: string;
24
- }): Promise<YuqueRepo>;
25
- updateRepo(idOrNamespace: string | number, data: {
26
- name?: string;
27
- slug?: string;
28
- description?: string;
29
- public?: number;
30
- }): Promise<YuqueRepo>;
17
+ /** Create a new repo under a user. */
18
+ createUserRepo(login: string, data: CreateRepoData): Promise<YuqueRepo>;
19
+ /** Create a new repo under a group. */
20
+ createGroupRepo(login: string, data: CreateRepoData): Promise<YuqueRepo>;
21
+ /** Update a repo by ID or namespace. */
22
+ updateRepo(idOrNamespace: string | number, data: UpdateRepoData): Promise<YuqueRepo>;
23
+ /** Delete a repo by ID or namespace. */
31
24
  deleteRepo(idOrNamespace: string | number): Promise<void>;
25
+ /** List all documents in a repo. */
32
26
  listDocs(repoId: string | number): Promise<YuqueDoc[]>;
27
+ /** Get a single document by repo and doc ID/slug. */
33
28
  getDoc(repoId: string | number, docId: string | number): Promise<YuqueDoc>;
34
- createDoc(repoId: string | number, data: {
35
- title: string;
36
- slug?: string;
37
- body?: string;
38
- format?: string;
39
- public?: number;
40
- }): Promise<YuqueDoc>;
41
- updateDoc(repoId: string | number, docId: string | number, data: {
42
- title?: string;
43
- slug?: string;
44
- body?: string;
45
- public?: number;
46
- }): Promise<YuqueDoc>;
29
+ /** Create a new document in a repo. */
30
+ createDoc(repoId: string | number, data: CreateDocData): Promise<YuqueDoc>;
31
+ /** Update an existing document. */
32
+ updateDoc(repoId: string | number, docId: string | number, data: UpdateDocData): Promise<YuqueDoc>;
33
+ /** Delete a document. */
47
34
  deleteDoc(repoId: string | number, docId: string | number): Promise<void>;
35
+ /** Get the table of contents for a repo. */
48
36
  getToc(repoId: string | number): Promise<YuqueTocItem[]>;
37
+ /** Update the table of contents for a repo. */
49
38
  updateToc(repoId: string | number, data: string): Promise<YuqueTocItem[]>;
39
+ /** List all versions of a document. */
50
40
  listDocVersions(docId: number): Promise<YuqueDocVersion[]>;
41
+ /** Get a specific version of a document. */
51
42
  getDocVersion(versionId: number): Promise<YuqueDocVersion>;
43
+ /** List all members of a group. */
52
44
  listGroupMembers(login: string): Promise<YuqueGroupMember[]>;
45
+ /** Update a group member's role. */
53
46
  updateGroupMember(login: string, userId: number, data: {
54
47
  role: number;
55
48
  }): Promise<YuqueGroupMember>;
49
+ /** Remove a member from a group. */
56
50
  removeGroupMember(login: string, userId: number): Promise<void>;
51
+ /** Get overall statistics for a group. */
57
52
  getGroupStats(login: string): Promise<YuqueStatistics>;
53
+ /** Get member statistics for a group. */
58
54
  getGroupMemberStats(login: string): Promise<unknown>;
55
+ /** Get book/repo statistics for a group. */
59
56
  getGroupBookStats(login: string): Promise<unknown>;
57
+ /** Get document statistics for a group. */
60
58
  getGroupDocStats(login: string): Promise<unknown>;
59
+ /** Test API connectivity. */
61
60
  hello(): Promise<{
62
61
  message: string;
63
62
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"yuque-client.d.ts","sourceRoot":"","sources":["../../src/services/yuque-client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,SAAS,EACT,UAAU,EACV,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,eAAe,EAEhB,MAAM,YAAY,CAAC;AAGpB,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAgB;gBAElB,KAAK,EAAE,MAAM,EAAE,OAAO,SAAiC;IAW7D,OAAO,IAAI,OAAO,CAAC,SAAS,CAAC;IAS7B,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAYjD,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAchE,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAWlD,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAWnD,OAAO,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAW3D,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE;QACxC,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,SAAS,CAAC;IAYhB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE;QACzC,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,SAAS,CAAC;IAYhB,UAAU,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE;QACrD,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,SAAS,CAAC;IAYhB,UAAU,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASzD,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAWtD,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAW1E,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE;QAC7C,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAYf,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE;QACrE,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAYf,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASzE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAWxD,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAazE,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAY1D,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAY1D,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAW5D,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAYnG,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAS/D,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAWtD,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAWpD,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAWlD,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAYjD,KAAK,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAQ5C"}
1
+ {"version":3,"file":"yuque-client.d.ts","sourceRoot":"","sources":["../../src/services/yuque-client.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,17 @@
1
1
  import axios from 'axios';
2
2
  import { handleYuqueError } from '../utils/error.js';
3
+ /**
4
+ * Wraps an async operation with standardized Yuque error handling.
5
+ * Every API call goes through this so error handling stays consistent.
6
+ */
7
+ async function withErrorHandling(fn) {
8
+ try {
9
+ return await fn();
10
+ }
11
+ catch (error) {
12
+ handleYuqueError(error);
13
+ }
14
+ }
3
15
  export class YuqueClient {
4
16
  client;
5
17
  constructor(token, baseURL = 'https://www.yuque.com/api/v2') {
@@ -11,259 +23,205 @@ export class YuqueClient {
11
23
  },
12
24
  });
13
25
  }
14
- // User APIs
26
+ // ── User APIs ──────────────────────────────────────────────
27
+ /** Get the currently authenticated user. */
15
28
  async getUser() {
16
- try {
17
- const response = await this.client.get('/user');
18
- return response.data.data;
19
- }
20
- catch (error) {
21
- handleYuqueError(error);
22
- }
29
+ return withErrorHandling(async () => {
30
+ const r = await this.client.get('/user');
31
+ return r.data.data;
32
+ });
23
33
  }
34
+ /** List groups/teams that a user belongs to. */
24
35
  async listGroups(userId) {
25
- try {
26
- const response = await this.client.get(`/users/${userId}/groups`);
27
- return response.data.data;
28
- }
29
- catch (error) {
30
- handleYuqueError(error);
31
- }
36
+ return withErrorHandling(async () => {
37
+ const r = await this.client.get(`/users/${userId}/groups`);
38
+ return r.data.data;
39
+ });
32
40
  }
33
- // Search API
41
+ // ── Search API ─────────────────────────────────────────────
42
+ /** Search for documents, repos, or users. */
34
43
  async search(query, type) {
35
- try {
44
+ return withErrorHandling(async () => {
36
45
  const params = { q: query };
37
46
  if (type)
38
47
  params.type = type;
39
- const response = await this.client.get('/search', {
40
- params,
41
- });
42
- return response.data.data;
43
- }
44
- catch (error) {
45
- handleYuqueError(error);
46
- }
48
+ const r = await this.client.get('/search', { params });
49
+ return r.data.data;
50
+ });
47
51
  }
48
- // Repo APIs
52
+ // ── Repo APIs ──────────────────────────────────────────────
53
+ /** List all repos for a user. */
49
54
  async listUserRepos(login) {
50
- try {
51
- const response = await this.client.get(`/users/${login}/repos`);
52
- return response.data.data;
53
- }
54
- catch (error) {
55
- handleYuqueError(error);
56
- }
55
+ return withErrorHandling(async () => {
56
+ const r = await this.client.get(`/users/${login}/repos`);
57
+ return r.data.data;
58
+ });
57
59
  }
60
+ /** List all repos for a group. */
58
61
  async listGroupRepos(login) {
59
- try {
60
- const response = await this.client.get(`/groups/${login}/repos`);
61
- return response.data.data;
62
- }
63
- catch (error) {
64
- handleYuqueError(error);
65
- }
62
+ return withErrorHandling(async () => {
63
+ const r = await this.client.get(`/groups/${login}/repos`);
64
+ return r.data.data;
65
+ });
66
66
  }
67
+ /** Get a repo by ID or namespace (e.g. "group/book"). */
67
68
  async getRepo(idOrNamespace) {
68
- try {
69
- const response = await this.client.get(`/repos/${idOrNamespace}`);
70
- return response.data.data;
71
- }
72
- catch (error) {
73
- handleYuqueError(error);
74
- }
69
+ return withErrorHandling(async () => {
70
+ const r = await this.client.get(`/repos/${idOrNamespace}`);
71
+ return r.data.data;
72
+ });
75
73
  }
74
+ /** Create a new repo under a user. */
76
75
  async createUserRepo(login, data) {
77
- try {
78
- const response = await this.client.post(`/users/${login}/repos`, data);
79
- return response.data.data;
80
- }
81
- catch (error) {
82
- handleYuqueError(error);
83
- }
76
+ return withErrorHandling(async () => {
77
+ const r = await this.client.post(`/users/${login}/repos`, data);
78
+ return r.data.data;
79
+ });
84
80
  }
81
+ /** Create a new repo under a group. */
85
82
  async createGroupRepo(login, data) {
86
- try {
87
- const response = await this.client.post(`/groups/${login}/repos`, data);
88
- return response.data.data;
89
- }
90
- catch (error) {
91
- handleYuqueError(error);
92
- }
83
+ return withErrorHandling(async () => {
84
+ const r = await this.client.post(`/groups/${login}/repos`, data);
85
+ return r.data.data;
86
+ });
93
87
  }
88
+ /** Update a repo by ID or namespace. */
94
89
  async updateRepo(idOrNamespace, data) {
95
- try {
96
- const response = await this.client.put(`/repos/${idOrNamespace}`, data);
97
- return response.data.data;
98
- }
99
- catch (error) {
100
- handleYuqueError(error);
101
- }
90
+ return withErrorHandling(async () => {
91
+ const r = await this.client.put(`/repos/${idOrNamespace}`, data);
92
+ return r.data.data;
93
+ });
102
94
  }
95
+ /** Delete a repo by ID or namespace. */
103
96
  async deleteRepo(idOrNamespace) {
104
- try {
97
+ return withErrorHandling(async () => {
105
98
  await this.client.delete(`/repos/${idOrNamespace}`);
106
- }
107
- catch (error) {
108
- handleYuqueError(error);
109
- }
99
+ });
110
100
  }
111
- // Doc APIs
101
+ // ── Doc APIs ───────────────────────────────────────────────
102
+ /** List all documents in a repo. */
112
103
  async listDocs(repoId) {
113
- try {
114
- const response = await this.client.get(`/repos/${repoId}/docs`);
115
- return response.data.data;
116
- }
117
- catch (error) {
118
- handleYuqueError(error);
119
- }
104
+ return withErrorHandling(async () => {
105
+ const r = await this.client.get(`/repos/${repoId}/docs`);
106
+ return r.data.data;
107
+ });
120
108
  }
109
+ /** Get a single document by repo and doc ID/slug. */
121
110
  async getDoc(repoId, docId) {
122
- try {
123
- const response = await this.client.get(`/repos/${repoId}/docs/${docId}`);
124
- return response.data.data;
125
- }
126
- catch (error) {
127
- handleYuqueError(error);
128
- }
111
+ return withErrorHandling(async () => {
112
+ const r = await this.client.get(`/repos/${repoId}/docs/${docId}`);
113
+ return r.data.data;
114
+ });
129
115
  }
116
+ /** Create a new document in a repo. */
130
117
  async createDoc(repoId, data) {
131
- try {
132
- const response = await this.client.post(`/repos/${repoId}/docs`, data);
133
- return response.data.data;
134
- }
135
- catch (error) {
136
- handleYuqueError(error);
137
- }
118
+ return withErrorHandling(async () => {
119
+ const r = await this.client.post(`/repos/${repoId}/docs`, data);
120
+ return r.data.data;
121
+ });
138
122
  }
123
+ /** Update an existing document. */
139
124
  async updateDoc(repoId, docId, data) {
140
- try {
141
- const response = await this.client.put(`/repos/${repoId}/docs/${docId}`, data);
142
- return response.data.data;
143
- }
144
- catch (error) {
145
- handleYuqueError(error);
146
- }
125
+ return withErrorHandling(async () => {
126
+ const r = await this.client.put(`/repos/${repoId}/docs/${docId}`, data);
127
+ return r.data.data;
128
+ });
147
129
  }
130
+ /** Delete a document. */
148
131
  async deleteDoc(repoId, docId) {
149
- try {
132
+ return withErrorHandling(async () => {
150
133
  await this.client.delete(`/repos/${repoId}/docs/${docId}`);
151
- }
152
- catch (error) {
153
- handleYuqueError(error);
154
- }
134
+ });
155
135
  }
156
- // TOC APIs
136
+ // ── TOC APIs ───────────────────────────────────────────────
137
+ /** Get the table of contents for a repo. */
157
138
  async getToc(repoId) {
158
- try {
159
- const response = await this.client.get(`/repos/${repoId}/toc`);
160
- return response.data.data;
161
- }
162
- catch (error) {
163
- handleYuqueError(error);
164
- }
139
+ return withErrorHandling(async () => {
140
+ const r = await this.client.get(`/repos/${repoId}/toc`);
141
+ return r.data.data;
142
+ });
165
143
  }
144
+ /** Update the table of contents for a repo. */
166
145
  async updateToc(repoId, data) {
167
- try {
168
- const response = await this.client.put(`/repos/${repoId}/toc`, data);
169
- return response.data.data;
170
- }
171
- catch (error) {
172
- handleYuqueError(error);
173
- }
146
+ return withErrorHandling(async () => {
147
+ const r = await this.client.put(`/repos/${repoId}/toc`, data);
148
+ return r.data.data;
149
+ });
174
150
  }
175
- // Doc Version APIs
151
+ // ── Doc Version APIs ───────────────────────────────────────
152
+ /** List all versions of a document. */
176
153
  async listDocVersions(docId) {
177
- try {
178
- const response = await this.client.get('/doc_versions', { params: { doc_id: docId } });
179
- return response.data.data;
180
- }
181
- catch (error) {
182
- handleYuqueError(error);
183
- }
154
+ return withErrorHandling(async () => {
155
+ const r = await this.client.get('/doc_versions', {
156
+ params: { doc_id: docId },
157
+ });
158
+ return r.data.data;
159
+ });
184
160
  }
161
+ /** Get a specific version of a document. */
185
162
  async getDocVersion(versionId) {
186
- try {
187
- const response = await this.client.get(`/doc_versions/${versionId}`);
188
- return response.data.data;
189
- }
190
- catch (error) {
191
- handleYuqueError(error);
192
- }
163
+ return withErrorHandling(async () => {
164
+ const r = await this.client.get(`/doc_versions/${versionId}`);
165
+ return r.data.data;
166
+ });
193
167
  }
194
- // Group Member APIs
168
+ // ── Group Member APIs ──────────────────────────────────────
169
+ /** List all members of a group. */
195
170
  async listGroupMembers(login) {
196
- try {
197
- const response = await this.client.get(`/groups/${login}/users`);
198
- return response.data.data;
199
- }
200
- catch (error) {
201
- handleYuqueError(error);
202
- }
171
+ return withErrorHandling(async () => {
172
+ const r = await this.client.get(`/groups/${login}/users`);
173
+ return r.data.data;
174
+ });
203
175
  }
176
+ /** Update a group member's role. */
204
177
  async updateGroupMember(login, userId, data) {
205
- try {
206
- const response = await this.client.put(`/groups/${login}/users/${userId}`, data);
207
- return response.data.data;
208
- }
209
- catch (error) {
210
- handleYuqueError(error);
211
- }
178
+ return withErrorHandling(async () => {
179
+ const r = await this.client.put(`/groups/${login}/users/${userId}`, data);
180
+ return r.data.data;
181
+ });
212
182
  }
183
+ /** Remove a member from a group. */
213
184
  async removeGroupMember(login, userId) {
214
- try {
185
+ return withErrorHandling(async () => {
215
186
  await this.client.delete(`/groups/${login}/users/${userId}`);
216
- }
217
- catch (error) {
218
- handleYuqueError(error);
219
- }
187
+ });
220
188
  }
221
- // Statistics APIs
189
+ // ── Statistics APIs ────────────────────────────────────────
190
+ /** Get overall statistics for a group. */
222
191
  async getGroupStats(login) {
223
- try {
224
- const response = await this.client.get(`/groups/${login}/statistics`);
225
- return response.data.data;
226
- }
227
- catch (error) {
228
- handleYuqueError(error);
229
- }
192
+ return withErrorHandling(async () => {
193
+ const r = await this.client.get(`/groups/${login}/statistics`);
194
+ return r.data.data;
195
+ });
230
196
  }
197
+ /** Get member statistics for a group. */
231
198
  async getGroupMemberStats(login) {
232
- try {
233
- const response = await this.client.get(`/groups/${login}/statistics/members`);
234
- return response.data.data;
235
- }
236
- catch (error) {
237
- handleYuqueError(error);
238
- }
199
+ return withErrorHandling(async () => {
200
+ const r = await this.client.get(`/groups/${login}/statistics/members`);
201
+ return r.data.data;
202
+ });
239
203
  }
204
+ /** Get book/repo statistics for a group. */
240
205
  async getGroupBookStats(login) {
241
- try {
242
- const response = await this.client.get(`/groups/${login}/statistics/books`);
243
- return response.data.data;
244
- }
245
- catch (error) {
246
- handleYuqueError(error);
247
- }
206
+ return withErrorHandling(async () => {
207
+ const r = await this.client.get(`/groups/${login}/statistics/books`);
208
+ return r.data.data;
209
+ });
248
210
  }
211
+ /** Get document statistics for a group. */
249
212
  async getGroupDocStats(login) {
250
- try {
251
- const response = await this.client.get(`/groups/${login}/statistics/docs`);
252
- return response.data.data;
253
- }
254
- catch (error) {
255
- handleYuqueError(error);
256
- }
213
+ return withErrorHandling(async () => {
214
+ const r = await this.client.get(`/groups/${login}/statistics/docs`);
215
+ return r.data.data;
216
+ });
257
217
  }
258
- // Hello API
218
+ // ── Hello API ──────────────────────────────────────────────
219
+ /** Test API connectivity. */
259
220
  async hello() {
260
- try {
261
- const response = await this.client.get('/hello');
262
- return response.data.data;
263
- }
264
- catch (error) {
265
- handleYuqueError(error);
266
- }
221
+ return withErrorHandling(async () => {
222
+ const r = await this.client.get('/hello');
223
+ return r.data.data;
224
+ });
267
225
  }
268
226
  }
269
227
  //# sourceMappingURL=yuque-client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"yuque-client.js","sourceRoot":"","sources":["../../src/services/yuque-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"yuque-client.js","sourceRoot":"","sources":["../../src/services/yuque-client.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/utils/error.ts"],"names":[],"mappings":"AAAA,qBAAa,UAAW,SAAQ,KAAK;IAG1B,UAAU,CAAC,EAAE,MAAM;IACnB,aAAa,CAAC,EAAE,OAAO;gBAF9B,OAAO,EAAE,MAAM,EACR,UAAU,CAAC,EAAE,MAAM,YAAA,EACnB,aAAa,CAAC,EAAE,OAAO,YAAA;CAKjC;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,CAoBtD"}
1
+ {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/utils/error.ts"],"names":[],"mappings":"AAAA,qBAAa,UAAW,SAAQ,KAAK;IAG1B,UAAU,CAAC,EAAE,MAAM;IACnB,aAAa,CAAC,EAAE,OAAO;gBAF9B,OAAO,EAAE,MAAM,EACR,UAAU,CAAC,EAAE,MAAM,YAAA,EACnB,aAAa,CAAC,EAAE,OAAO,YAAA;CAKjC;AAcD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,CAsBtD"}
@@ -8,6 +8,17 @@ export class YuqueError extends Error {
8
8
  this.name = 'YuqueError';
9
9
  }
10
10
  }
11
+ /** Map common HTTP status codes to human-readable hints for better AI diagnostics. */
12
+ function statusHint(status) {
13
+ switch (status) {
14
+ case 400: return 'Bad request — check the parameters';
15
+ case 401: return 'Unauthorized — the YUQUE_TOKEN may be invalid or expired';
16
+ case 403: return 'Forbidden — insufficient permissions for this resource';
17
+ case 404: return 'Not found — the resource does not exist or is not accessible';
18
+ case 429: return 'Rate limited — too many requests, try again later';
19
+ default: return status >= 500 ? 'Yuque server error — try again later' : '';
20
+ }
21
+ }
11
22
  export function handleYuqueError(error) {
12
23
  if (error instanceof YuqueError) {
13
24
  throw error;
@@ -16,7 +27,9 @@ export function handleYuqueError(error) {
16
27
  const err = error;
17
28
  if (err.response) {
18
29
  const status = err.response.status;
19
- const message = err.response.data?.message || err.message || 'Unknown Yuque API error';
30
+ const apiMessage = err.response.data?.message || err.message || 'Unknown Yuque API error';
31
+ const hint = status ? statusHint(status) : '';
32
+ const message = hint ? `${apiMessage} (${hint})` : apiMessage;
20
33
  throw new YuqueError(message, status, error);
21
34
  }
22
35
  if (err.message) {
@@ -1 +1 @@
1
- {"version":3,"file":"error.js","sourceRoot":"","sources":["../../src/utils/error.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,UAAW,SAAQ,KAAK;IAG1B;IACA;IAHT,YACE,OAAe,EACR,UAAmB,EACnB,aAAuB;QAE9B,KAAK,CAAC,OAAO,CAAC,CAAC;QAHR,eAAU,GAAV,UAAU,CAAS;QACnB,kBAAa,GAAb,aAAa,CAAU;QAG9B,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;IAC3B,CAAC;CACF;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAc;IAC7C,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;QAChC,MAAM,KAAK,CAAC;IACd,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,MAAM,GAAG,GAAG,KAA0F,CAAC;QAEvG,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;YACnC,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,IAAI,GAAG,CAAC,OAAO,IAAI,yBAAyB,CAAC;YACvF,MAAM,IAAI,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC;QAED,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YAChB,MAAM,IAAI,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,MAAM,IAAI,UAAU,CAAC,wBAAwB,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AACnE,CAAC"}
1
+ {"version":3,"file":"error.js","sourceRoot":"","sources":["../../src/utils/error.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,UAAW,SAAQ,KAAK;IAG1B;IACA;IAHT,YACE,OAAe,EACR,UAAmB,EACnB,aAAuB;QAE9B,KAAK,CAAC,OAAO,CAAC,CAAC;QAHR,eAAU,GAAV,UAAU,CAAS;QACnB,kBAAa,GAAb,aAAa,CAAU;QAG9B,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;IAC3B,CAAC;CACF;AAED,sFAAsF;AACtF,SAAS,UAAU,CAAC,MAAc;IAChC,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,GAAG,CAAC,CAAC,OAAO,oCAAoC,CAAC;QACtD,KAAK,GAAG,CAAC,CAAC,OAAO,0DAA0D,CAAC;QAC5E,KAAK,GAAG,CAAC,CAAC,OAAO,wDAAwD,CAAC;QAC1E,KAAK,GAAG,CAAC,CAAC,OAAO,8DAA8D,CAAC;QAChF,KAAK,GAAG,CAAC,CAAC,OAAO,mDAAmD,CAAC;QACrE,OAAO,CAAC,CAAE,OAAO,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,sCAAsC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/E,CAAC;AACH,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAc;IAC7C,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;QAChC,MAAM,KAAK,CAAC;IACd,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,MAAM,GAAG,GAAG,KAA0F,CAAC;QAEvG,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;YACnC,MAAM,UAAU,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,IAAI,GAAG,CAAC,OAAO,IAAI,yBAAyB,CAAC;YAC1F,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,UAAU,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC;YAC9D,MAAM,IAAI,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC;QAED,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YAChB,MAAM,IAAI,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,MAAM,IAAI,UAAU,CAAC,wBAAwB,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AACnE,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { YuqueUser, YuqueGroup, YuqueRepo, YuqueDoc, YuqueTocItem, YuqueDocVersion, YuqueGroupMember } from '../services/types.js';
2
+ /** Format user data — strips fields that are noisy for AI consumption. */
2
3
  export declare function formatUser(user: YuqueUser): {
3
4
  id: number;
4
5
  login: string;
@@ -8,6 +9,7 @@ export declare function formatUser(user: YuqueUser): {
8
9
  books_count: number;
9
10
  followers_count: number;
10
11
  };
12
+ /** Format group data for concise AI-friendly output. */
11
13
  export declare function formatGroup(group: YuqueGroup): {
12
14
  id: number;
13
15
  login: string;
@@ -16,6 +18,7 @@ export declare function formatGroup(group: YuqueGroup): {
16
18
  books_count: number;
17
19
  members_count: number;
18
20
  };
21
+ /** Format repo data — converts numeric `public` field to boolean. */
19
22
  export declare function formatRepo(repo: YuqueRepo): {
20
23
  id: number;
21
24
  slug: string;
@@ -26,6 +29,7 @@ export declare function formatRepo(repo: YuqueRepo): {
26
29
  items_count: number;
27
30
  updated_at: string;
28
31
  };
32
+ /** Format doc summary — excludes body to reduce token usage. */
29
33
  export declare function formatDocSummary(doc: YuqueDoc): {
30
34
  id: number;
31
35
  slug: string;
@@ -35,6 +39,7 @@ export declare function formatDocSummary(doc: YuqueDoc): {
35
39
  word_count: number;
36
40
  updated_at: string;
37
41
  };
42
+ /** Format full doc data including body content. */
38
43
  export declare function formatDoc(doc: YuqueDoc): {
39
44
  body: string;
40
45
  body_html: string;
@@ -47,6 +52,7 @@ export declare function formatDoc(doc: YuqueDoc): {
47
52
  word_count: number;
48
53
  updated_at: string;
49
54
  };
55
+ /** Format TOC items — flattens to essential navigation fields. */
50
56
  export declare function formatToc(items: YuqueTocItem[]): {
51
57
  title: string;
52
58
  uuid: string;
@@ -54,6 +60,7 @@ export declare function formatToc(items: YuqueTocItem[]): {
54
60
  level: number;
55
61
  visible: boolean;
56
62
  }[];
63
+ /** Format doc version — excludes body for list views. */
57
64
  export declare function formatDocVersion(version: YuqueDocVersion): {
58
65
  id: number;
59
66
  doc_id: number;
@@ -61,6 +68,7 @@ export declare function formatDocVersion(version: YuqueDocVersion): {
61
68
  format: string;
62
69
  created_at: string;
63
70
  };
71
+ /** Format group member with optional nested user info. */
64
72
  export declare function formatGroupMember(member: YuqueGroupMember): {
65
73
  id: number;
66
74
  user_id: number;
@@ -1 +1 @@
1
- {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/utils/format.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,UAAU,EACV,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,eAAe,EACf,gBAAgB,EACjB,MAAM,sBAAsB,CAAC;AAG9B,wBAAgB,UAAU,CAAC,IAAI,EAAE,SAAS;;;;;;;;EAUzC;AAGD,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU;;;;;;;EAS5C;AAGD,wBAAgB,UAAU,CAAC,IAAI,EAAE,SAAS;;;;;;;;;EAWzC;AAGD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,QAAQ;;;;;;;;EAU7C;AAGD,wBAAgB,SAAS,CAAC,GAAG,EAAE,QAAQ;;;;;;;;;;;EAOtC;AAGD,wBAAgB,SAAS,CAAC,KAAK,EAAE,YAAY,EAAE;;;;;;IAQ9C;AAGD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,eAAe;;;;;;EAQxD;AAGD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,gBAAgB;;;;;;;;;;;;;EAOzD"}
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/utils/format.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,UAAU,EACV,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,eAAe,EACf,gBAAgB,EACjB,MAAM,sBAAsB,CAAC;AAE9B,0EAA0E;AAC1E,wBAAgB,UAAU,CAAC,IAAI,EAAE,SAAS;;;;;;;;EAUzC;AAED,wDAAwD;AACxD,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU;;;;;;;EAS5C;AAED,qEAAqE;AACrE,wBAAgB,UAAU,CAAC,IAAI,EAAE,SAAS;;;;;;;;;EAWzC;AAED,gEAAgE;AAChE,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,QAAQ;;;;;;;;EAU7C;AAED,mDAAmD;AACnD,wBAAgB,SAAS,CAAC,GAAG,EAAE,QAAQ;;;;;;;;;;;EAOtC;AAED,kEAAkE;AAClE,wBAAgB,SAAS,CAAC,KAAK,EAAE,YAAY,EAAE;;;;;;IAQ9C;AAED,yDAAyD;AACzD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,eAAe;;;;;;EAQxD;AAED,0DAA0D;AAC1D,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,gBAAgB;;;;;;;;;;;;;EAOzD"}
@@ -1,4 +1,4 @@
1
- // Format user data for AI-friendly output
1
+ /** Format user data — strips fields that are noisy for AI consumption. */
2
2
  export function formatUser(user) {
3
3
  return {
4
4
  id: user.id,
@@ -10,7 +10,7 @@ export function formatUser(user) {
10
10
  followers_count: user.followers_count,
11
11
  };
12
12
  }
13
- // Format group data for AI-friendly output
13
+ /** Format group data for concise AI-friendly output. */
14
14
  export function formatGroup(group) {
15
15
  return {
16
16
  id: group.id,
@@ -21,7 +21,7 @@ export function formatGroup(group) {
21
21
  members_count: group.members_count,
22
22
  };
23
23
  }
24
- // Format repo data for AI-friendly output
24
+ /** Format repo data converts numeric `public` field to boolean. */
25
25
  export function formatRepo(repo) {
26
26
  return {
27
27
  id: repo.id,
@@ -34,7 +34,7 @@ export function formatRepo(repo) {
34
34
  updated_at: repo.updated_at,
35
35
  };
36
36
  }
37
- // Format doc data for AI-friendly output (without body to reduce tokens)
37
+ /** Format doc summary excludes body to reduce token usage. */
38
38
  export function formatDocSummary(doc) {
39
39
  return {
40
40
  id: doc.id,
@@ -46,7 +46,7 @@ export function formatDocSummary(doc) {
46
46
  updated_at: doc.updated_at,
47
47
  };
48
48
  }
49
- // Format full doc data including body
49
+ /** Format full doc data including body content. */
50
50
  export function formatDoc(doc) {
51
51
  return {
52
52
  ...formatDocSummary(doc),
@@ -55,7 +55,7 @@ export function formatDoc(doc) {
55
55
  description: doc.description,
56
56
  };
57
57
  }
58
- // Format TOC data
58
+ /** Format TOC items — flattens to essential navigation fields. */
59
59
  export function formatToc(items) {
60
60
  return items.map((item) => ({
61
61
  title: item.title,
@@ -65,7 +65,7 @@ export function formatToc(items) {
65
65
  visible: item.visible === 1,
66
66
  }));
67
67
  }
68
- // Format doc version
68
+ /** Format doc version — excludes body for list views. */
69
69
  export function formatDocVersion(version) {
70
70
  return {
71
71
  id: version.id,
@@ -75,7 +75,7 @@ export function formatDocVersion(version) {
75
75
  created_at: version.created_at,
76
76
  };
77
77
  }
78
- // Format group member
78
+ /** Format group member with optional nested user info. */
79
79
  export function formatGroupMember(member) {
80
80
  return {
81
81
  id: member.id,
@@ -1 +1 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/utils/format.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/utils/format.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "yuque-mcp",
3
- "version": "0.1.2",
3
+ "version": "0.1.3",
4
4
  "description": "MCP server for Yuque (语雀) — expose Yuque knowledge base to AI assistants via Model Context Protocol",
5
5
  "type": "module",
6
6
  "main": "dist/cli.js",