@taotao7/bypass-mcp 1.6.2 → 1.9.0

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/index.js CHANGED
@@ -9,6 +9,7 @@ import { registerOrderTools } from "./tools/orders.js";
9
9
  import { registerStatsTools } from "./tools/stats.js";
10
10
  import { registerPromoTools } from "./tools/promo.js";
11
11
  import { registerReferralTools } from "./tools/referral.js";
12
+ import { registerKnowledgeTools } from "./tools/knowledge.js";
12
13
  const apiUrl = process.env.BYPASS_API_URL;
13
14
  const apiToken = process.env.BYPASS_API_TOKEN;
14
15
  if (!apiUrl || !apiToken) {
@@ -30,6 +31,7 @@ registerOrderTools(server);
30
31
  registerStatsTools(server);
31
32
  registerPromoTools(server);
32
33
  registerReferralTools(server);
34
+ registerKnowledgeTools(server);
33
35
  async function main() {
34
36
  const transport = new StdioServerTransport();
35
37
  await server.connect(transport);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;AAC1C,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;AAE9C,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;IACzB,OAAO,CAAC,KAAK,CACX,gFAAgF,CACjF,CAAC;IACF,OAAO,CAAC,KAAK,CAAC,gEAAgE,CAAC,CAAC;IAChF,OAAO,CAAC,KAAK,CAAC,+EAA+E,CAAC,CAAC;IAC/F,OAAO,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;IACvE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AAE1B,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;IAC3B,IAAI,EAAE,mBAAmB;IACzB,OAAO,EAAE,OAAO;CACjB,CAAC,CAAC;AAEH,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAC5B,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAC7B,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAC7B,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAC3B,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAC3B,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAC3B,qBAAqB,CAAC,MAAM,CAAC,CAAC;AAE9B,KAAK,UAAU,IAAI;IACjB,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;AACvD,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;IACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;AAC1C,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;AAE9C,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;IACzB,OAAO,CAAC,KAAK,CACX,gFAAgF,CACjF,CAAC;IACF,OAAO,CAAC,KAAK,CAAC,gEAAgE,CAAC,CAAC;IAChF,OAAO,CAAC,KAAK,CAAC,+EAA+E,CAAC,CAAC;IAC/F,OAAO,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;IACvE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AAE1B,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;IAC3B,IAAI,EAAE,mBAAmB;IACzB,OAAO,EAAE,OAAO;CACjB,CAAC,CAAC;AAEH,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAC5B,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAC7B,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAC7B,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAC3B,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAC3B,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAC3B,qBAAqB,CAAC,MAAM,CAAC,CAAC;AAC9B,sBAAsB,CAAC,MAAM,CAAC,CAAC;AAE/B,KAAK,UAAU,IAAI;IACjB,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;AACvD,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;IACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -3,3 +3,4 @@ export declare function apiGet<T = unknown>(path: string): Promise<T>;
3
3
  export declare function apiPost<T = unknown>(path: string, body: unknown): Promise<T>;
4
4
  export declare function apiPatch<T = unknown>(path: string, body: unknown): Promise<T>;
5
5
  export declare function apiDelete<T = unknown>(path: string): Promise<T>;
6
+ export declare function apiPostFormData<T = unknown>(path: string, formData: FormData): Promise<T>;
@@ -34,4 +34,17 @@ export function apiPatch(path, body) {
34
34
  export function apiDelete(path) {
35
35
  return request("DELETE", path);
36
36
  }
37
+ export async function apiPostFormData(path, formData) {
38
+ const url = `${baseUrl}/v1${path}`;
39
+ const res = await fetch(url, {
40
+ method: "POST",
41
+ headers: { Authorization: `Bearer ${apiToken}` },
42
+ body: formData,
43
+ });
44
+ if (!res.ok) {
45
+ const text = await res.text();
46
+ throw new Error(`API error ${res.status}: ${text}`);
47
+ }
48
+ return res.json();
49
+ }
37
50
  //# sourceMappingURL=api.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/services/api.ts"],"names":[],"mappings":"AAAA,IAAI,OAAe,CAAC;AACpB,IAAI,QAAgB,CAAC;AAErB,MAAM,UAAU,OAAO,CAAC,GAAW,EAAE,KAAa;IAChD,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAClC,QAAQ,GAAG,KAAK,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,OAAO,CACpB,MAAc,EACd,IAAY,EACZ,IAAc;IAEd,MAAM,GAAG,GAAG,GAAG,OAAO,MAAM,IAAI,EAAE,CAAC;IACnC,MAAM,OAAO,GAA2B;QACtC,aAAa,EAAE,UAAU,QAAQ,EAAE;KACpC,CAAC;IACF,IAAI,IAAI;QAAE,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;IAEvD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAC3B,MAAM;QACN,OAAO;QACP,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;KAC9C,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,aAAa,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,OAAO,GAAG,CAAC,IAAI,EAAgB,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,MAAM,CAAc,IAAY;IAC9C,OAAO,OAAO,CAAI,KAAK,EAAE,IAAI,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,OAAO,CAAc,IAAY,EAAE,IAAa;IAC9D,OAAO,OAAO,CAAI,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,QAAQ,CAAc,IAAY,EAAE,IAAa;IAC/D,OAAO,OAAO,CAAI,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,SAAS,CAAc,IAAY;IACjD,OAAO,OAAO,CAAI,QAAQ,EAAE,IAAI,CAAC,CAAC;AACpC,CAAC"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/services/api.ts"],"names":[],"mappings":"AAAA,IAAI,OAAe,CAAC;AACpB,IAAI,QAAgB,CAAC;AAErB,MAAM,UAAU,OAAO,CAAC,GAAW,EAAE,KAAa;IAChD,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAClC,QAAQ,GAAG,KAAK,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,OAAO,CACpB,MAAc,EACd,IAAY,EACZ,IAAc;IAEd,MAAM,GAAG,GAAG,GAAG,OAAO,MAAM,IAAI,EAAE,CAAC;IACnC,MAAM,OAAO,GAA2B;QACtC,aAAa,EAAE,UAAU,QAAQ,EAAE;KACpC,CAAC;IACF,IAAI,IAAI;QAAE,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;IAEvD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAC3B,MAAM;QACN,OAAO;QACP,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;KAC9C,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,aAAa,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,OAAO,GAAG,CAAC,IAAI,EAAgB,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,MAAM,CAAc,IAAY;IAC9C,OAAO,OAAO,CAAI,KAAK,EAAE,IAAI,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,OAAO,CAAc,IAAY,EAAE,IAAa;IAC9D,OAAO,OAAO,CAAI,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,QAAQ,CAAc,IAAY,EAAE,IAAa;IAC/D,OAAO,OAAO,CAAI,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,SAAS,CAAc,IAAY;IACjD,OAAO,OAAO,CAAI,QAAQ,EAAE,IAAI,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,IAAY,EACZ,QAAkB;IAElB,MAAM,GAAG,GAAG,GAAG,OAAO,MAAM,IAAI,EAAE,CAAC;IACnC,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAC3B,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,QAAQ,EAAE,EAAE;QAChD,IAAI,EAAE,QAAQ;KACf,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,aAAa,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,OAAO,GAAG,CAAC,IAAI,EAAgB,CAAC;AAClC,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ export declare function registerKnowledgeTools(server: McpServer): void;
@@ -0,0 +1,257 @@
1
+ import { z } from "zod";
2
+ import { readFile } from "node:fs/promises";
3
+ import { basename } from "node:path";
4
+ import { apiGet, apiPost, apiPostFormData, apiPatch, apiDelete } from "../services/api.js";
5
+ export function registerKnowledgeTools(server) {
6
+ // ─── Knowledge Bases ───────────────────────────────
7
+ server.registerTool("bypass_list_knowledge_bases", {
8
+ title: "List Knowledge Bases",
9
+ description: "List knowledge bases with optional filters (status, search). Returns paginated results with document counts.",
10
+ inputSchema: {
11
+ status: z.string().optional().describe("Filter by status (e.g. 'active', 'disabled')"),
12
+ search: z.string().optional().describe("Search in name"),
13
+ limit: z.number().int().min(1).max(100).default(20).describe("Max results"),
14
+ offset: z.number().int().min(0).default(0).describe("Pagination offset"),
15
+ },
16
+ annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false },
17
+ }, async (params) => {
18
+ const qs = new URLSearchParams();
19
+ if (params.status)
20
+ qs.set("status", params.status);
21
+ if (params.search)
22
+ qs.set("search", params.search);
23
+ qs.set("limit", String(params.limit));
24
+ qs.set("offset", String(params.offset));
25
+ const data = await apiGet(`/knowledge-bases?${qs}`);
26
+ return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] };
27
+ });
28
+ server.registerTool("bypass_get_knowledge_base", {
29
+ title: "Get Knowledge Base",
30
+ description: "Get a single knowledge base by ID with documents list and document count.",
31
+ inputSchema: { id: z.number().int().describe("Knowledge base ID") },
32
+ annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false },
33
+ }, async (params) => {
34
+ const data = await apiGet(`/knowledge-bases/${params.id}`);
35
+ return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] };
36
+ });
37
+ server.registerTool("bypass_create_knowledge_base", {
38
+ title: "Create Knowledge Base",
39
+ description: "Create a new knowledge base. Syncs with GLM provider automatically.",
40
+ inputSchema: {
41
+ name: z.string().min(1).describe("Knowledge base name"),
42
+ description: z.string().optional().describe("Knowledge base description"),
43
+ embedding_id: z.number().int().optional().describe("Embedding model ID (default: 11)"),
44
+ created_by: z.string().optional().describe("Creator user ID"),
45
+ },
46
+ annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false },
47
+ }, async (params) => {
48
+ const data = await apiPost("/knowledge-bases", params);
49
+ return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] };
50
+ });
51
+ server.registerTool("bypass_update_knowledge_base", {
52
+ title: "Update Knowledge Base",
53
+ description: "Update a knowledge base's name, description or status. Only provided fields are updated. Changes sync to GLM provider.",
54
+ inputSchema: {
55
+ id: z.number().int().describe("Knowledge base ID"),
56
+ name: z.string().optional().describe("New name"),
57
+ description: z.string().optional().describe("New description"),
58
+ status: z.string().optional().describe("New status (e.g. 'active', 'disabled')"),
59
+ },
60
+ annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: false },
61
+ }, async (params) => {
62
+ const { id, ...fields } = params;
63
+ await apiPatch(`/knowledge-bases/${id}`, fields);
64
+ return { content: [{ type: "text", text: `Knowledge base ${id} updated.` }] };
65
+ });
66
+ server.registerTool("bypass_delete_knowledge_base", {
67
+ title: "Delete Knowledge Base",
68
+ description: "Soft-delete a knowledge base by setting status to disabled.",
69
+ inputSchema: { id: z.number().int().describe("Knowledge base ID") },
70
+ annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: false },
71
+ }, async (params) => {
72
+ await apiDelete(`/knowledge-bases/${params.id}`);
73
+ return { content: [{ type: "text", text: `Knowledge base ${params.id} deleted (soft).` }] };
74
+ });
75
+ // ─── Documents ─────────────────────────────────────
76
+ server.registerTool("bypass_list_kb_documents", {
77
+ title: "List Knowledge Base Documents",
78
+ description: "List documents in a knowledge base with pagination.",
79
+ inputSchema: {
80
+ kb_id: z.number().int().describe("Knowledge base ID"),
81
+ limit: z.number().int().min(1).max(100).default(50).describe("Max results"),
82
+ offset: z.number().int().min(0).default(0).describe("Pagination offset"),
83
+ },
84
+ annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false },
85
+ }, async (params) => {
86
+ const qs = new URLSearchParams();
87
+ qs.set("limit", String(params.limit));
88
+ qs.set("offset", String(params.offset));
89
+ const data = await apiGet(`/knowledge-bases/${params.kb_id}/documents?${qs}`);
90
+ return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] };
91
+ });
92
+ server.registerTool("bypass_upload_kb_document", {
93
+ title: "Upload Knowledge Base Document",
94
+ description: "Upload a local file to a knowledge base. Accepts an absolute file path on disk. Supported formats: md, txt, pdf, doc, docx, csv, xlsx, pptx. Max 50MB.",
95
+ inputSchema: {
96
+ kb_id: z.number().int().describe("Knowledge base ID"),
97
+ file_path: z.string().min(1).describe("Absolute path to the file on disk"),
98
+ uploaded_by: z.string().optional().describe("Uploader user ID"),
99
+ },
100
+ annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false },
101
+ }, async (params) => {
102
+ const buf = await readFile(params.file_path);
103
+ const fileName = basename(params.file_path);
104
+ const blob = new Blob([buf]);
105
+ const formData = new FormData();
106
+ formData.set("file", new File([blob], fileName));
107
+ if (params.uploaded_by)
108
+ formData.set("uploaded_by", params.uploaded_by);
109
+ const data = await apiPostFormData(`/knowledge-bases/${params.kb_id}/documents`, formData);
110
+ return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] };
111
+ });
112
+ server.registerTool("bypass_delete_kb_document", {
113
+ title: "Delete Knowledge Base Document",
114
+ description: "Permanently delete a document from a knowledge base. Also removes from GLM provider.",
115
+ inputSchema: {
116
+ kb_id: z.number().int().describe("Knowledge base ID"),
117
+ doc_id: z.number().int().describe("Document ID"),
118
+ },
119
+ annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: false },
120
+ }, async (params) => {
121
+ await apiDelete(`/knowledge-bases/${params.kb_id}/documents/${params.doc_id}`);
122
+ return { content: [{ type: "text", text: `Document ${params.doc_id} deleted.` }] };
123
+ });
124
+ // ─── Permissions ───────────────────────────────────
125
+ server.registerTool("bypass_list_kb_permissions", {
126
+ title: "List Knowledge Base Permissions",
127
+ description: "List user permissions (授权) for a knowledge base. Shows which users have access.",
128
+ inputSchema: {
129
+ kb_id: z.number().int().describe("Knowledge base ID"),
130
+ search: z.string().optional().describe("Search by user name or email"),
131
+ limit: z.number().int().min(1).max(100).default(50).describe("Max results"),
132
+ offset: z.number().int().min(0).default(0).describe("Pagination offset"),
133
+ },
134
+ annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false },
135
+ }, async (params) => {
136
+ const qs = new URLSearchParams();
137
+ if (params.search)
138
+ qs.set("search", params.search);
139
+ qs.set("limit", String(params.limit));
140
+ qs.set("offset", String(params.offset));
141
+ const data = await apiGet(`/knowledge-bases/${params.kb_id}/permissions?${qs}`);
142
+ return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] };
143
+ });
144
+ server.registerTool("bypass_grant_kb_permission", {
145
+ title: "Grant Knowledge Base Permission",
146
+ description: "Grant a user access to a knowledge base.",
147
+ inputSchema: {
148
+ kb_id: z.number().int().describe("Knowledge base ID"),
149
+ user_id: z.string().min(1).describe("User ID (Auth0 sub) to grant access"),
150
+ granted_by: z.string().optional().describe("Admin user ID who grants the permission"),
151
+ },
152
+ annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: false },
153
+ }, async (params) => {
154
+ await apiPost(`/knowledge-bases/${params.kb_id}/permissions`, {
155
+ user_id: params.user_id,
156
+ granted_by: params.granted_by,
157
+ });
158
+ return { content: [{ type: "text", text: `Permission granted to user ${params.user_id} for knowledge base ${params.kb_id}.` }] };
159
+ });
160
+ server.registerTool("bypass_revoke_kb_permission", {
161
+ title: "Revoke Knowledge Base Permission",
162
+ description: "Revoke a user's access to a knowledge base. Provide either user_id or permission_id.",
163
+ inputSchema: {
164
+ kb_id: z.number().int().describe("Knowledge base ID"),
165
+ user_id: z.string().optional().describe("User ID to revoke access for"),
166
+ permission_id: z.number().int().optional().describe("Specific permission record ID to revoke"),
167
+ },
168
+ annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: false },
169
+ }, async (params) => {
170
+ const qs = new URLSearchParams();
171
+ if (params.user_id)
172
+ qs.set("user_id", params.user_id);
173
+ if (params.permission_id)
174
+ qs.set("permission_id", String(params.permission_id));
175
+ await apiDelete(`/knowledge-bases/${params.kb_id}/permissions?${qs}`);
176
+ return { content: [{ type: "text", text: `Permission revoked for knowledge base ${params.kb_id}.` }] };
177
+ });
178
+ // ─── AI Conversations ─────────────────────────────
179
+ server.registerTool("bypass_list_ai_conversations", {
180
+ title: "List AI Conversations",
181
+ description: "List AI chat sessions. Filter by student or knowledge base. Shows session title, user, knowledge base, and message counts.",
182
+ inputSchema: {
183
+ user_id: z.string().optional().describe("Filter by student user ID"),
184
+ kb_id: z.number().int().optional().describe("Filter by knowledge base ID"),
185
+ search: z.string().optional().describe("Search in session title"),
186
+ limit: z.number().int().min(1).max(100).default(20).describe("Max results"),
187
+ offset: z.number().int().min(0).default(0).describe("Pagination offset"),
188
+ },
189
+ annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false },
190
+ }, async (params) => {
191
+ const qs = new URLSearchParams();
192
+ if (params.user_id)
193
+ qs.set("user_id", params.user_id);
194
+ if (params.kb_id)
195
+ qs.set("kb_id", String(params.kb_id));
196
+ if (params.search)
197
+ qs.set("search", params.search);
198
+ qs.set("limit", String(params.limit));
199
+ qs.set("offset", String(params.offset));
200
+ const data = await apiGet(`/ai/conversations?${qs}`);
201
+ return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] };
202
+ });
203
+ server.registerTool("bypass_get_ai_conversation_messages", {
204
+ title: "Get AI Conversation Messages",
205
+ description: "Get messages for a specific AI chat session. Returns session info and message history.",
206
+ inputSchema: {
207
+ session_id: z.number().int().describe("Chat session ID"),
208
+ limit: z.number().int().min(1).max(100).default(100).describe("Max messages"),
209
+ offset: z.number().int().min(0).default(0).describe("Pagination offset"),
210
+ },
211
+ annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false },
212
+ }, async (params) => {
213
+ const qs = new URLSearchParams();
214
+ qs.set("limit", String(params.limit));
215
+ qs.set("offset", String(params.offset));
216
+ const data = await apiGet(`/ai/conversations/${params.session_id}/messages?${qs}`);
217
+ return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] };
218
+ });
219
+ // ─── AI Quotas ─────────────────────────────────────
220
+ server.registerTool("bypass_list_ai_quotas", {
221
+ title: "List AI Quotas",
222
+ description: "List student AI token quotas for a given month. Shows free tokens, granted tokens, and usage.",
223
+ inputSchema: {
224
+ period: z.string().optional().describe("Month period in YYYY-MM format (default: current month)"),
225
+ search: z.string().optional().describe("Search by user name or email"),
226
+ limit: z.number().int().min(1).max(100).default(20).describe("Max results"),
227
+ offset: z.number().int().min(0).default(0).describe("Pagination offset"),
228
+ },
229
+ annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false },
230
+ }, async (params) => {
231
+ const qs = new URLSearchParams();
232
+ if (params.period)
233
+ qs.set("period", params.period);
234
+ if (params.search)
235
+ qs.set("search", params.search);
236
+ qs.set("limit", String(params.limit));
237
+ qs.set("offset", String(params.offset));
238
+ const data = await apiGet(`/ai/quotas?${qs}`);
239
+ return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] };
240
+ });
241
+ server.registerTool("bypass_grant_ai_quota", {
242
+ title: "Grant AI Quota",
243
+ description: "Grant additional AI tokens to a user for a specific month.",
244
+ inputSchema: {
245
+ user_id: z.string().min(1).describe("User ID (Auth0 sub)"),
246
+ tokens: z.number().int().min(1).describe("Number of tokens to grant"),
247
+ granted_by: z.string().min(1).describe("Admin user ID granting the quota"),
248
+ period: z.string().optional().describe("Month period in YYYY-MM format (default: current month)"),
249
+ reason: z.string().optional().describe("Reason for granting additional tokens"),
250
+ },
251
+ annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false },
252
+ }, async (params) => {
253
+ const data = await apiPost("/ai/quotas/grant", params);
254
+ return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] };
255
+ });
256
+ }
257
+ //# sourceMappingURL=knowledge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"knowledge.js","sourceRoot":"","sources":["../../src/tools/knowledge.ts"],"names":[],"mappings":"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"}
@@ -105,10 +105,10 @@ export function registerPromoTools(server) {
105
105
  return { content: [{ type: "text", text: `Discount code commissions settled for ${target}.` }] };
106
106
  });
107
107
  // ─── Platform Settings ──────────────────────────────────
108
- // Controls global defaults for both discount codes (折扣码) and referral codes (拉新码).
108
+ // Controls global defaults for discount codes, referral codes, and AI assistant.
109
109
  server.registerTool("bypass_get_promo_settings", {
110
110
  title: "Get Platform Settings",
111
- description: "Get all platform settings. Includes: discount code (折扣码) global on/off toggle, discount/commission percentages; referral code (拉新码) discount/commission percentages and validity period in months.",
111
+ description: "Get all platform settings. Includes: discount code (折扣码) global on/off toggle, discount/commission percentages; referral code (拉新码) discount/commission percentages and validity period; AI assistant (AI 助手) system prompt and fallback content.",
112
112
  inputSchema: {},
113
113
  annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false },
114
114
  }, async () => {
@@ -117,7 +117,7 @@ export function registerPromoTools(server) {
117
117
  });
118
118
  server.registerTool("bypass_update_promo_settings", {
119
119
  title: "Update Platform Settings",
120
- description: "Update platform settings for both discount codes (折扣码) and referral codes (拉新码). Only pass the fields you want to change.",
120
+ description: "Update platform settings for discount codes (折扣码), referral codes (拉新码), and AI assistant (AI 助手). Only pass the fields you want to change.",
121
121
  inputSchema: {
122
122
  promo_code_enabled: z.boolean().optional().describe("Enable or disable the discount code (折扣码) system globally"),
123
123
  discount_percent: z.number().int().min(0).max(100).optional().describe("Global discount code (折扣码) discount percentage for buyers"),
@@ -125,11 +125,41 @@ export function registerPromoTools(server) {
125
125
  referral_discount_percent: z.number().int().min(0).max(100).optional().describe("Global referral code (拉新码) discount percentage for referred users"),
126
126
  referral_commission_percent: z.number().int().min(0).max(100).optional().describe("Global referral code (拉新码) commission percentage for referrers"),
127
127
  referral_validity_months: z.number().int().min(1).max(24).optional().describe("How many months the referral (拉新) relationship stays active after registration (1-24)"),
128
+ ai_system_prompt: z.string().optional().describe("AI assistant system prompt — controls behaviour, tone and answer style. Leave empty to use built-in default."),
129
+ ai_fallback_content: z.string().optional().describe("AI assistant fallback text — returned when knowledge base retrieval finds nothing relevant. Leave empty to use built-in default."),
128
130
  },
129
131
  annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: false },
130
132
  }, async (params) => {
131
133
  await apiPatch("/settings", params);
132
134
  return { content: [{ type: "text", text: `Platform settings updated.` }] };
133
135
  });
136
+ // ─── AI Assistant Settings (convenience aliases) ──────
137
+ // Dedicated tools for reading/writing only the AI-related settings.
138
+ server.registerTool("bypass_get_ai_settings", {
139
+ title: "Get AI Assistant Settings",
140
+ description: "Get the AI assistant (知识库 AI 助手) system prompt and fallback content. The system prompt controls the AI's behaviour, tone and answer style. The fallback content is returned when knowledge base retrieval finds nothing.",
141
+ inputSchema: {},
142
+ annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false },
143
+ }, async () => {
144
+ const data = await apiGet("/settings");
145
+ return { content: [{ type: "text", text: JSON.stringify(data.ai ?? {}, null, 2) }] };
146
+ });
147
+ server.registerTool("bypass_update_ai_settings", {
148
+ title: "Update AI Assistant Settings",
149
+ description: "Update the AI assistant (知识库 AI 助手) system prompt and/or fallback content. Changes take effect immediately for both admin test chat and student chat. Only pass the fields you want to change. Pass empty string to clear and fall back to built-in default.",
150
+ inputSchema: {
151
+ ai_system_prompt: z.string().optional().describe("System prompt — controls AI behaviour, tone and answer style. Empty string = use built-in default."),
152
+ ai_fallback_content: z.string().optional().describe("Fallback text — returned when retrieval finds nothing relevant. Empty string = use built-in default."),
153
+ },
154
+ annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: false },
155
+ }, async (params) => {
156
+ const payload = {};
157
+ if (params.ai_system_prompt !== undefined)
158
+ payload.ai_system_prompt = params.ai_system_prompt;
159
+ if (params.ai_fallback_content !== undefined)
160
+ payload.ai_fallback_content = params.ai_fallback_content;
161
+ await apiPatch("/settings", payload);
162
+ return { content: [{ type: "text", text: "AI assistant settings updated." }] };
163
+ });
134
164
  }
135
165
  //# sourceMappingURL=promo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"promo.js","sourceRoot":"","sources":["../../src/tools/promo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"promo.js","sourceRoot":"","sources":["../../src/tools/promo.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@taotao7/bypass-mcp",
3
- "version": "1.6.2",
4
- "description": "MCP server for bypass-saas platform management — courses, articles, students, orders",
3
+ "version": "1.9.0",
4
+ "description": "MCP server for bypass-saas platform management — courses, articles, students, orders, knowledge bases, AI chat",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
7
7
  "bin": {