openmcp-sdk 0.0.2 → 0.0.4

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.
Files changed (78) hide show
  1. package/package.json +1 -1
  2. package/service/hook/adapter.d.ts +8 -2
  3. package/service/hook/adapter.d.ts.map +1 -1
  4. package/service/hook/adapter.js +4 -5
  5. package/task-loop.d.ts +52 -3
  6. package/task-loop.js +69 -10840
  7. package/task-loop.js.map +1 -1
  8. package/tools.js +1 -8
  9. package/renderer/CascadiaCode.woff2 +0 -0
  10. package/renderer/animation.css +0 -121
  11. package/renderer/default-dark.css +0 -772
  12. package/renderer/default-light.css +0 -777
  13. package/renderer/favicon.svg +0 -20
  14. package/renderer/fonts/KaTeX_AMS-Regular.1608a09b.woff +0 -0
  15. package/renderer/fonts/KaTeX_AMS-Regular.4aafdb68.ttf +0 -0
  16. package/renderer/fonts/KaTeX_AMS-Regular.a79f1c31.woff2 +0 -0
  17. package/renderer/fonts/KaTeX_Caligraphic-Bold.cce5b8ec.ttf +0 -0
  18. package/renderer/fonts/KaTeX_Caligraphic-Regular.07ef19e7.ttf +0 -0
  19. package/renderer/fonts/KaTeX_Fraktur-Bold.9f256b85.woff +0 -0
  20. package/renderer/fonts/KaTeX_Fraktur-Bold.b18f59e1.ttf +0 -0
  21. package/renderer/fonts/KaTeX_Fraktur-Bold.d42a5579.woff2 +0 -0
  22. package/renderer/fonts/KaTeX_Fraktur-Regular.7c187121.woff +0 -0
  23. package/renderer/fonts/KaTeX_Fraktur-Regular.d3c882a6.woff2 +0 -0
  24. package/renderer/fonts/KaTeX_Fraktur-Regular.ed38e79f.ttf +0 -0
  25. package/renderer/fonts/KaTeX_Main-Bold.b74a1a8b.ttf +0 -0
  26. package/renderer/fonts/KaTeX_Main-Bold.c3fb5ac2.woff2 +0 -0
  27. package/renderer/fonts/KaTeX_Main-Bold.d181c465.woff +0 -0
  28. package/renderer/fonts/KaTeX_Main-BoldItalic.6f2bb1df.woff2 +0 -0
  29. package/renderer/fonts/KaTeX_Main-BoldItalic.70d8b0a5.ttf +0 -0
  30. package/renderer/fonts/KaTeX_Main-BoldItalic.e3f82f9d.woff +0 -0
  31. package/renderer/fonts/KaTeX_Main-Italic.47373d1e.ttf +0 -0
  32. package/renderer/fonts/KaTeX_Main-Italic.8916142b.woff2 +0 -0
  33. package/renderer/fonts/KaTeX_Main-Italic.9024d815.woff +0 -0
  34. package/renderer/fonts/KaTeX_Main-Regular.0462f03b.woff2 +0 -0
  35. package/renderer/fonts/KaTeX_Main-Regular.7f51fe03.woff +0 -0
  36. package/renderer/fonts/KaTeX_Main-Regular.b7f8fe9b.ttf +0 -0
  37. package/renderer/fonts/KaTeX_Math-BoldItalic.572d331f.woff2 +0 -0
  38. package/renderer/fonts/KaTeX_Math-BoldItalic.a879cf83.ttf +0 -0
  39. package/renderer/fonts/KaTeX_Math-BoldItalic.f1035d8d.woff +0 -0
  40. package/renderer/fonts/KaTeX_Math-Italic.5295ba48.woff +0 -0
  41. package/renderer/fonts/KaTeX_Math-Italic.939bc644.ttf +0 -0
  42. package/renderer/fonts/KaTeX_Math-Italic.f28c23ac.woff2 +0 -0
  43. package/renderer/fonts/KaTeX_SansSerif-Bold.8c5b5494.woff2 +0 -0
  44. package/renderer/fonts/KaTeX_SansSerif-Bold.94e1e8dc.ttf +0 -0
  45. package/renderer/fonts/KaTeX_SansSerif-Bold.bf59d231.woff +0 -0
  46. package/renderer/fonts/KaTeX_SansSerif-Italic.3b1e59b3.woff2 +0 -0
  47. package/renderer/fonts/KaTeX_SansSerif-Italic.7c9bc82b.woff +0 -0
  48. package/renderer/fonts/KaTeX_SansSerif-Italic.b4c20c84.ttf +0 -0
  49. package/renderer/fonts/KaTeX_SansSerif-Regular.74048478.woff +0 -0
  50. package/renderer/fonts/KaTeX_SansSerif-Regular.ba21ed5f.woff2 +0 -0
  51. package/renderer/fonts/KaTeX_SansSerif-Regular.d4d7ba48.ttf +0 -0
  52. package/renderer/fonts/KaTeX_Script-Regular.03e9641d.woff2 +0 -0
  53. package/renderer/fonts/KaTeX_Script-Regular.07505710.woff +0 -0
  54. package/renderer/fonts/KaTeX_Script-Regular.fe9cbbe1.ttf +0 -0
  55. package/renderer/fonts/KaTeX_Size1-Regular.fabc004a.ttf +0 -0
  56. package/renderer/fonts/KaTeX_Size2-Regular.d6b476ec.ttf +0 -0
  57. package/renderer/fonts/KaTeX_Size4-Regular.fbccdabe.ttf +0 -0
  58. package/renderer/fonts/KaTeX_Typewriter-Regular.6258592b.woff +0 -0
  59. package/renderer/fonts/KaTeX_Typewriter-Regular.a8709e36.woff2 +0 -0
  60. package/renderer/fonts/KaTeX_Typewriter-Regular.d97aaf4a.ttf +0 -0
  61. package/renderer/iconfont.css +0 -211
  62. package/renderer/iconfont.woff2 +0 -0
  63. package/renderer/images/deepseek.com.ico +0 -0
  64. package/renderer/images/grok.com.png +0 -0
  65. package/renderer/images/gstatic.com.svg +0 -22
  66. package/renderer/images/kimichat.cn.png +0 -0
  67. package/renderer/images/mistral.ai.ico +0 -0
  68. package/renderer/images/ollama.png +0 -0
  69. package/renderer/images/openai.com.ico +0 -0
  70. package/renderer/images/openmcp-qq-qrcode.jpg +0 -0
  71. package/renderer/images/openmcp.png +0 -0
  72. package/renderer/images/openmcp.svg +0 -22
  73. package/renderer/images/perplexity.ai.ico +0 -0
  74. package/renderer/index.html +0 -1
  75. package/renderer/js/app.fa042648.js +0 -51
  76. package/renderer/js/app.fa042648.js.map +0 -1
  77. package/renderer/mcp.css +0 -224
  78. package/renderer/vscode.css +0 -149
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openmcp-sdk",
3
- "version": "0.0.2",
3
+ "version": "0.0.4",
4
4
  "description": "openmcp-sdk",
5
5
  "scripts": {
6
6
  "test": "echo \"Error: no test specified\" && exit 1"
@@ -59,9 +59,15 @@ export declare class TaskLoopAdapter {
59
59
  * @returns
60
60
  */
61
61
  listTools(): Promise<{
62
- name: string;
63
- description: string | undefined;
64
62
  enabled: boolean;
63
+ name: string;
64
+ inputSchema: {
65
+ type: "object";
66
+ properties?: import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough"> | undefined;
67
+ } & {
68
+ [k: string]: unknown;
69
+ };
70
+ description?: string | undefined;
65
71
  }[]>;
66
72
  }
67
73
  //# sourceMappingURL=adapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/hook/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI/C,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,GAAG,CAAC;CACb;AAGD,MAAM,WAAW,iBAAiB;IAC9B,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC3B,WAAW,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI,CAAC;CACnC;AAGD,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,GAAG,KAAK,IAAI,CAAC;AAEpD,qBAAa,iBAAiB;IAC1B,OAAO,CAAC,EAAE,CAAY;IACtB,OAAO,CAAC,eAAe,CAAsB;gBAEjC,EAAE,EAAE,SAAS;IAezB;;;OAGG;IACH,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAQ5C;;;;OAIG;IACH,mBAAmB,CAAC,QAAQ,EAAE,cAAc,GAAG;QAAE,OAAO,EAAE,MAAM,IAAI,CAAA;KAAE;CAMzE;AAGD,qBAAa,eAAe;IACjB,OAAO,EAAE,YAAY,CAAC;IAC7B,OAAO,CAAC,eAAe,CAAsB;gBAEjC,MAAM,CAAC,EAAE,GAAG;IAgBxB;;;OAGG;IACI,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAInD;;;;OAIG;IACI,mBAAmB,CAAC,QAAQ,EAAE,cAAc,GAAG;QAAE,OAAO,EAAE,MAAM,IAAI,CAAA;KAAE;IAO7E;;;OAGG;IACU,gBAAgB,CAAC,SAAS,EAAE,UAAU;IAWnD;;;OAGG;IACU,SAAS;;;;;CAWzB"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/hook/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI/C,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,GAAG,CAAC;CACb;AAGD,MAAM,WAAW,iBAAiB;IAC9B,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC3B,WAAW,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI,CAAC;CACnC;AAGD,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,GAAG,KAAK,IAAI,CAAC;AAEpD,qBAAa,iBAAiB;IAC1B,OAAO,CAAC,EAAE,CAAY;IACtB,OAAO,CAAC,eAAe,CAAsB;gBAEjC,EAAE,EAAE,SAAS;IAezB;;;OAGG;IACH,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAQ5C;;;;OAIG;IACH,mBAAmB,CAAC,QAAQ,EAAE,cAAc,GAAG;QAAE,OAAO,EAAE,MAAM,IAAI,CAAA;KAAE;CAMzE;AAGD,qBAAa,eAAe;IACjB,OAAO,EAAE,YAAY,CAAC;IAC7B,OAAO,CAAC,eAAe,CAAsB;gBAEjC,MAAM,CAAC,EAAE,GAAG;IAgBxB;;;OAGG;IACI,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAInD;;;;OAIG;IACI,mBAAmB,CAAC,QAAQ,EAAE,cAAc,GAAG;QAAE,OAAO,EAAE,MAAM,IAAI,CAAA;KAAE;IAO7E;;;OAGG;IACU,gBAAgB,CAAC,SAAS,EAAE,UAAU;IAWnD;;;OAGG;IACU,SAAS;;;;;;;;;;;CAUzB"}
@@ -110,11 +110,10 @@ class TaskLoopAdapter {
110
110
  return __awaiter(this, void 0, void 0, function* () {
111
111
  const tools = yield (connect_service_1.client === null || connect_service_1.client === void 0 ? void 0 : connect_service_1.client.listTools());
112
112
  if (tools === null || tools === void 0 ? void 0 : tools.tools) {
113
- return tools.tools.map((tool) => ({
114
- name: tool.name,
115
- description: tool.description,
116
- enabled: true
117
- }));
113
+ return tools.tools.map((tool) => {
114
+ const enabledTools = Object.assign(Object.assign({}, tool), { enabled: true });
115
+ return enabledTools;
116
+ });
118
117
  }
119
118
  return [];
120
119
  });
package/task-loop.d.ts CHANGED
@@ -24,6 +24,17 @@ export interface ToolCall {
24
24
  }
25
25
  }
26
26
 
27
+ export interface ToolCallContent {
28
+ type: string;
29
+ text: string;
30
+ [key: string]: any;
31
+ }
32
+
33
+ export interface ToolCallResult {
34
+ state: MessageState;
35
+ content: ToolCallContent[];
36
+ }
37
+
27
38
  export enum MessageState {
28
39
  ServerError = 'server internal error',
29
40
  ReceiveChunkError = 'receive chunk error',
@@ -58,6 +69,7 @@ export class TaskLoop {
58
69
  private onError;
59
70
  private onChunk;
60
71
  private onDone;
72
+ private onToolCalled;
61
73
  private onEpoch;
62
74
  private completionUsage;
63
75
  private llmConfig;
@@ -68,14 +80,46 @@ export class TaskLoop {
68
80
  private doConversation;
69
81
  makeChatData(tabStorage: any): ChatCompletionCreateParamsBase | undefined;
70
82
  abort(): void;
83
+
84
+ /**
85
+ * @description 注册 error 发生时触发的回调函数
86
+ * @param handler
87
+ */
71
88
  registerOnError(handler: (msg: IErrorMssage) => void): void;
72
89
  registerOnChunk(handler: (chunk: ChatCompletionChunk) => void): void;
90
+
91
+ /**
92
+ * @description 注册 chat.completion 完成时触发的回调函数
93
+ * @param handler
94
+ */
73
95
  registerOnDone(handler: () => void): void;
96
+
97
+ /**
98
+ * @description 注册每一个 epoch 开始时触发的回调函数
99
+ * @param handler
100
+ */
74
101
  registerOnEpoch(handler: () => void): void;
75
- setMaxEpochs(maxEpochs: number): void;
102
+
103
+ /**
104
+ * @description 注册当工具调用完成时的回调函数,会调用这个方法,可以拦截并修改 toolcall 的输出
105
+ * @param handler
106
+ */
107
+ registerOnToolCalled(handler: (toolCallResult: ToolCallResult) => ToolCallResult): void;
108
+
109
+ /**
110
+ * @description 注册当工具调用前的回调函数,可以拦截并修改 toolcall 的输入
111
+ * @param handler
112
+ */
113
+ registerOnToolCall(handler: (toolCall: ToolCall) => ToolCall): void;
114
+
115
+ /**
116
+ * @description 获取当前的 LLM 配置
117
+ */
118
+ getLlmConfig(): any;
119
+
76
120
  /**
77
121
  * @description 设置当前的 LLM 配置,用于 nodejs 环境运行
78
- * @param config
122
+ * @param config
79
123
  * @example
80
124
  * setLlmConfig({
81
125
  * id: 'openai',
@@ -85,7 +129,12 @@ export class TaskLoop {
85
129
  * })
86
130
  */
87
131
  setLlmConfig(config: any): void;
88
- getLlmConfig(): any;
132
+
133
+ /**
134
+ * @description 设置最大 epoch 次数
135
+ * @param maxEpochs
136
+ */
137
+ setMaxEpochs(maxEpochs: number): void;
89
138
  bindStreaming(content: Ref<string>, toolCalls: Ref<ToolCall[]>): void;
90
139
  connectToService(): Promise<void>;
91
140
  /**