yuque-mcp 0.1.8 → 0.1.10

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/CHANGELOG.md CHANGED
@@ -7,13 +7,117 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
- ### Changed
11
- - Support `YUQUE_PERSONAL_TOKEN` and `YUQUE_GROUP_TOKEN` as primary environment variables (with `YUQUE_TOKEN` as fallback for backward compatibility)
12
- - Update error messages to reflect new environment variable naming
10
+ ## [0.1.10] - 2026-03-30
13
11
 
14
- ## [0.1.0] - 2025-02-15
12
+ ### Features
13
+
14
+ - Add `include_lake` option to `yuque_get_doc` for Mermaid source code preservation (#45)
15
+
16
+ ## [0.1.9] - 2026-03-18
17
+
18
+ ### 🐞 Bug Fixes
19
+
20
+ - Make search type parameter required with enum validation (#43)
21
+
22
+ ## [0.1.8] - 2026-03-18
23
+
24
+ ### ✨ Features
25
+
26
+ - Add yuque notes (小记) support (#22)
27
+
28
+ ### 🐞 Bug Fixes
29
+
30
+ - Restore auto-append to TOC with graceful error handling (#31)
31
+ - Improve TOC error message to suggest manual web UI operation (#33)
32
+ - Add 30s request timeout to prevent hanging on slow API responses (#35)
33
+ - Add null safety to search results and improve error handling (#36)
34
+
35
+ ### 🔨 Refactors
36
+
37
+ - Remove dangerous delete operations and improve notes support (#34)
38
+ - Slim to 16 personal-only tools and rename repo to book (#41)
39
+
40
+ ### 📝 Documentation
41
+
42
+ - Update README with latest tools, remove legacy token, add 410 error (#37)
43
+ - Sync Chinese README and remove yuque_restore_note tool (#38)
44
+
45
+ ### 🏡 Chore
46
+
47
+ - Add issue/PR templates and changelog setup (#42)
48
+
49
+ ## [0.1.7] - 2026-03-04
50
+
51
+ ### ✨ Features
52
+
53
+ - Add qoder and opencode client support for install command (#24)
54
+
55
+ ## [0.1.6] - 2026-03-03
56
+
57
+ ### ✨ Features
58
+
59
+ - Auto-append doc to TOC on create and improve TOC tool descriptions (#23)
60
+
61
+ ## [0.1.5] - 2026-02-27
62
+
63
+ ### ✨ Features
64
+
65
+ - Add install and setup CLI commands for quick MCP client configuration (#16)
66
+
67
+ ### 🐞 Bug Fixes
68
+
69
+ - Show helpful guide when run directly in terminal (#17)
70
+
71
+ ### 📝 Documentation
72
+
73
+ - Rewrite README with multi-client installation guides (#15)
74
+
75
+ ## [0.1.4] - 2026-02-27
76
+
77
+ ### ✨ Features
78
+
79
+ - Support YUQUE_PERSONAL_TOKEN as primary env var (#13)
80
+ - Add server.json and mcpName for MCP Registry (#14)
81
+
82
+ ### 🐞 Bug Fixes
83
+
84
+ - Shorten server.json description to fit 100-char limit
85
+
86
+ ### 🏡 Chore
87
+
88
+ - Update org links from chen201724 to yuque (#10)
89
+
90
+ ## [0.1.3] - 2026-02-25
91
+
92
+ ### 🐞 Bug Fixes
93
+
94
+ - Remove unused variable in repo test (#9)
95
+
96
+ ### 🔨 Refactors
97
+
98
+ - Code polish and quality improvements (#8)
99
+
100
+ ## [0.1.2] - 2026-02-17
101
+
102
+ ### 📝 Documentation
103
+
104
+ - Simplify MCP setup by keeping Claude Code example only
105
+ - Add ecosystem website link to README
106
+
107
+ ## [0.1.1] - 2026-02-15
108
+
109
+ ### 🐞 Bug Fixes
110
+
111
+ - Convert Zod schemas to JSON Schema for MCP compatibility (#5)
112
+
113
+ ### 📝 Documentation
114
+
115
+ - Streamline README with verified-only setup paths (#6)
116
+
117
+ ## [0.1.0] - 2026-02-15
118
+
119
+ ### ✨ Features
15
120
 
16
- ### Added
17
121
  - Initial release of Yuque MCP Server
18
122
  - 25 tools covering Yuque API (user, repo, doc, toc, search, group, stats, version)
19
123
  - Stdio transport for local MCP clients (Claude Desktop, Cursor, Claude Code)
@@ -25,7 +129,24 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
25
129
  - ESLint + Prettier code quality tooling
26
130
  - CI pipeline (Node 18/20/22)
27
131
  - Docker support
28
- - Documentation in English and Chinese
29
132
 
30
- [Unreleased]: https://github.com/yuque/yuque-mcp-server/compare/v0.1.0...HEAD
133
+ ### 🐞 Bug Fixes
134
+
135
+ - Pre-release polish — fix placeholders, entry point, README (#2)
136
+ - Test config and CI pipeline fixes (#1)
137
+
138
+ ### 📝 Documentation
139
+
140
+ - Add Docker support and improve CONTRIBUTING guide
141
+
142
+ [0.1.10]: https://github.com/yuque/yuque-mcp-server/compare/v0.1.9...v0.1.10
143
+ [0.1.9]: https://github.com/yuque/yuque-mcp-server/compare/v0.1.8...v0.1.9
144
+ [0.1.8]: https://github.com/yuque/yuque-mcp-server/compare/v0.1.7...v0.1.8
145
+ [0.1.7]: https://github.com/yuque/yuque-mcp-server/compare/v0.1.6...v0.1.7
146
+ [0.1.6]: https://github.com/yuque/yuque-mcp-server/compare/v0.1.5...v0.1.6
147
+ [0.1.5]: https://github.com/yuque/yuque-mcp-server/compare/v0.1.4...v0.1.5
148
+ [0.1.4]: https://github.com/yuque/yuque-mcp-server/compare/v0.1.3...v0.1.4
149
+ [0.1.3]: https://github.com/yuque/yuque-mcp-server/compare/v0.1.2...v0.1.3
150
+ [0.1.2]: https://github.com/yuque/yuque-mcp-server/compare/v0.1.1...v0.1.2
151
+ [0.1.1]: https://github.com/yuque/yuque-mcp-server/compare/v0.1.0...v0.1.1
31
152
  [0.1.0]: https://github.com/yuque/yuque-mcp-server/releases/tag/v0.1.0
@@ -24,16 +24,20 @@ export declare const docTools: {
24
24
  inputSchema: z.ZodObject<{
25
25
  repo_id: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
26
26
  doc_id: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
27
+ include_lake: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
27
28
  }, "strip", z.ZodTypeAny, {
28
29
  repo_id: string | number;
29
30
  doc_id: string | number;
31
+ include_lake: boolean;
30
32
  }, {
31
33
  repo_id: string | number;
32
34
  doc_id: string | number;
35
+ include_lake?: boolean | undefined;
33
36
  }>;
34
37
  handler: (client: YuqueClient, args: {
35
38
  repo_id: string | number;
36
39
  doc_id: string | number;
40
+ include_lake: boolean;
37
41
  }) => Promise<{
38
42
  content: {
39
43
  type: "text";
@@ -1 +1 @@
1
- {"version":3,"file":"doc.d.ts","sourceRoot":"","sources":["../../src/tools/doc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAuB/D,eAAO,MAAM,QAAQ;;;;;;;;;;0BAQO,WAAW,QAAQ;YAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE;;;;;;;;;;;;;;;;;;;0BAwB7D,WAAW,QACb;YAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BA2BnD,WAAW,QACb;YACJ,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;YACzB,KAAK,EAAE,MAAM,CAAC;YACd,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,MAAM,CAAC,EAAE,MAAM,CAAC;YAChB,MAAM,CAAC,EAAE,MAAM,CAAC;SACjB;;sBAcqB,MAAM;sBAAQ,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAyBlC,WAAW,QACb;YACJ,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;YACzB,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;YACxB,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,MAAM,CAAC,EAAE,MAAM,CAAC;SACjB;;;;;;;CAoBN,CAAC"}
1
+ {"version":3,"file":"doc.d.ts","sourceRoot":"","sources":["../../src/tools/doc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAuB/D,eAAO,MAAM,QAAQ;;;;;;;;;;0BAQO,WAAW,QAAQ;YAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE;;;;;;;;;;;;;;;;;;;;;;0BA+B7D,WAAW,QACb;YACJ,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;YACzB,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;YACxB,YAAY,EAAE,OAAO,CAAC;SACvB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BA+BO,WAAW,QACb;YACJ,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;YACzB,KAAK,EAAE,MAAM,CAAC;YACd,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,MAAM,CAAC,EAAE,MAAM,CAAC;YAChB,MAAM,CAAC,EAAE,MAAM,CAAC;SACjB;;sBAcqB,MAAM;sBAAQ,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAyBlC,WAAW,QACb;YACJ,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;YACzB,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;YACxB,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,MAAM,CAAC,EAAE,MAAM,CAAC;SACjB;;;;;;;CAoBN,CAAC"}
package/dist/tools/doc.js CHANGED
@@ -45,6 +45,11 @@ export const docTools = {
45
45
  doc_id: z
46
46
  .union([z.string(), z.number()])
47
47
  .describe('Document ID or slug'),
48
+ include_lake: z
49
+ .boolean()
50
+ .optional()
51
+ .default(false)
52
+ .describe('Include raw Lake format body (preserves Mermaid source code, diagrams, etc.)'),
48
53
  }),
49
54
  handler: async (client, args) => {
50
55
  const doc = await client.getDoc(args.repo_id, args.doc_id);
@@ -52,7 +57,7 @@ export const docTools = {
52
57
  content: [
53
58
  {
54
59
  type: 'text',
55
- text: JSON.stringify(formatDoc(doc), null, 2),
60
+ text: JSON.stringify(formatDoc(doc, { includeLake: args.include_lake }), null, 2),
56
61
  },
57
62
  ],
58
63
  };
@@ -1 +1 @@
1
- {"version":3,"file":"doc.js","sourceRoot":"","sources":["../../src/tools/doc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doc.js","sourceRoot":"","sources":["../../src/tools/doc.ts"],"names":[],"mappings":"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"}
@@ -5,17 +5,17 @@ export declare const searchTools: {
5
5
  description: string;
6
6
  inputSchema: z.ZodObject<{
7
7
  query: z.ZodString;
8
- type: z.ZodOptional<z.ZodString>;
8
+ type: z.ZodEnum<["doc", "repo"]>;
9
9
  }, "strip", z.ZodTypeAny, {
10
+ type: "doc" | "repo";
10
11
  query: string;
11
- type?: string | undefined;
12
12
  }, {
13
+ type: "doc" | "repo";
13
14
  query: string;
14
- type?: string | undefined;
15
15
  }>;
16
16
  handler: (client: YuqueClient, args: {
17
17
  query: string;
18
- type?: string;
18
+ type: "doc" | "repo";
19
19
  }) => Promise<{
20
20
  content: {
21
21
  type: "text";
@@ -1 +1 @@
1
- {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE/D,eAAO,MAAM,WAAW;;;;;;;;;;;;;0BAOI,WAAW,QAAQ;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAA;SAAE;;;;;;;CAY9E,CAAC"}
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE/D,eAAO,MAAM,WAAW;;;;;;;;;;;;;0BAOI,WAAW,QAAQ;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,KAAK,GAAG,MAAM,CAAA;SAAE;;;;;;;CAYrF,CAAC"}
@@ -1,10 +1,10 @@
1
1
  import { z } from 'zod';
2
2
  export const searchTools = {
3
3
  yuque_search: {
4
- description: 'Search for documents, repos, or users in Yuque',
4
+ description: 'Search for documents or repos in Yuque',
5
5
  inputSchema: z.object({
6
6
  query: z.string().describe('Search query string'),
7
- type: z.string().optional().describe('Search type: doc, repo, user (optional)'),
7
+ type: z.enum(['doc', 'repo']).describe('Search type: doc (documents), repo (knowledge bases)'),
8
8
  }),
9
9
  handler: async (client, args) => {
10
10
  const result = await client.search(args.query, args.type);
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,YAAY,EAAE;QACZ,WAAW,EAAE,gDAAgD;QAC7D,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;YACjD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;SAChF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,MAAmB,EAAE,IAAsC,EAAE,EAAE;YAC7E,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAC1D,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;qBAC5C;iBACF;aACF,CAAC;QACJ,CAAC;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,YAAY,EAAE;QACZ,WAAW,EAAE,wCAAwC;QACrD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;YACjD,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,sDAAsD,CAAC;SAC/F,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,MAAmB,EAAE,IAA6C,EAAE,EAAE;YACpF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAC1D,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;qBAC5C;iBACF;aACF,CAAC;QACJ,CAAC;KACF;CACF,CAAC"}
@@ -31,7 +31,10 @@ export declare function formatDocSummary(doc: YuqueDoc): {
31
31
  updated_at: string;
32
32
  };
33
33
  /** Format full doc data including body content. */
34
- export declare function formatDoc(doc: YuqueDoc): {
34
+ export declare function formatDoc(doc: YuqueDoc, options?: {
35
+ includeLake?: boolean;
36
+ }): {
37
+ body_lake?: string | undefined;
35
38
  body: string;
36
39
  body_html: string;
37
40
  description: string;
@@ -1 +1 @@
1
- {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/utils/format.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,SAAS,EACT,QAAQ,EACR,YAAY,EACb,MAAM,sBAAsB,CAAC;AAE9B,0EAA0E;AAC1E,wBAAgB,UAAU,CAAC,IAAI,EAAE,SAAS;;;;;;;;EAUzC;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"}
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/utils/format.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,SAAS,EACT,QAAQ,EACR,YAAY,EACb,MAAM,sBAAsB,CAAC;AAE9B,0EAA0E;AAC1E,wBAAgB,UAAU,CAAC,IAAI,EAAE,SAAS;;;;;;;;EAUzC;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,EAAE,OAAO,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAA;CAAE;;;;;;;;;;;;EAQ3E;AAED,kEAAkE;AAClE,wBAAgB,SAAS,CAAC,KAAK,EAAE,YAAY,EAAE;;;;;;IAQ9C"}
@@ -36,12 +36,13 @@ export function formatDocSummary(doc) {
36
36
  };
37
37
  }
38
38
  /** Format full doc data including body content. */
39
- export function formatDoc(doc) {
39
+ export function formatDoc(doc, options) {
40
40
  return {
41
41
  ...formatDocSummary(doc),
42
42
  body: doc.body,
43
43
  body_html: doc.body_html,
44
44
  description: doc.description,
45
+ ...(options?.includeLake && { body_lake: doc.body_lake }),
45
46
  };
46
47
  }
47
48
  /** Format TOC items — flattens to essential navigation fields. */
@@ -1 +1 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/utils/format.ts"],"names":[],"mappings":"AAOA,0EAA0E;AAC1E,MAAM,UAAU,UAAU,CAAC,IAAe;IACxC,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,eAAe,EAAE,IAAI,CAAC,eAAe;KACtC,CAAC;AACJ,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,UAAU,CAAC,IAAe;IACxC,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,CAAC;QACzB,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,UAAU,EAAE,IAAI,CAAC,UAAU;KAC5B,CAAC;AACJ,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,gBAAgB,CAAC,GAAa;IAC5C,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,MAAM,EAAE,GAAG,CAAC,MAAM,KAAK,CAAC;QACxB,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,UAAU,EAAE,GAAG,CAAC,UAAU;KAC3B,CAAC;AACJ,CAAC;AAED,mDAAmD;AACnD,MAAM,UAAU,SAAS,CAAC,GAAa;IACrC,OAAO;QACL,GAAG,gBAAgB,CAAC,GAAG,CAAC;QACxB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,WAAW,EAAE,GAAG,CAAC,WAAW;KAC7B,CAAC;AACJ,CAAC;AAED,kEAAkE;AAClE,MAAM,UAAU,SAAS,CAAC,KAAqB;IAC7C,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC1B,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,CAAC;KAC5B,CAAC,CAAC,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/utils/format.ts"],"names":[],"mappings":"AAOA,0EAA0E;AAC1E,MAAM,UAAU,UAAU,CAAC,IAAe;IACxC,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,eAAe,EAAE,IAAI,CAAC,eAAe;KACtC,CAAC;AACJ,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,UAAU,CAAC,IAAe;IACxC,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,CAAC;QACzB,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,UAAU,EAAE,IAAI,CAAC,UAAU;KAC5B,CAAC;AACJ,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,gBAAgB,CAAC,GAAa;IAC5C,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,MAAM,EAAE,GAAG,CAAC,MAAM,KAAK,CAAC;QACxB,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,UAAU,EAAE,GAAG,CAAC,UAAU;KAC3B,CAAC;AACJ,CAAC;AAED,mDAAmD;AACnD,MAAM,UAAU,SAAS,CAAC,GAAa,EAAE,OAAmC;IAC1E,OAAO;QACL,GAAG,gBAAgB,CAAC,GAAG,CAAC;QACxB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,GAAG,CAAC,OAAO,EAAE,WAAW,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC;KAC1D,CAAC;AACJ,CAAC;AAED,kEAAkE;AAClE,MAAM,UAAU,SAAS,CAAC,KAAqB;IAC7C,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC1B,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,CAAC;KAC5B,CAAC,CAAC,CAAC;AACN,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "yuque-mcp",
3
- "version": "0.1.8",
3
+ "version": "0.1.10",
4
4
  "description": "MCP server for Yuque (语雀) — expose Yuque knowledge base to AI assistants via Model Context Protocol",
5
5
  "mcpName": "io.github.yuque/yuque-mcp",
6
6
  "type": "module",
@@ -26,6 +26,8 @@
26
26
  "format:check": "prettier --check \"src/**/*.ts\" \"tests/**/*.ts\"",
27
27
  "typecheck": "tsc --noEmit",
28
28
  "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s",
29
+ "version": "npm run changelog && git add CHANGELOG.md",
30
+ "release:publish": "git push && git push --tags && npm publish",
29
31
  "prepublishOnly": "npm run build"
30
32
  },
31
33
  "keywords": [
@@ -1,71 +0,0 @@
1
- import { z } from 'zod';
2
- import type { YuqueClient } from '../services/yuque-client.js';
3
- export declare const groupTools: {
4
- yuque_list_group_members: {
5
- description: string;
6
- inputSchema: z.ZodObject<{
7
- login: z.ZodString;
8
- }, "strip", z.ZodTypeAny, {
9
- login: string;
10
- }, {
11
- login: string;
12
- }>;
13
- handler: (client: YuqueClient, args: {
14
- login: string;
15
- }) => Promise<{
16
- content: {
17
- type: "text";
18
- text: string;
19
- }[];
20
- }>;
21
- };
22
- yuque_update_group_member: {
23
- description: string;
24
- inputSchema: z.ZodObject<{
25
- login: z.ZodString;
26
- user_id: z.ZodNumber;
27
- role: z.ZodNumber;
28
- }, "strip", z.ZodTypeAny, {
29
- user_id: number;
30
- login: string;
31
- role: number;
32
- }, {
33
- user_id: number;
34
- login: string;
35
- role: number;
36
- }>;
37
- handler: (client: YuqueClient, args: {
38
- login: string;
39
- user_id: number;
40
- role: number;
41
- }) => Promise<{
42
- content: {
43
- type: "text";
44
- text: string;
45
- }[];
46
- }>;
47
- };
48
- yuque_remove_group_member: {
49
- description: string;
50
- inputSchema: z.ZodObject<{
51
- login: z.ZodString;
52
- user_id: z.ZodNumber;
53
- }, "strip", z.ZodTypeAny, {
54
- user_id: number;
55
- login: string;
56
- }, {
57
- user_id: number;
58
- login: string;
59
- }>;
60
- handler: (client: YuqueClient, args: {
61
- login: string;
62
- user_id: number;
63
- }) => Promise<{
64
- content: {
65
- type: "text";
66
- text: string;
67
- }[];
68
- }>;
69
- };
70
- };
71
- //# sourceMappingURL=group.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../src/tools/group.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAG/D,eAAO,MAAM,UAAU;;;;;;;;;;0BAMK,WAAW,QAAQ;YAAE,KAAK,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;;;;;;;;;;;;0BAqBlD,WAAW,QACb;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;;;;;;;;;0BAoBhC,WAAW,QAAQ;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE;;;;;;;CAYhF,CAAC"}
@@ -1,59 +0,0 @@
1
- import { z } from 'zod';
2
- import { formatGroupMember } from '../utils/format.js';
3
- export const groupTools = {
4
- yuque_list_group_members: {
5
- description: 'List all members of a group/team',
6
- inputSchema: z.object({
7
- login: z.string().describe('Group login name'),
8
- }),
9
- handler: async (client, args) => {
10
- const members = await client.listGroupMembers(args.login);
11
- return {
12
- content: [
13
- {
14
- type: 'text',
15
- text: JSON.stringify(members.map(formatGroupMember), null, 2),
16
- },
17
- ],
18
- };
19
- },
20
- },
21
- yuque_update_group_member: {
22
- description: 'Update a group member role',
23
- inputSchema: z.object({
24
- login: z.string().describe('Group login name'),
25
- user_id: z.number().describe('User ID to update'),
26
- role: z.number().describe('Role: 0 (member), 1 (admin), 2 (owner)'),
27
- }),
28
- handler: async (client, args) => {
29
- const member = await client.updateGroupMember(args.login, args.user_id, { role: args.role });
30
- return {
31
- content: [
32
- {
33
- type: 'text',
34
- text: JSON.stringify(formatGroupMember(member), null, 2),
35
- },
36
- ],
37
- };
38
- },
39
- },
40
- yuque_remove_group_member: {
41
- description: 'Remove a member from a group/team',
42
- inputSchema: z.object({
43
- login: z.string().describe('Group login name'),
44
- user_id: z.number().describe('User ID to remove'),
45
- }),
46
- handler: async (client, args) => {
47
- await client.removeGroupMember(args.login, args.user_id);
48
- return {
49
- content: [
50
- {
51
- type: 'text',
52
- text: 'Group member removed successfully',
53
- },
54
- ],
55
- };
56
- },
57
- },
58
- };
59
- //# sourceMappingURL=group.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"group.js","sourceRoot":"","sources":["../../src/tools/group.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,wBAAwB,EAAE;QACxB,WAAW,EAAE,kCAAkC;QAC/C,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;SAC/C,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,MAAmB,EAAE,IAAuB,EAAE,EAAE;YAC9D,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1D,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;qBAC9D;iBACF;aACF,CAAC;QACJ,CAAC;KACF;IAED,yBAAyB,EAAE;QACzB,WAAW,EAAE,4BAA4B;QACzC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;YAC9C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;YACjD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;SACpE,CAAC;QACF,OAAO,EAAE,KAAK,EACZ,MAAmB,EACnB,IAAsD,EACtD,EAAE;YACF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YAC7F,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;qBACzD;iBACF;aACF,CAAC;QACJ,CAAC;KACF;IAED,yBAAyB,EAAE;QACzB,WAAW,EAAE,mCAAmC;QAChD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;YAC9C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;SAClD,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,MAAmB,EAAE,IAAwC,EAAE,EAAE;YAC/E,MAAM,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACzD,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,mCAAmC;qBAC1C;iBACF;aACF,CAAC;QACJ,CAAC;KACF;CACF,CAAC"}
@@ -1,139 +0,0 @@
1
- import { z } from 'zod';
2
- import type { YuqueClient } from '../services/yuque-client.js';
3
- export declare const repoTools: {
4
- yuque_list_repos: {
5
- description: string;
6
- inputSchema: z.ZodObject<{
7
- login: z.ZodString;
8
- type: z.ZodEnum<["user", "group"]>;
9
- }, "strip", z.ZodTypeAny, {
10
- type: "user" | "group";
11
- login: string;
12
- }, {
13
- type: "user" | "group";
14
- login: string;
15
- }>;
16
- handler: (client: YuqueClient, args: {
17
- login: string;
18
- type: "user" | "group";
19
- }) => Promise<{
20
- content: {
21
- type: "text";
22
- text: string;
23
- }[];
24
- }>;
25
- };
26
- yuque_get_repo: {
27
- description: string;
28
- inputSchema: z.ZodObject<{
29
- id_or_namespace: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
30
- }, "strip", z.ZodTypeAny, {
31
- id_or_namespace: string | number;
32
- }, {
33
- id_or_namespace: string | number;
34
- }>;
35
- handler: (client: YuqueClient, args: {
36
- id_or_namespace: string | number;
37
- }) => Promise<{
38
- content: {
39
- type: "text";
40
- text: string;
41
- }[];
42
- }>;
43
- };
44
- yuque_create_repo: {
45
- description: string;
46
- inputSchema: z.ZodObject<{
47
- login: z.ZodString;
48
- type: z.ZodEnum<["user", "group"]>;
49
- name: z.ZodString;
50
- slug: z.ZodString;
51
- description: z.ZodOptional<z.ZodString>;
52
- public: z.ZodOptional<z.ZodNumber>;
53
- repo_type: z.ZodOptional<z.ZodString>;
54
- }, "strip", z.ZodTypeAny, {
55
- type: "user" | "group";
56
- login: string;
57
- name: string;
58
- slug: string;
59
- description?: string | undefined;
60
- public?: number | undefined;
61
- repo_type?: string | undefined;
62
- }, {
63
- type: "user" | "group";
64
- login: string;
65
- name: string;
66
- slug: string;
67
- description?: string | undefined;
68
- public?: number | undefined;
69
- repo_type?: string | undefined;
70
- }>;
71
- handler: (client: YuqueClient, args: {
72
- login: string;
73
- type: "user" | "group";
74
- name: string;
75
- slug: string;
76
- description?: string;
77
- public?: number;
78
- repo_type?: string;
79
- }) => Promise<{
80
- content: {
81
- type: "text";
82
- text: string;
83
- }[];
84
- }>;
85
- };
86
- yuque_update_repo: {
87
- description: string;
88
- inputSchema: z.ZodObject<{
89
- id_or_namespace: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
90
- name: z.ZodOptional<z.ZodString>;
91
- slug: z.ZodOptional<z.ZodString>;
92
- description: z.ZodOptional<z.ZodString>;
93
- public: z.ZodOptional<z.ZodNumber>;
94
- }, "strip", z.ZodTypeAny, {
95
- id_or_namespace: string | number;
96
- name?: string | undefined;
97
- slug?: string | undefined;
98
- description?: string | undefined;
99
- public?: number | undefined;
100
- }, {
101
- id_or_namespace: string | number;
102
- name?: string | undefined;
103
- slug?: string | undefined;
104
- description?: string | undefined;
105
- public?: number | undefined;
106
- }>;
107
- handler: (client: YuqueClient, args: {
108
- id_or_namespace: string | number;
109
- name?: string;
110
- slug?: string;
111
- description?: string;
112
- public?: number;
113
- }) => Promise<{
114
- content: {
115
- type: "text";
116
- text: string;
117
- }[];
118
- }>;
119
- };
120
- yuque_delete_repo: {
121
- description: string;
122
- inputSchema: z.ZodObject<{
123
- id_or_namespace: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
124
- }, "strip", z.ZodTypeAny, {
125
- id_or_namespace: string | number;
126
- }, {
127
- id_or_namespace: string | number;
128
- }>;
129
- handler: (client: YuqueClient, args: {
130
- id_or_namespace: string | number;
131
- }) => Promise<{
132
- content: {
133
- type: "text";
134
- text: string;
135
- }[];
136
- }>;
137
- };
138
- };
139
- //# sourceMappingURL=repo.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"repo.d.ts","sourceRoot":"","sources":["../../src/tools/repo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAG/D,eAAO,MAAM,SAAS;;;;;;;;;;;;;0BAOM,WAAW,QAAQ;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAA;SAAE;;;;;;;;;;;;;;;;0BAuB5D,WAAW,QAAQ;YAAE,eAAe,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAyBrE,WAAW,QACb;YACJ,KAAK,EAAE,MAAM,CAAC;YACd,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;YACvB,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,MAAM,CAAC,EAAE,MAAM,CAAC;YAChB,SAAS,CAAC,EAAE,MAAM,CAAC;SACpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAoCO,WAAW,QACb;YACJ,eAAe,EAAE,MAAM,GAAG,MAAM,CAAC;YACjC,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,MAAM,CAAC,EAAE,MAAM,CAAC;SACjB;;;;;;;;;;;;;;;;0BA2BqB,WAAW,QAAQ;YAAE,eAAe,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE;;;;;;;CAYlF,CAAC"}
@@ -1,124 +0,0 @@
1
- import { z } from 'zod';
2
- import { formatRepo } from '../utils/format.js';
3
- export const repoTools = {
4
- yuque_list_repos: {
5
- description: 'List all repos/books for a user or group',
6
- inputSchema: z.object({
7
- login: z.string().describe('User or group login name'),
8
- type: z.enum(['user', 'group']).describe('Type: user or group'),
9
- }),
10
- handler: async (client, args) => {
11
- const repos = args.type === 'user'
12
- ? await client.listUserRepos(args.login)
13
- : await client.listGroupRepos(args.login);
14
- return {
15
- content: [
16
- {
17
- type: 'text',
18
- text: JSON.stringify(repos.map(formatRepo), null, 2),
19
- },
20
- ],
21
- };
22
- },
23
- },
24
- yuque_get_repo: {
25
- description: 'Get a specific repo/book by ID or namespace (group_login/book_slug)',
26
- inputSchema: z.object({
27
- id_or_namespace: z
28
- .union([z.string(), z.number()])
29
- .describe('Repo ID or namespace (e.g., "mygroup/mybook")'),
30
- }),
31
- handler: async (client, args) => {
32
- const repo = await client.getRepo(args.id_or_namespace);
33
- return {
34
- content: [
35
- {
36
- type: 'text',
37
- text: JSON.stringify(formatRepo(repo), null, 2),
38
- },
39
- ],
40
- };
41
- },
42
- },
43
- yuque_create_repo: {
44
- description: 'Create a new repo/book for a user or group',
45
- inputSchema: z.object({
46
- login: z.string().describe('User or group login name'),
47
- type: z.enum(['user', 'group']).describe('Type: user or group'),
48
- name: z.string().describe('Repo name'),
49
- slug: z.string().describe('Repo slug (URL-friendly identifier)'),
50
- description: z.string().optional().describe('Repo description'),
51
- public: z.number().optional().describe('Public visibility: 0 (private) or 1 (public)'),
52
- repo_type: z.string().optional().describe('Repo type: Book, Design, etc.'),
53
- }),
54
- handler: async (client, args) => {
55
- const data = {
56
- name: args.name,
57
- slug: args.slug,
58
- description: args.description,
59
- public: args.public,
60
- type: args.repo_type,
61
- };
62
- const repo = args.type === 'user'
63
- ? await client.createUserRepo(args.login, data)
64
- : await client.createGroupRepo(args.login, data);
65
- return {
66
- content: [
67
- {
68
- type: 'text',
69
- text: JSON.stringify(formatRepo(repo), null, 2),
70
- },
71
- ],
72
- };
73
- },
74
- },
75
- yuque_update_repo: {
76
- description: 'Update a repo/book',
77
- inputSchema: z.object({
78
- id_or_namespace: z
79
- .union([z.string(), z.number()])
80
- .describe('Repo ID or namespace (e.g., "mygroup/mybook")'),
81
- name: z.string().optional().describe('New repo name'),
82
- slug: z.string().optional().describe('New repo slug'),
83
- description: z.string().optional().describe('New repo description'),
84
- public: z.number().optional().describe('Public visibility: 0 (private) or 1 (public)'),
85
- }),
86
- handler: async (client, args) => {
87
- const data = {
88
- name: args.name,
89
- slug: args.slug,
90
- description: args.description,
91
- public: args.public,
92
- };
93
- const repo = await client.updateRepo(args.id_or_namespace, data);
94
- return {
95
- content: [
96
- {
97
- type: 'text',
98
- text: JSON.stringify(formatRepo(repo), null, 2),
99
- },
100
- ],
101
- };
102
- },
103
- },
104
- yuque_delete_repo: {
105
- description: 'Delete a repo/book',
106
- inputSchema: z.object({
107
- id_or_namespace: z
108
- .union([z.string(), z.number()])
109
- .describe('Repo ID or namespace (e.g., "mygroup/mybook")'),
110
- }),
111
- handler: async (client, args) => {
112
- await client.deleteRepo(args.id_or_namespace);
113
- return {
114
- content: [
115
- {
116
- type: 'text',
117
- text: 'Repo deleted successfully',
118
- },
119
- ],
120
- };
121
- },
122
- },
123
- };
124
- //# sourceMappingURL=repo.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"repo.js","sourceRoot":"","sources":["../../src/tools/repo.ts"],"names":[],"mappings":"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"}
@@ -1,77 +0,0 @@
1
- import { z } from 'zod';
2
- import type { YuqueClient } from '../services/yuque-client.js';
3
- export declare const statsTools: {
4
- yuque_group_stats: {
5
- description: string;
6
- inputSchema: z.ZodObject<{
7
- login: z.ZodString;
8
- }, "strip", z.ZodTypeAny, {
9
- login: string;
10
- }, {
11
- login: string;
12
- }>;
13
- handler: (client: YuqueClient, args: {
14
- login: string;
15
- }) => Promise<{
16
- content: {
17
- type: "text";
18
- text: string;
19
- }[];
20
- }>;
21
- };
22
- yuque_group_member_stats: {
23
- description: string;
24
- inputSchema: z.ZodObject<{
25
- login: z.ZodString;
26
- }, "strip", z.ZodTypeAny, {
27
- login: string;
28
- }, {
29
- login: string;
30
- }>;
31
- handler: (client: YuqueClient, args: {
32
- login: string;
33
- }) => Promise<{
34
- content: {
35
- type: "text";
36
- text: string;
37
- }[];
38
- }>;
39
- };
40
- yuque_group_book_stats: {
41
- description: string;
42
- inputSchema: z.ZodObject<{
43
- login: z.ZodString;
44
- }, "strip", z.ZodTypeAny, {
45
- login: string;
46
- }, {
47
- login: string;
48
- }>;
49
- handler: (client: YuqueClient, args: {
50
- login: string;
51
- }) => Promise<{
52
- content: {
53
- type: "text";
54
- text: string;
55
- }[];
56
- }>;
57
- };
58
- yuque_group_doc_stats: {
59
- description: string;
60
- inputSchema: z.ZodObject<{
61
- login: z.ZodString;
62
- }, "strip", z.ZodTypeAny, {
63
- login: string;
64
- }, {
65
- login: string;
66
- }>;
67
- handler: (client: YuqueClient, args: {
68
- login: string;
69
- }) => Promise<{
70
- content: {
71
- type: "text";
72
- text: string;
73
- }[];
74
- }>;
75
- };
76
- };
77
- //# sourceMappingURL=stats.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stats.d.ts","sourceRoot":"","sources":["../../src/tools/stats.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE/D,eAAO,MAAM,UAAU;;;;;;;;;;0BAMK,WAAW,QAAQ;YAAE,KAAK,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;;;;;;0BAkBpC,WAAW,QAAQ;YAAE,KAAK,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;;;;;;0BAkBpC,WAAW,QAAQ;YAAE,KAAK,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;;;;;;0BAkBpC,WAAW,QAAQ;YAAE,KAAK,EAAE,MAAM,CAAA;SAAE;;;;;;;CAY/D,CAAC"}
@@ -1,72 +0,0 @@
1
- import { z } from 'zod';
2
- export const statsTools = {
3
- yuque_group_stats: {
4
- description: 'Get overall statistics for a group/team',
5
- inputSchema: z.object({
6
- login: z.string().describe('Group login name'),
7
- }),
8
- handler: async (client, args) => {
9
- const stats = await client.getGroupStats(args.login);
10
- return {
11
- content: [
12
- {
13
- type: 'text',
14
- text: JSON.stringify(stats, null, 2),
15
- },
16
- ],
17
- };
18
- },
19
- },
20
- yuque_group_member_stats: {
21
- description: 'Get member statistics for a group/team',
22
- inputSchema: z.object({
23
- login: z.string().describe('Group login name'),
24
- }),
25
- handler: async (client, args) => {
26
- const stats = await client.getGroupMemberStats(args.login);
27
- return {
28
- content: [
29
- {
30
- type: 'text',
31
- text: JSON.stringify(stats, null, 2),
32
- },
33
- ],
34
- };
35
- },
36
- },
37
- yuque_group_book_stats: {
38
- description: 'Get book/repo statistics for a group/team',
39
- inputSchema: z.object({
40
- login: z.string().describe('Group login name'),
41
- }),
42
- handler: async (client, args) => {
43
- const stats = await client.getGroupBookStats(args.login);
44
- return {
45
- content: [
46
- {
47
- type: 'text',
48
- text: JSON.stringify(stats, null, 2),
49
- },
50
- ],
51
- };
52
- },
53
- },
54
- yuque_group_doc_stats: {
55
- description: 'Get document statistics for a group/team',
56
- inputSchema: z.object({
57
- login: z.string().describe('Group login name'),
58
- }),
59
- handler: async (client, args) => {
60
- const stats = await client.getGroupDocStats(args.login);
61
- return {
62
- content: [
63
- {
64
- type: 'text',
65
- text: JSON.stringify(stats, null, 2),
66
- },
67
- ],
68
- };
69
- },
70
- },
71
- };
72
- //# sourceMappingURL=stats.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stats.js","sourceRoot":"","sources":["../../src/tools/stats.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,iBAAiB,EAAE;QACjB,WAAW,EAAE,yCAAyC;QACtD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;SAC/C,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,MAAmB,EAAE,IAAuB,EAAE,EAAE;YAC9D,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrD,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;qBACrC;iBACF;aACF,CAAC;QACJ,CAAC;KACF;IAED,wBAAwB,EAAE;QACxB,WAAW,EAAE,wCAAwC;QACrD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;SAC/C,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,MAAmB,EAAE,IAAuB,EAAE,EAAE;YAC9D,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3D,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;qBACrC;iBACF;aACF,CAAC;QACJ,CAAC;KACF;IAED,sBAAsB,EAAE;QACtB,WAAW,EAAE,2CAA2C;QACxD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;SAC/C,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,MAAmB,EAAE,IAAuB,EAAE,EAAE;YAC9D,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzD,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;qBACrC;iBACF;aACF,CAAC;QACJ,CAAC;KACF;IAED,qBAAqB,EAAE;QACrB,WAAW,EAAE,0CAA0C;QACvD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;SAC/C,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,MAAmB,EAAE,IAAuB,EAAE,EAAE;YAC9D,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxD,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;qBACrC;iBACF;aACF,CAAC;QACJ,CAAC;KACF;CACF,CAAC"}
@@ -1,51 +0,0 @@
1
- import { z } from 'zod';
2
- import type { YuqueClient } from '../services/yuque-client.js';
3
- export declare const versionTools: {
4
- yuque_list_doc_versions: {
5
- description: string;
6
- inputSchema: z.ZodObject<{
7
- doc_id: z.ZodNumber;
8
- }, "strip", z.ZodTypeAny, {
9
- doc_id: number;
10
- }, {
11
- doc_id: number;
12
- }>;
13
- handler: (client: YuqueClient, args: {
14
- doc_id: number;
15
- }) => Promise<{
16
- content: {
17
- type: "text";
18
- text: string;
19
- }[];
20
- }>;
21
- };
22
- yuque_get_doc_version: {
23
- description: string;
24
- inputSchema: z.ZodObject<{
25
- version_id: z.ZodNumber;
26
- }, "strip", z.ZodTypeAny, {
27
- version_id: number;
28
- }, {
29
- version_id: number;
30
- }>;
31
- handler: (client: YuqueClient, args: {
32
- version_id: number;
33
- }) => Promise<{
34
- content: {
35
- type: "text";
36
- text: string;
37
- }[];
38
- }>;
39
- };
40
- yuque_hello: {
41
- description: string;
42
- inputSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
43
- handler: (client: YuqueClient, _args: Record<string, never>) => Promise<{
44
- content: {
45
- type: "text";
46
- text: string;
47
- }[];
48
- }>;
49
- };
50
- };
51
- //# sourceMappingURL=version.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/tools/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAG/D,eAAO,MAAM,YAAY;;;;;;;;;;0BAMG,WAAW,QAAQ;YAAE,MAAM,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;;;;;;0BAkBrC,WAAW,QAAQ;YAAE,UAAU,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;0BAgBzC,WAAW,SAAS,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;;;;;;;CAYpE,CAAC"}
@@ -1,54 +0,0 @@
1
- import { z } from 'zod';
2
- import { formatDocVersion } from '../utils/format.js';
3
- export const versionTools = {
4
- yuque_list_doc_versions: {
5
- description: 'List all versions of a document',
6
- inputSchema: z.object({
7
- doc_id: z.number().describe('Document ID'),
8
- }),
9
- handler: async (client, args) => {
10
- const versions = await client.listDocVersions(args.doc_id);
11
- return {
12
- content: [
13
- {
14
- type: 'text',
15
- text: JSON.stringify(versions.map(formatDocVersion), null, 2),
16
- },
17
- ],
18
- };
19
- },
20
- },
21
- yuque_get_doc_version: {
22
- description: 'Get a specific version of a document',
23
- inputSchema: z.object({
24
- version_id: z.number().describe('Version ID'),
25
- }),
26
- handler: async (client, args) => {
27
- const version = await client.getDocVersion(args.version_id);
28
- return {
29
- content: [
30
- {
31
- type: 'text',
32
- text: JSON.stringify(formatDocVersion(version), null, 2),
33
- },
34
- ],
35
- };
36
- },
37
- },
38
- yuque_hello: {
39
- description: 'Test API connectivity with Yuque',
40
- inputSchema: z.object({}),
41
- handler: async (client, _args) => {
42
- const result = await client.hello();
43
- return {
44
- content: [
45
- {
46
- type: 'text',
47
- text: JSON.stringify(result, null, 2),
48
- },
49
- ],
50
- };
51
- },
52
- },
53
- };
54
- //# sourceMappingURL=version.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/tools/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,uBAAuB,EAAE;QACvB,WAAW,EAAE,iCAAiC;QAC9C,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;SAC3C,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,MAAmB,EAAE,IAAwB,EAAE,EAAE;YAC/D,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC3D,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;qBAC9D;iBACF;aACF,CAAC;QACJ,CAAC;KACF;IAED,qBAAqB,EAAE;QACrB,WAAW,EAAE,sCAAsC;QACnD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;SAC9C,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,MAAmB,EAAE,IAA4B,EAAE,EAAE;YACnE,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC5D,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;qBACzD;iBACF;aACF,CAAC;QACJ,CAAC;KACF;IAED,WAAW,EAAE;QACX,WAAW,EAAE,kCAAkC;QAC/C,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;QACzB,OAAO,EAAE,KAAK,EAAE,MAAmB,EAAE,KAA4B,EAAE,EAAE;YACnE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;YACpC,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;qBACtC;iBACF;aACF,CAAC;QACJ,CAAC;KACF;CACF,CAAC"}