@zuplo/runtime 6.70.40 → 6.70.42

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.
@@ -1,5 +1,13 @@
1
1
  import { z } from "zod/v4";
2
2
 
3
+ /**
4
+ * MCP tool annotations to expose downstream.
5
+ * @public
6
+ */
7
+ declare interface Annotations {
8
+ [k: string]: unknown;
9
+ }
10
+
3
11
  declare interface ApiRuntimeConfig {
4
12
  urls: UrlConfig | undefined;
5
13
  }
@@ -1038,29 +1046,100 @@ export declare class McpCapabilityFilterInboundPolicy extends InboundPolicy<Vali
1038
1046
  */
1039
1047
  export declare interface McpCapabilityFilterInboundPolicyOptions {
1040
1048
  /**
1041
- * Tool names to expose. Omit to pass through all upstream tools; use an empty array to expose no tools.
1049
+ * Tools to expose. Use a string for name-only filtering, or an object to expose and project tool description, annotations, and _meta. Omit to pass through all upstream tools; use an empty array to expose no tools.
1042
1050
  */
1043
- tools?: string[];
1051
+ tools?: (string | ToolProjection)[];
1044
1052
  /**
1045
- * Prompt names to expose. Omit to pass through all upstream prompts; use an empty array to expose no prompts.
1053
+ * Prompts to expose. Use a string for name-only filtering, or an object to expose and project prompt description and _meta. Omit to pass through all upstream prompts; use an empty array to expose no prompts.
1046
1054
  */
1047
- prompts?: string[];
1055
+ prompts?: (string | PromptProjection)[];
1048
1056
  /**
1049
- * Resource URIs to expose. Omit to pass through all upstream resources; use an empty array to expose no resources.
1057
+ * Resources to expose. Use a string for URI-only filtering, or an object to expose and project resource name, description, MIME type, and _meta. Omit to pass through all upstream resources; use an empty array to expose no resources.
1050
1058
  */
1051
- resources?: string[];
1059
+ resources?: (string | ResourceProjection)[];
1052
1060
  /**
1053
- * Resource template URI templates to expose. Omit to pass through all upstream resource templates; use an empty array to expose no resource templates.
1061
+ * Resource templates to expose. Use a string for URI-template-only filtering, or an object to expose and project template name, description, MIME type, and _meta. Omit to pass through all upstream resource templates; use an empty array to expose no resource templates.
1054
1062
  */
1055
- resourceTemplates?: string[];
1063
+ resourceTemplates?: (string | ResourceTemplateProjection)[];
1056
1064
  }
1057
1065
 
1058
1066
  declare const mcpCapabilityFilterOptionsSchema: z.ZodObject<
1059
1067
  {
1060
- tools: z.ZodOptional<z.ZodArray<z.ZodString>>;
1061
- prompts: z.ZodOptional<z.ZodArray<z.ZodString>>;
1062
- resources: z.ZodOptional<z.ZodArray<z.ZodString>>;
1063
- resourceTemplates: z.ZodOptional<z.ZodArray<z.ZodString>>;
1068
+ tools: z.ZodOptional<
1069
+ z.ZodArray<
1070
+ z.ZodUnion<
1071
+ readonly [
1072
+ z.ZodString,
1073
+ z.ZodObject<
1074
+ {
1075
+ name: z.ZodString;
1076
+ description: z.ZodOptional<z.ZodString>;
1077
+ annotations: z.ZodOptional<
1078
+ z.ZodRecord<z.ZodString, z.ZodUnknown>
1079
+ >;
1080
+ _meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1081
+ },
1082
+ z.core.$strict
1083
+ >,
1084
+ ]
1085
+ >
1086
+ >
1087
+ >;
1088
+ prompts: z.ZodOptional<
1089
+ z.ZodArray<
1090
+ z.ZodUnion<
1091
+ readonly [
1092
+ z.ZodString,
1093
+ z.ZodObject<
1094
+ {
1095
+ name: z.ZodString;
1096
+ description: z.ZodOptional<z.ZodString>;
1097
+ _meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1098
+ },
1099
+ z.core.$strict
1100
+ >,
1101
+ ]
1102
+ >
1103
+ >
1104
+ >;
1105
+ resources: z.ZodOptional<
1106
+ z.ZodArray<
1107
+ z.ZodUnion<
1108
+ readonly [
1109
+ z.ZodString,
1110
+ z.ZodObject<
1111
+ {
1112
+ uri: z.ZodString;
1113
+ name: z.ZodOptional<z.ZodString>;
1114
+ description: z.ZodOptional<z.ZodString>;
1115
+ mimeType: z.ZodOptional<z.ZodString>;
1116
+ _meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1117
+ },
1118
+ z.core.$strict
1119
+ >,
1120
+ ]
1121
+ >
1122
+ >
1123
+ >;
1124
+ resourceTemplates: z.ZodOptional<
1125
+ z.ZodArray<
1126
+ z.ZodUnion<
1127
+ readonly [
1128
+ z.ZodString,
1129
+ z.ZodObject<
1130
+ {
1131
+ uriTemplate: z.ZodString;
1132
+ name: z.ZodOptional<z.ZodString>;
1133
+ description: z.ZodOptional<z.ZodString>;
1134
+ mimeType: z.ZodOptional<z.ZodString>;
1135
+ _meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1136
+ },
1137
+ z.core.$strict
1138
+ >,
1139
+ ]
1140
+ >
1141
+ >
1142
+ >;
1064
1143
  },
1065
1144
  z.core.$strict
1066
1145
  >;
@@ -1339,6 +1418,14 @@ export declare interface McpTokenExchangeInboundPolicyOptions {
1339
1418
  };
1340
1419
  }
1341
1420
 
1421
+ /**
1422
+ * Arbitrary MCP _meta fields to expose downstream.
1423
+ * @public
1424
+ */
1425
+ declare interface Metadata {
1426
+ [k: string]: unknown;
1427
+ }
1428
+
1342
1429
  declare type Modify<T, R> = Omit<T, keyof R> & R;
1343
1430
 
1344
1431
  declare interface NotFoundOptions {
@@ -2092,6 +2179,18 @@ declare interface ProblemResponseFormat {
2092
2179
  ): Promise<Response> | Response;
2093
2180
  }
2094
2181
 
2182
+ declare interface PromptProjection {
2183
+ /**
2184
+ * Prompt name to expose.
2185
+ */
2186
+ name: string;
2187
+ /**
2188
+ * Optional downstream-facing prompt description override.
2189
+ */
2190
+ description?: string;
2191
+ _meta?: Metadata;
2192
+ }
2193
+
2095
2194
  /**
2096
2195
  * Generic type parameters for a request.
2097
2196
  * Extends RequestInitGeneric and adds query parameter typing.
@@ -2153,6 +2252,46 @@ declare type ResolveRequestQuery<
2153
2252
  declare type ResolveUserData<TUserData extends UserDataDefault | undefined> =
2154
2253
  TUserData extends UserDataDefault ? TUserData : UserDataDefault;
2155
2254
 
2255
+ declare interface ResourceProjection {
2256
+ /**
2257
+ * Resource URI to expose.
2258
+ */
2259
+ uri: string;
2260
+ /**
2261
+ * Optional downstream-facing resource name override.
2262
+ */
2263
+ name?: string;
2264
+ /**
2265
+ * Optional downstream-facing resource description override.
2266
+ */
2267
+ description?: string;
2268
+ /**
2269
+ * Optional downstream-facing resource MIME type override.
2270
+ */
2271
+ mimeType?: string;
2272
+ _meta?: Metadata;
2273
+ }
2274
+
2275
+ declare interface ResourceTemplateProjection {
2276
+ /**
2277
+ * Resource template URI template to expose.
2278
+ */
2279
+ uriTemplate: string;
2280
+ /**
2281
+ * Optional downstream-facing resource template name override.
2282
+ */
2283
+ name?: string;
2284
+ /**
2285
+ * Optional downstream-facing resource template description override.
2286
+ */
2287
+ description?: string;
2288
+ /**
2289
+ * Optional downstream-facing resource template MIME type override.
2290
+ */
2291
+ mimeType?: string;
2292
+ _meta?: Metadata;
2293
+ }
2294
+
2156
2295
  /**
2157
2296
  * Definition of responses for a route
2158
2297
  * @public
@@ -2271,6 +2410,19 @@ declare abstract class SystemRuntimePlugin extends RuntimePlugin {
2271
2410
  /* Excluded from this release type: registerRoutes */
2272
2411
  }
2273
2412
 
2413
+ declare interface ToolProjection {
2414
+ /**
2415
+ * Tool name to expose.
2416
+ */
2417
+ name: string;
2418
+ /**
2419
+ * Optional downstream-facing tool description override.
2420
+ */
2421
+ description?: string;
2422
+ annotations?: Annotations;
2423
+ _meta?: Metadata;
2424
+ }
2425
+
2274
2426
  declare type UpstreamTokenExchangePolicyOptions = z.infer<
2275
2427
  typeof upstreamTokenExchangePolicyOptionsSchema
2276
2428
  >;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@zuplo/runtime",
3
3
  "type": "module",
4
- "version": "6.70.40",
4
+ "version": "6.70.42",
5
5
  "repository": "https://github.com/zuplo/zuplo",
6
6
  "author": "Zuplo, Inc.",
7
7
  "exports": {
@@ -1,26 +0,0 @@
1
-
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Zuplo, Inc. All rights reserved.
4
- *
5
- * This software and associated documentation files (the "Software") is intended to be used
6
- * only by Zuplo customers solely to develop and test applications that will be deployed
7
- * to Zuplo hosted services. You and others in your organization may use these files on your
8
- * Development Devices solely for the above stated purpose.
9
- *
10
- * Outside of uses stated above, no license is granted for any other purpose including
11
- * without limitation the rights to use, copy, modify, merge, publish, distribute,
12
- * sublicense, host, and/or sell copies of the Software.
13
- *
14
- * The software may include third party components with separate legal notices or governed by
15
- * other agreements, as described in licenses either embedded in or accompanying the Software.
16
- *
17
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
18
- * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
19
- * PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
20
- * FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
21
- * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
22
- * DEALINGS IN THE SOFTWARE.
23
- *--------------------------------------------------------------------------------------------*/
24
-
25
- import{Ja as v,K as h,L as k,M as l,Ma as u,O as b,P as f,d as p,ja as y,ka as x}from"./chunk-FYGTTP3G.js";import{ea as r,fa as j}from"./chunk-2GVPMQ7M.js";import"./chunk-JRXZBVXH.js";import"./chunk-4SACVMDH.js";import{a}from"./chunk-ZIKV2LUM.js";j();import{createRemoteJWKSet as C,errors as d,jwtVerify as T}from"jose";var I=r.object({id_token:r.string().min(1),token_type:r.string().min(1).optional(),expires_in:r.number().optional(),access_token:r.string().min(1).optional(),refresh_token:r.string().min(1).optional(),scope:r.string().min(1).optional()}),J=r.object({error:r.string().min(1).optional(),error_description:r.string().min(1).optional(),error_uri:r.string().min(1).optional()});function P(e){let n=J.safeParse(e);if(!n.success)return{};let t={};return n.data.error!==void 0&&(t.idpError=n.data.error),n.data.error_description!==void 0&&(t.idpErrorDescription=n.data.error_description.slice(0,256)),n.data.error_uri!==void 0&&(t.idpErrorUri=n.data.error_uri.slice(0,256)),t}a(P,"readIdpErrorFields");function U(e){return e instanceof d.JWTExpired?"expired":e instanceof d.JWTClaimValidationFailed?"claim":e instanceof d.JWSSignatureVerificationFailed?"signature":e instanceof d.JWKSNoMatchingKey?"jwks_no_match":e instanceof d.JWTInvalid?"invalid":e instanceof r.ZodError?"schema":"other"}a(U,"readJwtFailureKind");var M=r.object({sub:y,nonce:r.string().min(1)}).catchall(r.unknown()),m;function L(e){return e instanceof Error&&"cause"in e?e.cause:e}a(L,"readErrorCause");function W(e){if(e!==null&&typeof e=="object"&&"extensionMembers"in e)return e.extensionMembers?.gatewayCode}a(W,"readRuntimeGatewayCode");function G(){if(!m){let e=p();m=C(new URL(e.oidc.jwksUrl),{timeoutDuration:e.browserLogin.remoteTimeoutMs})}return m}a(G,"readFederatedJwks");async function Z(e){let n=p(),t=u("tokenUrl"),w=u("clientId"),E=u("clientSecret"),F=new URL("/oauth/callback",h(e.requestUrl)).toString(),R=new URLSearchParams({grant_type:"authorization_code",code:e.code,redirect_uri:F,client_id:w,client_secret:E});try{let{response:i,json:s}=await v(t,{method:"POST",headers:{accept:"application/json","content-type":"application/x-www-form-urlencoded"},body:R},{maxResponseBytes:32768,problemCode:"browser_login_verification_failed",timeoutMs:n.browserLogin.remoteTimeoutMs,...e.context===void 0?{}:{context:e.context}});if(!i.ok){let o=P(s);throw e.context?.log.warn({event:"federated_token_exchange_failed",code:"provider_access_denied",idpHost:l(t),idpStatus:i.status,...o},"Federated browser login token exchange returned non-2xx from the identity provider"),f({code:"provider_access_denied",privateDetail:"Federated browser login token exchange failed.",cause:new Error(`IdP token exchange failed (status=${i.status}${o.idpError?` idp_error=${o.idpError}`:""}${o.idpErrorDescription?` idp_error_description=${o.idpErrorDescription}`:""})`)})}let S=I.parse(s),c;try{({payload:c}=await T(S.id_token,G(),{issuer:n.oidc.issuer,audience:w}))}catch(o){let _={};throw k(_,"error",o),e.context?.log.warn({event:"federated_id_token_verification_failed",code:"browser_login_verification_failed",failureKind:U(o),idpHost:l(t),expectedIssuer:n.oidc.issuer,..._},"Federated id_token failed jose verification"),o}if(c.nonce!==e.nonce)throw e.context?.log.warn({event:"federated_nonce_mismatch",code:"oauth_callback_mismatch",idpHost:l(t),nonceMissingFromIdToken:c.nonce===void 0},"Federated id_token nonce did not match the signed gateway state"),f("oauth_callback_mismatch","Federated browser login nonce did not match the signed gateway state.");let g=M.parse(c);return x({sub:g.sub,data:g},e.requestUrl)}catch(i){let s=b(i)??W(i);throw s!==void 0&&s!=="browser_login_verification_failed"?i:f("browser_login_verification_failed","Federated browser login callback could not be verified.",L(i))}}a(Z,"exchangeFederatedAuthorizationCode");export{Z as exchangeFederatedAuthorizationCode};
26
- //# sourceMappingURL=browser-login-idp-HWMCSYMR.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["@zuplo/runtime/mcp-gateway/v2/downstream-oauth/browser-login-idp.ts"],"mappings":"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","names":["init_v4","createRemoteJWKSet","joseErrors","jwtVerify","federatedTokenResponseSchema","external_exports","federatedTokenErrorResponseSchema","readIdpErrorFields","json","parsed","fields","__name","readJwtFailureKind","error","joseErrors","federatedIdTokenClaimsSchema","subjectIdSchema","cachedFederatedJwks","readErrorCause","readRuntimeGatewayCode","readFederatedJwks","config","getGatewayOAuthConfig","createRemoteJWKSet","exchangeFederatedAuthorizationCode","input","tokenUrl","requireBrowserLoginField","clientId","clientSecret","callbackUrl","readGatewayOAuthIssuer","body","response","fetchIdentityProviderJson","idpFields","safeHost","createGatewayRuntimeError","payload","idTokenClaims","jwtVerify","verifyError","verifyFields","addErrorLogFields","parsedIdTokenClaims","parseGatewayPrincipal","problemCode","readGatewayProblemCode"]}