@mxf-dev/core 3.2.0 → 3.2.1
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/config/EmbeddingInputLimits.d.ts +43 -0
- package/dist/config/EmbeddingInputLimits.d.ts.map +1 -0
- package/dist/config/EmbeddingInputLimits.js +63 -0
- package/dist/config/EmbeddingInputLimits.js.map +1 -0
- package/dist/config/MeilisearchIngressLimits.d.ts +4 -0
- package/dist/config/MeilisearchIngressLimits.d.ts.map +1 -1
- package/dist/config/MeilisearchIngressLimits.js +4 -0
- package/dist/config/MeilisearchIngressLimits.js.map +1 -1
- package/dist/events/event-definitions/McpEvents.d.ts +3 -3
- package/dist/events/event-definitions/McpEvents.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/config/EmbeddingInputLimits.ts +71 -0
- package/src/config/MeilisearchIngressLimits.ts +4 -0
- package/src/events/event-definitions/McpEvents.ts +1 -1
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2024 Brad Anderson
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*
|
|
16
|
+
* @author Brad Anderson <BradA1878@pm.me>
|
|
17
|
+
* @repository https://github.com/BradA1878/model-exchange-framework
|
|
18
|
+
* @documentation https://mxf-dev.github.io/mxf/
|
|
19
|
+
*/
|
|
20
|
+
/**
|
|
21
|
+
* How much text an embedding model accepts in one request, in tokens.
|
|
22
|
+
*
|
|
23
|
+
* This ceiling sits next to the search-index ingress limits
|
|
24
|
+
* (MeilisearchIngressLimits) so the two can be compared: a conversation
|
|
25
|
+
* message may be 64 KiB, while the OpenAI embedding models take at most 8192
|
|
26
|
+
* tokens — roughly 32 KiB of English, less for JSON or code. Before this
|
|
27
|
+
* module existed the ceiling lived only on the provider's side, and every
|
|
28
|
+
* message between the two limits was refused with HTTP 400 on every attempt.
|
|
29
|
+
* The server's embedding generator cuts its input to this limit before the
|
|
30
|
+
* request is made; the whole message is still stored and keyword-searchable.
|
|
31
|
+
*/
|
|
32
|
+
/** Overrides the per-model limit for every model. Use it for a provider this module does not know. */
|
|
33
|
+
export declare const EMBEDDING_INPUT_TOKEN_LIMIT_ENV = "MEILISEARCH_EMBEDDING_MAX_INPUT_TOKENS";
|
|
34
|
+
/** Ceiling for a model this module does not know. Every OpenAI embedding model takes 8192. */
|
|
35
|
+
export declare const DEFAULT_EMBEDDING_INPUT_TOKEN_LIMIT = 8192;
|
|
36
|
+
/**
|
|
37
|
+
* The input token limit for an embedding model: the environment override when
|
|
38
|
+
* set, else the published limit for the model, else the default. A set but
|
|
39
|
+
* invalid override fails fast rather than falling back to a limit that may be
|
|
40
|
+
* wrong for the provider.
|
|
41
|
+
*/
|
|
42
|
+
export declare function getEmbeddingInputTokenLimit(model: string, environment?: NodeJS.ProcessEnv): number;
|
|
43
|
+
//# sourceMappingURL=EmbeddingInputLimits.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmbeddingInputLimits.d.ts","sourceRoot":"","sources":["../../src/config/EmbeddingInputLimits.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;;;;;;;GAWG;AAEH,sGAAsG;AACtG,eAAO,MAAM,+BAA+B,2CAA2C,CAAC;AAExF,8FAA8F;AAC9F,eAAO,MAAM,mCAAmC,OAAO,CAAC;AAYxD;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACvC,KAAK,EAAE,MAAM,EACb,WAAW,GAAE,MAAM,CAAC,UAAwB,GAC7C,MAAM,CAYR"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2024 Brad Anderson
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*
|
|
16
|
+
* @author Brad Anderson <BradA1878@pm.me>
|
|
17
|
+
* @repository https://github.com/BradA1878/model-exchange-framework
|
|
18
|
+
* @documentation https://mxf-dev.github.io/mxf/
|
|
19
|
+
*/
|
|
20
|
+
/**
|
|
21
|
+
* How much text an embedding model accepts in one request, in tokens.
|
|
22
|
+
*
|
|
23
|
+
* This ceiling sits next to the search-index ingress limits
|
|
24
|
+
* (MeilisearchIngressLimits) so the two can be compared: a conversation
|
|
25
|
+
* message may be 64 KiB, while the OpenAI embedding models take at most 8192
|
|
26
|
+
* tokens — roughly 32 KiB of English, less for JSON or code. Before this
|
|
27
|
+
* module existed the ceiling lived only on the provider's side, and every
|
|
28
|
+
* message between the two limits was refused with HTTP 400 on every attempt.
|
|
29
|
+
* The server's embedding generator cuts its input to this limit before the
|
|
30
|
+
* request is made; the whole message is still stored and keyword-searchable.
|
|
31
|
+
*/
|
|
32
|
+
/** Overrides the per-model limit for every model. Use it for a provider this module does not know. */
|
|
33
|
+
export const EMBEDDING_INPUT_TOKEN_LIMIT_ENV = 'MEILISEARCH_EMBEDDING_MAX_INPUT_TOKENS';
|
|
34
|
+
/** Ceiling for a model this module does not know. Every OpenAI embedding model takes 8192. */
|
|
35
|
+
export const DEFAULT_EMBEDDING_INPUT_TOKEN_LIMIT = 8192;
|
|
36
|
+
/**
|
|
37
|
+
* Input ceilings by model, as the providers publish them. Keyed by the bare
|
|
38
|
+
* model name; a provider prefix such as `openai/` is stripped before lookup.
|
|
39
|
+
*/
|
|
40
|
+
const EMBEDDING_INPUT_TOKEN_LIMITS = {
|
|
41
|
+
'text-embedding-3-small': 8192,
|
|
42
|
+
'text-embedding-3-large': 8192,
|
|
43
|
+
'text-embedding-ada-002': 8191
|
|
44
|
+
};
|
|
45
|
+
/**
|
|
46
|
+
* The input token limit for an embedding model: the environment override when
|
|
47
|
+
* set, else the published limit for the model, else the default. A set but
|
|
48
|
+
* invalid override fails fast rather than falling back to a limit that may be
|
|
49
|
+
* wrong for the provider.
|
|
50
|
+
*/
|
|
51
|
+
export function getEmbeddingInputTokenLimit(model, environment = process.env) {
|
|
52
|
+
const configured = environment[EMBEDDING_INPUT_TOKEN_LIMIT_ENV]?.trim();
|
|
53
|
+
if (configured !== undefined && configured !== '') {
|
|
54
|
+
const value = Number(configured);
|
|
55
|
+
if (!/^\d+$/.test(configured) || !Number.isSafeInteger(value) || value <= 0) {
|
|
56
|
+
throw new Error(`${EMBEDDING_INPUT_TOKEN_LIMIT_ENV} must be a positive integer number of tokens`);
|
|
57
|
+
}
|
|
58
|
+
return value;
|
|
59
|
+
}
|
|
60
|
+
const bareModel = model.includes('/') ? model.slice(model.lastIndexOf('/') + 1) : model;
|
|
61
|
+
return EMBEDDING_INPUT_TOKEN_LIMITS[bareModel] ?? DEFAULT_EMBEDDING_INPUT_TOKEN_LIMIT;
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=EmbeddingInputLimits.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmbeddingInputLimits.js","sourceRoot":"","sources":["../../src/config/EmbeddingInputLimits.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;;;;;;;GAWG;AAEH,sGAAsG;AACtG,MAAM,CAAC,MAAM,+BAA+B,GAAG,wCAAwC,CAAC;AAExF,8FAA8F;AAC9F,MAAM,CAAC,MAAM,mCAAmC,GAAG,IAAI,CAAC;AAExD;;;GAGG;AACH,MAAM,4BAA4B,GAA2B;IACzD,wBAAwB,EAAE,IAAI;IAC9B,wBAAwB,EAAE,IAAI;IAC9B,wBAAwB,EAAE,IAAI;CACjC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,2BAA2B,CACvC,KAAa,EACb,cAAiC,OAAO,CAAC,GAAG;IAE5C,MAAM,UAAU,GAAG,WAAW,CAAC,+BAA+B,CAAC,EAAE,IAAI,EAAE,CAAC;IACxE,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,EAAE,EAAE,CAAC;QAChD,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;YAC1E,MAAM,IAAI,KAAK,CAAC,GAAG,+BAA+B,8CAA8C,CAAC,CAAC;QACtG,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACxF,OAAO,4BAA4B,CAAC,SAAS,CAAC,IAAI,mCAAmC,CAAC;AAC1F,CAAC"}
|
|
@@ -32,6 +32,10 @@
|
|
|
32
32
|
* Largest single message content the index accepts, in UTF-8 bytes. A
|
|
33
33
|
* larger message is not indexed: the live path drops it after the server
|
|
34
34
|
* refuses it, and the backfill skips it without sending.
|
|
35
|
+
*
|
|
36
|
+
* This is larger than what the embedding model accepts in one request (about
|
|
37
|
+
* 8192 tokens, see EmbeddingInputLimits). The server cuts the embedding input
|
|
38
|
+
* to that ceiling; the whole message is still stored and keyword-searchable.
|
|
35
39
|
*/
|
|
36
40
|
export declare const MAX_MEILISEARCH_MESSAGE_BYTES: number;
|
|
37
41
|
/** Most messages one backfill request may carry. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MeilisearchIngressLimits.d.ts","sourceRoot":"","sources":["../../src/config/MeilisearchIngressLimits.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;;;;;;GAUG;AAEH
|
|
1
|
+
{"version":3,"file":"MeilisearchIngressLimits.d.ts","sourceRoot":"","sources":["../../src/config/MeilisearchIngressLimits.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;;;;;;GAUG;AAEH;;;;;;;;GAQG;AACH,eAAO,MAAM,6BAA6B,QAAY,CAAC;AAEvD,oDAAoD;AACpD,eAAO,MAAM,iCAAiC,KAAK,CAAC;AAEpD;;;GAGG;AACH,eAAO,MAAM,sCAAsC,QAAa,CAAC;AAEjE;;;;;;;;;GASG;AACH,eAAO,MAAM,mCAAmC,QAAa,CAAC;AAE9D,iFAAiF;AACjF,eAAO,MAAM,uBAAuB,GAAI,SAAS,MAAM,KAAG,MACpB,CAAC"}
|
|
@@ -32,6 +32,10 @@
|
|
|
32
32
|
* Largest single message content the index accepts, in UTF-8 bytes. A
|
|
33
33
|
* larger message is not indexed: the live path drops it after the server
|
|
34
34
|
* refuses it, and the backfill skips it without sending.
|
|
35
|
+
*
|
|
36
|
+
* This is larger than what the embedding model accepts in one request (about
|
|
37
|
+
* 8192 tokens, see EmbeddingInputLimits). The server cuts the embedding input
|
|
38
|
+
* to that ceiling; the whole message is still stored and keyword-searchable.
|
|
35
39
|
*/
|
|
36
40
|
export const MAX_MEILISEARCH_MESSAGE_BYTES = 64 * 1024;
|
|
37
41
|
/** Most messages one backfill request may carry. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MeilisearchIngressLimits.js","sourceRoot":"","sources":["../../src/config/MeilisearchIngressLimits.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;;;;;;GAUG;AAEH
|
|
1
|
+
{"version":3,"file":"MeilisearchIngressLimits.js","sourceRoot":"","sources":["../../src/config/MeilisearchIngressLimits.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;;;;;;GAUG;AAEH;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,EAAE,GAAG,IAAI,CAAC;AAEvD,oDAAoD;AACpD,MAAM,CAAC,MAAM,iCAAiC,GAAG,EAAE,CAAC;AAEpD;;;GAGG;AACH,MAAM,CAAC,MAAM,sCAAsC,GAAG,GAAG,GAAG,IAAI,CAAC;AAEjE;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,mCAAmC,GAAG,GAAG,GAAG,IAAI,CAAC;AAE9D,iFAAiF;AACjF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,OAAe,EAAU,EAAE,CAC/D,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC"}
|
|
@@ -267,9 +267,9 @@ export interface McpPayloads {
|
|
|
267
267
|
error: string;
|
|
268
268
|
};
|
|
269
269
|
'mcp:tool:call': {
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
270
|
+
toolName: string;
|
|
271
|
+
callId: string;
|
|
272
|
+
arguments: Record<string, unknown>;
|
|
273
273
|
agentId?: string;
|
|
274
274
|
channelId?: string;
|
|
275
275
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"McpEvents.d.ts","sourceRoot":"","sources":["../../../src/events/event-definitions/McpEvents.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;GAEG;AACH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsErB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,WAAW;IAExB,kBAAkB,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5E,iBAAiB,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3E,kBAAkB,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAAE,CAAC;IACnF,mBAAmB,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;IAI9F,8BAA8B,EAAE;QAC5B,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAChB,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;QAC7B,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACjD,CAAC;IACF,gCAAgC,EAAE;QAC9B,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,gCAAgC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IACvD,kCAAkC,EAAE;QAChC,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,yCAAyC,EAAE;QACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,KAAK,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;KACjB,CAAC;IAGF,6BAA6B,EAAE;QAC3B,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAChB,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;QAC7B,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC9C,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,+BAA+B,EAAE;QAC7B,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;KAC9B,CAAC;IACF,+BAA+B,EAAE;QAC7B,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,iCAAiC,EAAE;QAC/B,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,wCAAwC,EAAE;QACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,KAAK,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;KACjB,CAAC;IAGF,2BAA2B,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACrF,6BAA6B,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACvF,0BAA0B,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACpF,6BAA6B,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACvF,2BAA2B,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAAE,CAAC;IAC5F,kCAAkC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5F,mCAAmC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7G,6BAA6B,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACvF,+BAA+B,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACzF,sCAAsC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,WAAW,EAAE,MAAM,CAAC;YAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC;IAGjK,mBAAmB,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAAE,CAAC;IAC7H,qBAAqB,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IAC1D,qBAAqB,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACxC,uBAAuB,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IAC5D,2BAA2B,EAAE;QAAE,KAAK,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,WAAW,EAAE,MAAM,CAAC;YAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC;IACvH,eAAe,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACrC,sBAAsB,EAAE;QAAE,KAAK,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,WAAW,EAAE,MAAM,CAAC;YAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC;IAClH,qBAAqB,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACzC,eAAe,EAAE;QAAE,
|
|
1
|
+
{"version":3,"file":"McpEvents.d.ts","sourceRoot":"","sources":["../../../src/events/event-definitions/McpEvents.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2024 Brad Anderson
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*
|
|
16
|
+
* @author Brad Anderson <BradA1878@pm.me>
|
|
17
|
+
* @repository https://github.com/BradA1878/model-exchange-framework
|
|
18
|
+
* @documentation https://mxf-dev.github.io/mxf/
|
|
19
|
+
*/
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* How much text an embedding model accepts in one request, in tokens.
|
|
23
|
+
*
|
|
24
|
+
* This ceiling sits next to the search-index ingress limits
|
|
25
|
+
* (MeilisearchIngressLimits) so the two can be compared: a conversation
|
|
26
|
+
* message may be 64 KiB, while the OpenAI embedding models take at most 8192
|
|
27
|
+
* tokens — roughly 32 KiB of English, less for JSON or code. Before this
|
|
28
|
+
* module existed the ceiling lived only on the provider's side, and every
|
|
29
|
+
* message between the two limits was refused with HTTP 400 on every attempt.
|
|
30
|
+
* The server's embedding generator cuts its input to this limit before the
|
|
31
|
+
* request is made; the whole message is still stored and keyword-searchable.
|
|
32
|
+
*/
|
|
33
|
+
|
|
34
|
+
/** Overrides the per-model limit for every model. Use it for a provider this module does not know. */
|
|
35
|
+
export const EMBEDDING_INPUT_TOKEN_LIMIT_ENV = 'MEILISEARCH_EMBEDDING_MAX_INPUT_TOKENS';
|
|
36
|
+
|
|
37
|
+
/** Ceiling for a model this module does not know. Every OpenAI embedding model takes 8192. */
|
|
38
|
+
export const DEFAULT_EMBEDDING_INPUT_TOKEN_LIMIT = 8192;
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Input ceilings by model, as the providers publish them. Keyed by the bare
|
|
42
|
+
* model name; a provider prefix such as `openai/` is stripped before lookup.
|
|
43
|
+
*/
|
|
44
|
+
const EMBEDDING_INPUT_TOKEN_LIMITS: Record<string, number> = {
|
|
45
|
+
'text-embedding-3-small': 8192,
|
|
46
|
+
'text-embedding-3-large': 8192,
|
|
47
|
+
'text-embedding-ada-002': 8191
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* The input token limit for an embedding model: the environment override when
|
|
52
|
+
* set, else the published limit for the model, else the default. A set but
|
|
53
|
+
* invalid override fails fast rather than falling back to a limit that may be
|
|
54
|
+
* wrong for the provider.
|
|
55
|
+
*/
|
|
56
|
+
export function getEmbeddingInputTokenLimit(
|
|
57
|
+
model: string,
|
|
58
|
+
environment: NodeJS.ProcessEnv = process.env
|
|
59
|
+
): number {
|
|
60
|
+
const configured = environment[EMBEDDING_INPUT_TOKEN_LIMIT_ENV]?.trim();
|
|
61
|
+
if (configured !== undefined && configured !== '') {
|
|
62
|
+
const value = Number(configured);
|
|
63
|
+
if (!/^\d+$/.test(configured) || !Number.isSafeInteger(value) || value <= 0) {
|
|
64
|
+
throw new Error(`${EMBEDDING_INPUT_TOKEN_LIMIT_ENV} must be a positive integer number of tokens`);
|
|
65
|
+
}
|
|
66
|
+
return value;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
const bareModel = model.includes('/') ? model.slice(model.lastIndexOf('/') + 1) : model;
|
|
70
|
+
return EMBEDDING_INPUT_TOKEN_LIMITS[bareModel] ?? DEFAULT_EMBEDDING_INPUT_TOKEN_LIMIT;
|
|
71
|
+
}
|
|
@@ -34,6 +34,10 @@
|
|
|
34
34
|
* Largest single message content the index accepts, in UTF-8 bytes. A
|
|
35
35
|
* larger message is not indexed: the live path drops it after the server
|
|
36
36
|
* refuses it, and the backfill skips it without sending.
|
|
37
|
+
*
|
|
38
|
+
* This is larger than what the embedding model accepts in one request (about
|
|
39
|
+
* 8192 tokens, see EmbeddingInputLimits). The server cuts the embedding input
|
|
40
|
+
* to that ceiling; the whole message is still stored and keyword-searchable.
|
|
37
41
|
*/
|
|
38
42
|
export const MAX_MEILISEARCH_MESSAGE_BYTES = 64 * 1024;
|
|
39
43
|
|
|
@@ -204,7 +204,7 @@ export interface McpPayloads {
|
|
|
204
204
|
'mcp:tool:list': { filter?: string };
|
|
205
205
|
'mcp:tool:list:result': { tools: Array<{ name: string, description: string, inputSchema: Record<string, any> }> };
|
|
206
206
|
'mcp:tool:list:error': { error: string };
|
|
207
|
-
'mcp:tool:call': {
|
|
207
|
+
'mcp:tool:call': { toolName: string, callId: string, arguments: Record<string, unknown>, agentId?: string, channelId?: string };
|
|
208
208
|
'mcp:tool:result': { requestId: string, result: any, metadata?: Record<string, any> };
|
|
209
209
|
'mcp:tool:error': { requestId: string, error: string, code?: string, details?: Record<string, any> };
|
|
210
210
|
'mcp:tool:execution': { requestId: string, result: any, metadata?: Record<string, any> };
|