@frontmcp/sdk 1.9.0 → 1.9.1-rc.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/auth/flows/oauth.auth-ui.flow.d.ts +1 -1
- package/auth/flows/oauth.authorize.flow.d.ts +3 -3
- package/auth/flows/oauth.callback.flow.d.ts +2 -2
- package/auth/flows/oauth.connect.flow.d.ts +1 -1
- package/auth/flows/oauth.provider-callback.flow.d.ts +2 -2
- package/auth/flows/oauth.register.flow.d.ts +1 -1
- package/auth/flows/oauth.token.flow.d.ts +1 -1
- package/auth/flows/oauth.userinfo.flow.d.ts +1 -1
- package/auth/flows/well-known.jwks.flow.d.ts +3 -3
- package/auth/flows/well-known.oauth-authorization-server.flow.d.ts +2 -2
- package/auth/flows/well-known.prm.flow.d.ts +1 -1
- package/browser/index.cjs +77 -20
- package/browser/index.mjs +94 -38
- package/common/metadata/app.metadata.d.ts +2 -2
- package/common/metadata/front-mcp.metadata.d.ts +64 -64
- package/common/metadata/front-mcp.metadata.d.ts.map +1 -1
- package/common/metadata/output-policy.d.ts +1 -1
- package/common/metadata/tool.metadata.d.ts +1 -1
- package/common/schemas/http-output.schema.d.ts +24 -24
- package/common/types/options/skills-http/schema.d.ts +8 -8
- package/errors/index.d.ts +1 -1
- package/errors/index.d.ts.map +1 -1
- package/errors/registry.errors.d.ts +7 -0
- package/errors/registry.errors.d.ts.map +1 -1
- package/esm/index.mjs +94 -38
- package/front-mcp/static-startup.check.d.ts.map +1 -1
- package/index.d.ts +4 -4
- package/index.js +77 -20
- package/package.json +11 -11
- package/scope/scope.instance.d.ts.map +1 -1
- package/scope/server-entries.helper.d.ts +8 -0
- package/scope/server-entries.helper.d.ts.map +1 -0
- package/skill/cache/skill-http-cache.holder.d.ts.map +1 -1
- package/skill/flows/http/llm-full-txt.flow.d.ts +1 -1
- package/skill/flows/http/llm-txt.flow.d.ts +1 -1
- package/skill/flows/http/skills-api.flow.d.ts +1 -1
- package/tool/flows/call-tool.flow.d.ts.map +1 -1
- package/transport/flows/handle.streamable-http.flow.d.ts +1 -1
- package/utils/lineage.utils.d.ts +7 -0
- package/utils/lineage.utils.d.ts.map +1 -1
|
@@ -25,8 +25,8 @@ declare const extraOutputSchema: import("@frontmcp/lazy-zod").ZodObject<{
|
|
|
25
25
|
secure: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodBoolean>;
|
|
26
26
|
sameSite: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodEnum<{
|
|
27
27
|
strict: "strict";
|
|
28
|
-
lax: "lax";
|
|
29
28
|
none: "none";
|
|
29
|
+
lax: "lax";
|
|
30
30
|
}>>;
|
|
31
31
|
maxAge: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodNumber>;
|
|
32
32
|
expires: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodDate>;
|
|
@@ -114,8 +114,8 @@ declare const outputSchema: import("@frontmcp/lazy-zod").ZodUnion<readonly [impo
|
|
|
114
114
|
secure: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodBoolean>;
|
|
115
115
|
sameSite: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodEnum<{
|
|
116
116
|
strict: "strict";
|
|
117
|
-
lax: "lax";
|
|
118
117
|
none: "none";
|
|
118
|
+
lax: "lax";
|
|
119
119
|
}>>;
|
|
120
120
|
maxAge: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodNumber>;
|
|
121
121
|
expires: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodDate>;
|
|
@@ -135,8 +135,8 @@ declare const outputSchema: import("@frontmcp/lazy-zod").ZodUnion<readonly [impo
|
|
|
135
135
|
secure: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodBoolean>;
|
|
136
136
|
sameSite: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodEnum<{
|
|
137
137
|
strict: "strict";
|
|
138
|
-
lax: "lax";
|
|
139
138
|
none: "none";
|
|
139
|
+
lax: "lax";
|
|
140
140
|
}>>;
|
|
141
141
|
maxAge: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodNumber>;
|
|
142
142
|
expires: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodDate>;
|
|
@@ -154,8 +154,8 @@ declare const outputSchema: import("@frontmcp/lazy-zod").ZodUnion<readonly [impo
|
|
|
154
154
|
secure: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodBoolean>;
|
|
155
155
|
sameSite: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodEnum<{
|
|
156
156
|
strict: "strict";
|
|
157
|
-
lax: "lax";
|
|
158
157
|
none: "none";
|
|
158
|
+
lax: "lax";
|
|
159
159
|
}>>;
|
|
160
160
|
maxAge: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodNumber>;
|
|
161
161
|
expires: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodDate>;
|
|
@@ -66,8 +66,8 @@ declare const outputSchema: import("@frontmcp/lazy-zod").ZodUnion<readonly [impo
|
|
|
66
66
|
secure: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodBoolean>;
|
|
67
67
|
sameSite: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodEnum<{
|
|
68
68
|
strict: "strict";
|
|
69
|
-
lax: "lax";
|
|
70
69
|
none: "none";
|
|
70
|
+
lax: "lax";
|
|
71
71
|
}>>;
|
|
72
72
|
maxAge: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodNumber>;
|
|
73
73
|
expires: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodDate>;
|
|
@@ -85,8 +85,8 @@ declare const outputSchema: import("@frontmcp/lazy-zod").ZodUnion<readonly [impo
|
|
|
85
85
|
secure: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodBoolean>;
|
|
86
86
|
sameSite: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodEnum<{
|
|
87
87
|
strict: "strict";
|
|
88
|
-
lax: "lax";
|
|
89
88
|
none: "none";
|
|
89
|
+
lax: "lax";
|
|
90
90
|
}>>;
|
|
91
91
|
maxAge: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodNumber>;
|
|
92
92
|
expires: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodDate>;
|
|
@@ -40,8 +40,8 @@ declare const outputSchema: import("@frontmcp/lazy-zod").ZodObject<{
|
|
|
40
40
|
secure: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodBoolean>;
|
|
41
41
|
sameSite: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodEnum<{
|
|
42
42
|
strict: "strict";
|
|
43
|
-
lax: "lax";
|
|
44
43
|
none: "none";
|
|
44
|
+
lax: "lax";
|
|
45
45
|
}>>;
|
|
46
46
|
maxAge: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodNumber>;
|
|
47
47
|
expires: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodDate>;
|
|
@@ -54,8 +54,8 @@ declare const outputSchema: import("@frontmcp/lazy-zod").ZodUnion<readonly [impo
|
|
|
54
54
|
secure: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodBoolean>;
|
|
55
55
|
sameSite: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodEnum<{
|
|
56
56
|
strict: "strict";
|
|
57
|
-
lax: "lax";
|
|
58
57
|
none: "none";
|
|
58
|
+
lax: "lax";
|
|
59
59
|
}>>;
|
|
60
60
|
maxAge: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodNumber>;
|
|
61
61
|
expires: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodDate>;
|
|
@@ -73,8 +73,8 @@ declare const outputSchema: import("@frontmcp/lazy-zod").ZodUnion<readonly [impo
|
|
|
73
73
|
secure: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodBoolean>;
|
|
74
74
|
sameSite: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodEnum<{
|
|
75
75
|
strict: "strict";
|
|
76
|
-
lax: "lax";
|
|
77
76
|
none: "none";
|
|
77
|
+
lax: "lax";
|
|
78
78
|
}>>;
|
|
79
79
|
maxAge: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodNumber>;
|
|
80
80
|
expires: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodDate>;
|
|
@@ -38,8 +38,8 @@ declare const outputSchema: import("@frontmcp/lazy-zod").ZodObject<{
|
|
|
38
38
|
secure: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodBoolean>;
|
|
39
39
|
sameSite: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodEnum<{
|
|
40
40
|
strict: "strict";
|
|
41
|
-
lax: "lax";
|
|
42
41
|
none: "none";
|
|
42
|
+
lax: "lax";
|
|
43
43
|
}>>;
|
|
44
44
|
maxAge: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodNumber>;
|
|
45
45
|
expires: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodDate>;
|
|
@@ -84,8 +84,8 @@ declare const outputSchema: import("@frontmcp/lazy-zod").ZodObject<{
|
|
|
84
84
|
secure: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodBoolean>;
|
|
85
85
|
sameSite: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodEnum<{
|
|
86
86
|
strict: "strict";
|
|
87
|
-
lax: "lax";
|
|
88
87
|
none: "none";
|
|
88
|
+
lax: "lax";
|
|
89
89
|
}>>;
|
|
90
90
|
maxAge: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodNumber>;
|
|
91
91
|
expires: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodDate>;
|
|
@@ -41,8 +41,8 @@ declare const outputSchema: import("@frontmcp/lazy-zod").ZodObject<{
|
|
|
41
41
|
secure: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodBoolean>;
|
|
42
42
|
sameSite: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodEnum<{
|
|
43
43
|
strict: "strict";
|
|
44
|
-
lax: "lax";
|
|
45
44
|
none: "none";
|
|
45
|
+
lax: "lax";
|
|
46
46
|
}>>;
|
|
47
47
|
maxAge: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodNumber>;
|
|
48
48
|
expires: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodDate>;
|
|
@@ -24,8 +24,8 @@ declare const outputSchema: import("@frontmcp/lazy-zod").ZodUnion<readonly [impo
|
|
|
24
24
|
secure: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodBoolean>;
|
|
25
25
|
sameSite: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodEnum<{
|
|
26
26
|
strict: "strict";
|
|
27
|
-
lax: "lax";
|
|
28
27
|
none: "none";
|
|
28
|
+
lax: "lax";
|
|
29
29
|
}>>;
|
|
30
30
|
maxAge: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodNumber>;
|
|
31
31
|
expires: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodDate>;
|
|
@@ -45,8 +45,8 @@ declare const outputSchema: import("@frontmcp/lazy-zod").ZodUnion<readonly [impo
|
|
|
45
45
|
secure: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodBoolean>;
|
|
46
46
|
sameSite: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodEnum<{
|
|
47
47
|
strict: "strict";
|
|
48
|
-
lax: "lax";
|
|
49
48
|
none: "none";
|
|
49
|
+
lax: "lax";
|
|
50
50
|
}>>;
|
|
51
51
|
maxAge: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodNumber>;
|
|
52
52
|
expires: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodDate>;
|
|
@@ -65,8 +65,8 @@ declare const outputSchema: import("@frontmcp/lazy-zod").ZodUnion<readonly [impo
|
|
|
65
65
|
secure: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodBoolean>;
|
|
66
66
|
sameSite: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodEnum<{
|
|
67
67
|
strict: "strict";
|
|
68
|
-
lax: "lax";
|
|
69
68
|
none: "none";
|
|
69
|
+
lax: "lax";
|
|
70
70
|
}>>;
|
|
71
71
|
maxAge: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodNumber>;
|
|
72
72
|
expires: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodDate>;
|
|
@@ -49,8 +49,8 @@ export declare const outputSchema: import("@frontmcp/lazy-zod").ZodUnion<readonl
|
|
|
49
49
|
secure: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodBoolean>;
|
|
50
50
|
sameSite: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodEnum<{
|
|
51
51
|
strict: "strict";
|
|
52
|
-
lax: "lax";
|
|
53
52
|
none: "none";
|
|
53
|
+
lax: "lax";
|
|
54
54
|
}>>;
|
|
55
55
|
maxAge: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodNumber>;
|
|
56
56
|
expires: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodDate>;
|
|
@@ -70,8 +70,8 @@ export declare const outputSchema: import("@frontmcp/lazy-zod").ZodUnion<readonl
|
|
|
70
70
|
secure: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodBoolean>;
|
|
71
71
|
sameSite: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodEnum<{
|
|
72
72
|
strict: "strict";
|
|
73
|
-
lax: "lax";
|
|
74
73
|
none: "none";
|
|
74
|
+
lax: "lax";
|
|
75
75
|
}>>;
|
|
76
76
|
maxAge: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodNumber>;
|
|
77
77
|
expires: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodDate>;
|
|
@@ -26,8 +26,8 @@ declare const outputSchema: import("@frontmcp/lazy-zod").ZodObject<{
|
|
|
26
26
|
secure: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodBoolean>;
|
|
27
27
|
sameSite: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodEnum<{
|
|
28
28
|
strict: "strict";
|
|
29
|
-
lax: "lax";
|
|
30
29
|
none: "none";
|
|
30
|
+
lax: "lax";
|
|
31
31
|
}>>;
|
|
32
32
|
maxAge: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodNumber>;
|
|
33
33
|
expires: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodDate>;
|
package/browser/index.cjs
CHANGED
|
@@ -5378,7 +5378,7 @@ var init_normalization_errors = __esm({
|
|
|
5378
5378
|
});
|
|
5379
5379
|
|
|
5380
5380
|
// libs/sdk/src/errors/registry.errors.ts
|
|
5381
|
-
var RegistryDefinitionNotFoundError, RegistryGraphEntryNotFoundError, RegistryDependencyNotRegisteredError, InvalidRegistryKindError, NameDisambiguationError, EntryValidationError, ToolNameConflictError, FlowNotRegisteredError, UnsupportedHookOwnerKindError;
|
|
5381
|
+
var RegistryDefinitionNotFoundError, RegistryGraphEntryNotFoundError, RegistryDependencyNotRegisteredError, InvalidRegistryKindError, NameDisambiguationError, EntryValidationError, ToolNameConflictError, ReservedAppIdError, FlowNotRegisteredError, UnsupportedHookOwnerKindError;
|
|
5382
5382
|
var init_registry_errors = __esm({
|
|
5383
5383
|
"libs/sdk/src/errors/registry.errors.ts"() {
|
|
5384
5384
|
"use strict";
|
|
@@ -5421,6 +5421,14 @@ var init_registry_errors = __esm({
|
|
|
5421
5421
|
super(`A tool named "${toolName}" is already registered`, "TOOL_NAME_CONFLICT");
|
|
5422
5422
|
}
|
|
5423
5423
|
};
|
|
5424
|
+
ReservedAppIdError = class extends InternalMcpError {
|
|
5425
|
+
constructor(appId) {
|
|
5426
|
+
super(
|
|
5427
|
+
`App id "${appId}" is reserved while @FrontMcp declares tools or resources: a server-level entry named like an app's is listed as "${appId}:<name>". Give the app another id.`,
|
|
5428
|
+
"RESERVED_APP_ID"
|
|
5429
|
+
);
|
|
5430
|
+
}
|
|
5431
|
+
};
|
|
5424
5432
|
FlowNotRegisteredError = class extends InternalMcpError {
|
|
5425
5433
|
constructor(flowName) {
|
|
5426
5434
|
super(`Flow "${flowName}" is not registered`, "FLOW_NOT_REGISTERED");
|
|
@@ -6051,6 +6059,7 @@ __export(errors_exports, {
|
|
|
6051
6059
|
RemoteUnsupportedTransportError: () => RemoteUnsupportedTransportError,
|
|
6052
6060
|
RequestContextNotAvailableError: () => RequestContextNotAvailableError,
|
|
6053
6061
|
RequiredConfigUndefinedError: () => RequiredConfigUndefinedError,
|
|
6062
|
+
ReservedAppIdError: () => ReservedAppIdError,
|
|
6054
6063
|
ResourceNotFoundError: () => ResourceNotFoundError,
|
|
6055
6064
|
ResourceReadError: () => ResourceReadError,
|
|
6056
6065
|
SamplingNotAvailableError: () => SamplingNotAvailableError,
|
|
@@ -13885,7 +13894,19 @@ var init_flow_context_providers = __esm({
|
|
|
13885
13894
|
}
|
|
13886
13895
|
});
|
|
13887
13896
|
|
|
13897
|
+
// libs/sdk/src/front-mcp/front-mcp.tokens.ts
|
|
13898
|
+
var FrontMcpConfig;
|
|
13899
|
+
var init_front_mcp_tokens2 = __esm({
|
|
13900
|
+
"libs/sdk/src/front-mcp/front-mcp.tokens.ts"() {
|
|
13901
|
+
"use strict";
|
|
13902
|
+
FrontMcpConfig = /* @__PURE__ */ Symbol("FrontMcpConfig");
|
|
13903
|
+
}
|
|
13904
|
+
});
|
|
13905
|
+
|
|
13888
13906
|
// libs/sdk/src/utils/lineage.utils.ts
|
|
13907
|
+
function isServerEntryOwner(owner) {
|
|
13908
|
+
return owner?.kind === serverEntryOwner.kind && owner.id === serverEntryOwner.id && owner.ref === serverEntryOwner.ref;
|
|
13909
|
+
}
|
|
13889
13910
|
function ownerKeyOf(lineage) {
|
|
13890
13911
|
return lineage.map((o) => `${o.kind}:${o.id}`).join("/");
|
|
13891
13912
|
}
|
|
@@ -13900,10 +13921,12 @@ function appOwnerIdOf(lineage, owner) {
|
|
|
13900
13921
|
const owners2 = owner ? [...lineage, owner] : lineage;
|
|
13901
13922
|
return owners2.find((candidate) => candidate.kind === "app")?.id;
|
|
13902
13923
|
}
|
|
13903
|
-
var EntryLineageIndex;
|
|
13924
|
+
var serverEntryOwner, EntryLineageIndex;
|
|
13904
13925
|
var init_lineage_utils = __esm({
|
|
13905
13926
|
"libs/sdk/src/utils/lineage.utils.ts"() {
|
|
13906
13927
|
"use strict";
|
|
13928
|
+
init_front_mcp_tokens2();
|
|
13929
|
+
serverEntryOwner = { kind: "scope", id: "server", ref: FrontMcpConfig };
|
|
13907
13930
|
EntryLineageIndex = class {
|
|
13908
13931
|
lineages = /* @__PURE__ */ new Map();
|
|
13909
13932
|
/** Replace the index with these rows; an entry held by several rows keeps the first row's lineage. */
|
|
@@ -14341,9 +14364,9 @@ var init_call_tool_flow = __esm({
|
|
|
14341
14364
|
"checkToolAuthorization: incrementalAuth enabled but the verified token carries no authorized_apps claim \u2014 failing closed"
|
|
14342
14365
|
);
|
|
14343
14366
|
}
|
|
14344
|
-
const appId = tool?.owner?.id;
|
|
14367
|
+
const appId = isServerEntryOwner(tool?.owner) ? void 0 : tool?.owner?.id;
|
|
14345
14368
|
if (!appId) {
|
|
14346
|
-
this.logger.verbose("checkToolAuthorization:skip (no owner)");
|
|
14369
|
+
this.logger.verbose("checkToolAuthorization:skip (no app owner)");
|
|
14347
14370
|
return;
|
|
14348
14371
|
}
|
|
14349
14372
|
const isAppAuthorized = (claimAuthorizedApps?.has(appId) ?? false) || (legacyAuthorization?.authorizedAppIds?.includes(appId) ?? false) || appId in (legacyAuthorization?.authorizedApps || {});
|
|
@@ -16456,15 +16479,6 @@ var init_instance_file_logger = __esm({
|
|
|
16456
16479
|
}
|
|
16457
16480
|
});
|
|
16458
16481
|
|
|
16459
|
-
// libs/sdk/src/front-mcp/front-mcp.tokens.ts
|
|
16460
|
-
var FrontMcpConfig;
|
|
16461
|
-
var init_front_mcp_tokens2 = __esm({
|
|
16462
|
-
"libs/sdk/src/front-mcp/front-mcp.tokens.ts"() {
|
|
16463
|
-
"use strict";
|
|
16464
|
-
FrontMcpConfig = /* @__PURE__ */ Symbol("FrontMcpConfig");
|
|
16465
|
-
}
|
|
16466
|
-
});
|
|
16467
|
-
|
|
16468
16482
|
// libs/sdk/src/regsitry/registry.base.ts
|
|
16469
16483
|
var RegistryAbstract;
|
|
16470
16484
|
var init_registry_base = __esm({
|
|
@@ -53798,9 +53812,15 @@ async function createSkillHttpCache(options = {}) {
|
|
|
53798
53812
|
async function createRedisCache(redis, keyPrefix, ttlMs, logger) {
|
|
53799
53813
|
const provider = redis.provider;
|
|
53800
53814
|
if (provider === "vercel-kv" || provider === "@vercel/kv") {
|
|
53801
|
-
const
|
|
53815
|
+
const url = (0, import_utils97.getEnv)("KV_REST_API_URL");
|
|
53816
|
+
const token = (0, import_utils97.getEnv)("KV_REST_API_TOKEN");
|
|
53817
|
+
if (!url || !token) {
|
|
53818
|
+
throw new import_utils97.StorageConfigError("vercel-kv", "KV_REST_API_URL and KV_REST_API_TOKEN must be set.");
|
|
53819
|
+
}
|
|
53820
|
+
const { createClient } = require("@vercel/kv");
|
|
53821
|
+
const client2 = createClient({ url, token, automaticDeserialization: false });
|
|
53802
53822
|
return new RedisSkillHttpCache({
|
|
53803
|
-
getClient: async () =>
|
|
53823
|
+
getClient: async () => client2,
|
|
53804
53824
|
keyPrefix,
|
|
53805
53825
|
ttlMs
|
|
53806
53826
|
});
|
|
@@ -53848,7 +53868,7 @@ async function getSkillHttpCache(scope) {
|
|
|
53848
53868
|
if (pending) {
|
|
53849
53869
|
return pending;
|
|
53850
53870
|
}
|
|
53851
|
-
const creationPromise = createCacheForScope(scopeId, cacheConfig);
|
|
53871
|
+
const creationPromise = createCacheForScope(scopeId, cacheConfig, scope.logger);
|
|
53852
53872
|
pendingCreation.set(scopeId, creationPromise);
|
|
53853
53873
|
try {
|
|
53854
53874
|
const cache2 = await creationPromise;
|
|
@@ -53858,12 +53878,13 @@ async function getSkillHttpCache(scope) {
|
|
|
53858
53878
|
pendingCreation.delete(scopeId);
|
|
53859
53879
|
}
|
|
53860
53880
|
}
|
|
53861
|
-
async function createCacheForScope(scopeId, cacheConfig) {
|
|
53881
|
+
async function createCacheForScope(scopeId, cacheConfig, logger) {
|
|
53862
53882
|
try {
|
|
53863
53883
|
const { cache: cache2 } = await createSkillHttpCache({
|
|
53864
53884
|
redis: cacheConfig.redis,
|
|
53865
53885
|
ttlMs: cacheConfig.ttlMs,
|
|
53866
|
-
keyPrefix: cacheConfig.keyPrefix ?? `frontmcp:skills:${scopeId}:cache
|
|
53886
|
+
keyPrefix: cacheConfig.keyPrefix ?? `frontmcp:skills:${scopeId}:cache:`,
|
|
53887
|
+
logger
|
|
53867
53888
|
});
|
|
53868
53889
|
return cache2;
|
|
53869
53890
|
} catch (error) {
|
|
@@ -64046,6 +64067,29 @@ var init_http_request_flow = __esm({
|
|
|
64046
64067
|
}
|
|
64047
64068
|
});
|
|
64048
64069
|
|
|
64070
|
+
// libs/sdk/src/scope/server-entries.helper.ts
|
|
64071
|
+
async function registerServerEntries(providers, entries, appIds) {
|
|
64072
|
+
if (!entries.tools?.length && !entries.resources?.length) return;
|
|
64073
|
+
if (appIds.includes(serverEntryOwner.id)) throw new ReservedAppIdError(serverEntryOwner.id);
|
|
64074
|
+
const registries = [];
|
|
64075
|
+
if (entries.tools?.length) {
|
|
64076
|
+
registries.push(new ToolRegistry(providers, entries.tools, serverEntryOwner, { adopt: false }).ready);
|
|
64077
|
+
}
|
|
64078
|
+
if (entries.resources?.length) {
|
|
64079
|
+
registries.push(new ResourceRegistry(providers, entries.resources, serverEntryOwner, { adopt: false }).ready);
|
|
64080
|
+
}
|
|
64081
|
+
await Promise.all(registries);
|
|
64082
|
+
}
|
|
64083
|
+
var init_server_entries_helper = __esm({
|
|
64084
|
+
"libs/sdk/src/scope/server-entries.helper.ts"() {
|
|
64085
|
+
"use strict";
|
|
64086
|
+
init_errors();
|
|
64087
|
+
init_resource_registry();
|
|
64088
|
+
init_tool_registry();
|
|
64089
|
+
init_lineage_utils();
|
|
64090
|
+
}
|
|
64091
|
+
});
|
|
64092
|
+
|
|
64049
64093
|
// libs/sdk/src/scope/scope.instance.ts
|
|
64050
64094
|
var import_reflect_metadata25, import_auth60, import_guard9, import_utils114, SCOPE_NON_DISPATCHABLE_FLOWS, Scope;
|
|
64051
64095
|
var init_scope_instance = __esm({
|
|
@@ -64107,6 +64151,7 @@ var init_scope_instance = __esm({
|
|
|
64107
64151
|
init_http_ip_filter_flow();
|
|
64108
64152
|
init_http_request_flow();
|
|
64109
64153
|
init_optional_dependency_util();
|
|
64154
|
+
init_server_entries_helper();
|
|
64110
64155
|
SCOPE_NON_DISPATCHABLE_FLOWS = /* @__PURE__ */ new Set(["http:request"]);
|
|
64111
64156
|
Scope = class _Scope extends ScopeEntry {
|
|
64112
64157
|
id;
|
|
@@ -64538,6 +64583,11 @@ var init_scope_instance = __esm({
|
|
|
64538
64583
|
await scopeAdapters.ready;
|
|
64539
64584
|
this.onDispose(() => scopeAdapters.dispose());
|
|
64540
64585
|
}
|
|
64586
|
+
await registerServerEntries(
|
|
64587
|
+
this.scopeProviders,
|
|
64588
|
+
this.metadata,
|
|
64589
|
+
this.scopeApps.getApps().map((app) => app.id)
|
|
64590
|
+
);
|
|
64541
64591
|
this.initAuthoritiesFromConfig();
|
|
64542
64592
|
this.scopeTools = new ToolRegistry(this.scopeProviders, [], scopeRef);
|
|
64543
64593
|
this.scopeResources = new ResourceRegistry(this.scopeProviders, [], scopeRef);
|
|
@@ -67854,9 +67904,10 @@ function collectStaticEntries(config) {
|
|
|
67854
67904
|
};
|
|
67855
67905
|
const visitEntries = (owner, app) => {
|
|
67856
67906
|
const reach = app ? { app } : "every-plugin";
|
|
67907
|
+
const toolReach = app ? { app } : "every-app";
|
|
67857
67908
|
for (const item of owner.tools ?? []) {
|
|
67858
67909
|
const record = tryNormalize(() => normalizeTool(item));
|
|
67859
|
-
if (record) add(`Tool "${record.metadata.id || record.metadata.name}"`, record.metadata,
|
|
67910
|
+
if (record) add(`Tool "${record.metadata.id || record.metadata.name}"`, record.metadata, toolReach);
|
|
67860
67911
|
}
|
|
67861
67912
|
for (const item of owner.resources ?? []) {
|
|
67862
67913
|
if (tryNormalize(() => isResourceTemplate(item))) {
|
|
@@ -67889,7 +67940,10 @@ function collectStaticEntries(config) {
|
|
|
67889
67940
|
visitPlugins(owner.plugins, app);
|
|
67890
67941
|
};
|
|
67891
67942
|
const server = config;
|
|
67892
|
-
visitEntries(
|
|
67943
|
+
visitEntries(
|
|
67944
|
+
{ tools: server.tools, resources: server.resources, skills: server.skills, plugins: server.plugins },
|
|
67945
|
+
void 0
|
|
67946
|
+
);
|
|
67893
67947
|
for (const app of server.apps ?? []) {
|
|
67894
67948
|
const record = tryNormalize(() => normalizeApp(app));
|
|
67895
67949
|
if (record?.kind === "LOCAL_CLASS" /* LOCAL_CLASS */) visitEntries(record.metadata, record);
|
|
@@ -67897,6 +67951,7 @@ function collectStaticEntries(config) {
|
|
|
67897
67951
|
const everyPluginKeys = /* @__PURE__ */ new Set([...everyAppKeys, ...[...ownAppKeys.values()].flatMap((keys) => [...keys])]);
|
|
67898
67952
|
const keysReaching = (reach) => {
|
|
67899
67953
|
if (reach === "every-plugin") return everyPluginKeys;
|
|
67954
|
+
if (reach === "every-app") return everyAppKeys;
|
|
67900
67955
|
if ("agentKeys" in reach) return reach.agentKeys;
|
|
67901
67956
|
return /* @__PURE__ */ new Set([...everyAppKeys, ...ownAppKeys.get(reach.app) ?? []]);
|
|
67902
67957
|
};
|
|
@@ -70872,6 +70927,7 @@ __export(index_exports, {
|
|
|
70872
70927
|
RemoveWorkflowTool: () => RemoveWorkflowTool,
|
|
70873
70928
|
RequestContextNotAvailableError: () => RequestContextNotAvailableError,
|
|
70874
70929
|
RequiredConfigUndefinedError: () => RequiredConfigUndefinedError,
|
|
70930
|
+
ReservedAppIdError: () => ReservedAppIdError,
|
|
70875
70931
|
Resource: () => Resource,
|
|
70876
70932
|
ResourceContext: () => ResourceContext,
|
|
70877
70933
|
ResourceEntry: () => ResourceEntry,
|
|
@@ -72129,6 +72185,7 @@ var ChannelListHook = FlowHooksOf("channels:list");
|
|
|
72129
72185
|
RemoveWorkflowTool,
|
|
72130
72186
|
RequestContextNotAvailableError,
|
|
72131
72187
|
RequiredConfigUndefinedError,
|
|
72188
|
+
ReservedAppIdError,
|
|
72132
72189
|
Resource,
|
|
72133
72190
|
ResourceContext,
|
|
72134
72191
|
ResourceEntry,
|