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.
- package/package.json +1 -1
- package/service/hook/adapter.d.ts +8 -2
- package/service/hook/adapter.d.ts.map +1 -1
- package/service/hook/adapter.js +4 -5
- package/task-loop.d.ts +52 -3
- package/task-loop.js +69 -10840
- package/task-loop.js.map +1 -1
- package/tools.js +1 -8
- package/renderer/CascadiaCode.woff2 +0 -0
- package/renderer/animation.css +0 -121
- package/renderer/default-dark.css +0 -772
- package/renderer/default-light.css +0 -777
- package/renderer/favicon.svg +0 -20
- package/renderer/fonts/KaTeX_AMS-Regular.1608a09b.woff +0 -0
- package/renderer/fonts/KaTeX_AMS-Regular.4aafdb68.ttf +0 -0
- package/renderer/fonts/KaTeX_AMS-Regular.a79f1c31.woff2 +0 -0
- package/renderer/fonts/KaTeX_Caligraphic-Bold.cce5b8ec.ttf +0 -0
- package/renderer/fonts/KaTeX_Caligraphic-Regular.07ef19e7.ttf +0 -0
- package/renderer/fonts/KaTeX_Fraktur-Bold.9f256b85.woff +0 -0
- package/renderer/fonts/KaTeX_Fraktur-Bold.b18f59e1.ttf +0 -0
- package/renderer/fonts/KaTeX_Fraktur-Bold.d42a5579.woff2 +0 -0
- package/renderer/fonts/KaTeX_Fraktur-Regular.7c187121.woff +0 -0
- package/renderer/fonts/KaTeX_Fraktur-Regular.d3c882a6.woff2 +0 -0
- package/renderer/fonts/KaTeX_Fraktur-Regular.ed38e79f.ttf +0 -0
- package/renderer/fonts/KaTeX_Main-Bold.b74a1a8b.ttf +0 -0
- package/renderer/fonts/KaTeX_Main-Bold.c3fb5ac2.woff2 +0 -0
- package/renderer/fonts/KaTeX_Main-Bold.d181c465.woff +0 -0
- package/renderer/fonts/KaTeX_Main-BoldItalic.6f2bb1df.woff2 +0 -0
- package/renderer/fonts/KaTeX_Main-BoldItalic.70d8b0a5.ttf +0 -0
- package/renderer/fonts/KaTeX_Main-BoldItalic.e3f82f9d.woff +0 -0
- package/renderer/fonts/KaTeX_Main-Italic.47373d1e.ttf +0 -0
- package/renderer/fonts/KaTeX_Main-Italic.8916142b.woff2 +0 -0
- package/renderer/fonts/KaTeX_Main-Italic.9024d815.woff +0 -0
- package/renderer/fonts/KaTeX_Main-Regular.0462f03b.woff2 +0 -0
- package/renderer/fonts/KaTeX_Main-Regular.7f51fe03.woff +0 -0
- package/renderer/fonts/KaTeX_Main-Regular.b7f8fe9b.ttf +0 -0
- package/renderer/fonts/KaTeX_Math-BoldItalic.572d331f.woff2 +0 -0
- package/renderer/fonts/KaTeX_Math-BoldItalic.a879cf83.ttf +0 -0
- package/renderer/fonts/KaTeX_Math-BoldItalic.f1035d8d.woff +0 -0
- package/renderer/fonts/KaTeX_Math-Italic.5295ba48.woff +0 -0
- package/renderer/fonts/KaTeX_Math-Italic.939bc644.ttf +0 -0
- package/renderer/fonts/KaTeX_Math-Italic.f28c23ac.woff2 +0 -0
- package/renderer/fonts/KaTeX_SansSerif-Bold.8c5b5494.woff2 +0 -0
- package/renderer/fonts/KaTeX_SansSerif-Bold.94e1e8dc.ttf +0 -0
- package/renderer/fonts/KaTeX_SansSerif-Bold.bf59d231.woff +0 -0
- package/renderer/fonts/KaTeX_SansSerif-Italic.3b1e59b3.woff2 +0 -0
- package/renderer/fonts/KaTeX_SansSerif-Italic.7c9bc82b.woff +0 -0
- package/renderer/fonts/KaTeX_SansSerif-Italic.b4c20c84.ttf +0 -0
- package/renderer/fonts/KaTeX_SansSerif-Regular.74048478.woff +0 -0
- package/renderer/fonts/KaTeX_SansSerif-Regular.ba21ed5f.woff2 +0 -0
- package/renderer/fonts/KaTeX_SansSerif-Regular.d4d7ba48.ttf +0 -0
- package/renderer/fonts/KaTeX_Script-Regular.03e9641d.woff2 +0 -0
- package/renderer/fonts/KaTeX_Script-Regular.07505710.woff +0 -0
- package/renderer/fonts/KaTeX_Script-Regular.fe9cbbe1.ttf +0 -0
- package/renderer/fonts/KaTeX_Size1-Regular.fabc004a.ttf +0 -0
- package/renderer/fonts/KaTeX_Size2-Regular.d6b476ec.ttf +0 -0
- package/renderer/fonts/KaTeX_Size4-Regular.fbccdabe.ttf +0 -0
- package/renderer/fonts/KaTeX_Typewriter-Regular.6258592b.woff +0 -0
- package/renderer/fonts/KaTeX_Typewriter-Regular.a8709e36.woff2 +0 -0
- package/renderer/fonts/KaTeX_Typewriter-Regular.d97aaf4a.ttf +0 -0
- package/renderer/iconfont.css +0 -211
- package/renderer/iconfont.woff2 +0 -0
- package/renderer/images/deepseek.com.ico +0 -0
- package/renderer/images/grok.com.png +0 -0
- package/renderer/images/gstatic.com.svg +0 -22
- package/renderer/images/kimichat.cn.png +0 -0
- package/renderer/images/mistral.ai.ico +0 -0
- package/renderer/images/ollama.png +0 -0
- package/renderer/images/openai.com.ico +0 -0
- package/renderer/images/openmcp-qq-qrcode.jpg +0 -0
- package/renderer/images/openmcp.png +0 -0
- package/renderer/images/openmcp.svg +0 -22
- package/renderer/images/perplexity.ai.ico +0 -0
- package/renderer/index.html +0 -1
- package/renderer/js/app.fa042648.js +0 -51
- package/renderer/js/app.fa042648.js.map +0 -1
- package/renderer/mcp.css +0 -224
- package/renderer/vscode.css +0 -149
package/package.json
CHANGED
@@ -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
|
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"}
|
package/service/hook/adapter.js
CHANGED
@@ -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
|
-
|
115
|
-
|
116
|
-
|
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
|
-
|
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
|
-
|
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
|
/**
|