@zuplo/runtime 6.70.49 → 6.70.50
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/out/esm/browser-login-idp-NPHGGA54.js +26 -0
- package/out/esm/{browser-login-idp-U763HG2Z.js.map → browser-login-idp-NPHGGA54.js.map} +1 -1
- package/out/esm/chunk-GK7ZF3JA.js +26 -0
- package/out/esm/chunk-GK7ZF3JA.js.map +1 -0
- package/out/esm/chunk-OATPYDFL.js +322 -0
- package/out/esm/chunk-OATPYDFL.js.map +1 -0
- package/out/esm/index.js +1 -1
- package/out/esm/index.js.map +1 -1
- package/out/esm/mcp-gateway/index.js +8 -8
- package/out/esm/mcp-gateway/index.js.map +1 -1
- package/out/types/index.d.ts +949 -0
- package/out/types/mcp-gateway/index.d.ts +668 -17
- package/package.json +1 -1
- package/out/esm/browser-login-idp-U763HG2Z.js +0 -26
- package/out/esm/chunk-J7JE2DD5.js +0 -318
- package/out/esm/chunk-J7JE2DD5.js.map +0 -1
- package/out/esm/chunk-MJ6GX4IA.js +0 -30
- package/out/esm/chunk-MJ6GX4IA.js.map +0 -1
- /package/out/esm/{chunk-J7JE2DD5.js.LEGAL.txt → chunk-OATPYDFL.js.LEGAL.txt} +0 -0
|
@@ -1144,31 +1144,456 @@ declare const mcpCapabilityFilterOptionsSchema: z.ZodObject<
|
|
|
1144
1144
|
z.core.$strict
|
|
1145
1145
|
>;
|
|
1146
1146
|
|
|
1147
|
+
/**
|
|
1148
|
+
* Authenticate MCP gateway requests using a gateway-issued OAuth access token,
|
|
1149
|
+
* with browser login delegated to Clerk.
|
|
1150
|
+
*
|
|
1151
|
+
* Clerk-friendly wrapper around `McpOAuthInboundPolicy`. Provide Clerk's
|
|
1152
|
+
* Frontend API URL plus the OAuth application client id and secret; the
|
|
1153
|
+
* constructor derives the Clerk issuer, JWKS URL, authorize URL, and token URL.
|
|
1154
|
+
*
|
|
1155
|
+
* @title MCP Clerk OAuth
|
|
1156
|
+
* @public
|
|
1157
|
+
* @product mcp-gateway
|
|
1158
|
+
*/
|
|
1159
|
+
export declare class McpClerkOAuthInboundPolicy extends InboundPolicy<McpClerkOAuthInboundPolicyOptions> {
|
|
1160
|
+
#private;
|
|
1161
|
+
constructor(rawOptions: unknown, policyName: string);
|
|
1162
|
+
handler(
|
|
1163
|
+
request: ZuploRequest,
|
|
1164
|
+
context: ZuploContext
|
|
1165
|
+
): Promise<ZuploRequest | Response>;
|
|
1166
|
+
}
|
|
1167
|
+
|
|
1168
|
+
/**
|
|
1169
|
+
* The options for this policy.
|
|
1170
|
+
* @public
|
|
1171
|
+
*/
|
|
1172
|
+
export declare interface McpClerkOAuthInboundPolicyOptions {
|
|
1173
|
+
/**
|
|
1174
|
+
* The Clerk Frontend API URL origin, without a trailing path, query string, or fragment.
|
|
1175
|
+
*/
|
|
1176
|
+
frontendApiUrl: string;
|
|
1177
|
+
/**
|
|
1178
|
+
* The Clerk OAuth application client_id registered for the gateway's browser login flow.
|
|
1179
|
+
*/
|
|
1180
|
+
clientId: string;
|
|
1181
|
+
/**
|
|
1182
|
+
* The Clerk OAuth application client_secret. Use $env(...) to source from a secret environment variable.
|
|
1183
|
+
*/
|
|
1184
|
+
clientSecret: string;
|
|
1185
|
+
/**
|
|
1186
|
+
* OIDC scopes requested during browser login.
|
|
1187
|
+
*/
|
|
1188
|
+
scope?: string;
|
|
1189
|
+
/**
|
|
1190
|
+
* Gateway-side OAuth token settings. The gateway issuer and advertised URLs are derived from the incoming request origin.
|
|
1191
|
+
*/
|
|
1192
|
+
gateway?: {
|
|
1193
|
+
/**
|
|
1194
|
+
* Lifetime of access tokens issued by /oauth/token.
|
|
1195
|
+
*/
|
|
1196
|
+
accessTokenTtlSeconds?: number;
|
|
1197
|
+
/**
|
|
1198
|
+
* Lifetime of refresh tokens issued by /oauth/token.
|
|
1199
|
+
*/
|
|
1200
|
+
refreshTokenTtlSeconds?: number;
|
|
1201
|
+
/**
|
|
1202
|
+
* Whether to advertise client_id_metadata_document_supported in AS metadata.
|
|
1203
|
+
*/
|
|
1204
|
+
cimdEnabled?: boolean;
|
|
1205
|
+
};
|
|
1206
|
+
/**
|
|
1207
|
+
* Optional overrides for the derived browser-login settings.
|
|
1208
|
+
*/
|
|
1209
|
+
browserLoginOverrides?: {
|
|
1210
|
+
remoteTimeoutMs?: number;
|
|
1211
|
+
stateTtlSeconds?: number;
|
|
1212
|
+
sessionTtlSeconds?: number;
|
|
1213
|
+
};
|
|
1214
|
+
}
|
|
1215
|
+
|
|
1216
|
+
/**
|
|
1217
|
+
* Authenticate MCP gateway requests using a gateway-issued OAuth access token,
|
|
1218
|
+
* with browser login delegated to Amazon Cognito.
|
|
1219
|
+
*
|
|
1220
|
+
* Cognito-friendly wrapper around `McpOAuthInboundPolicy`. Provide an AWS
|
|
1221
|
+
* region, user pool id, user pool domain, client id, and client secret; the
|
|
1222
|
+
* constructor derives the Cognito issuer, JWKS URL, authorize URL, and token
|
|
1223
|
+
* URL.
|
|
1224
|
+
*
|
|
1225
|
+
* @title MCP Amazon Cognito OAuth
|
|
1226
|
+
* @public
|
|
1227
|
+
* @product mcp-gateway
|
|
1228
|
+
*/
|
|
1229
|
+
export declare class McpCognitoOAuthInboundPolicy extends InboundPolicy<McpCognitoOAuthInboundPolicyOptions> {
|
|
1230
|
+
#private;
|
|
1231
|
+
constructor(rawOptions: unknown, policyName: string);
|
|
1232
|
+
handler(
|
|
1233
|
+
request: ZuploRequest,
|
|
1234
|
+
context: ZuploContext
|
|
1235
|
+
): Promise<ZuploRequest | Response>;
|
|
1236
|
+
}
|
|
1237
|
+
|
|
1238
|
+
/**
|
|
1239
|
+
* The options for this policy.
|
|
1240
|
+
* @public
|
|
1241
|
+
*/
|
|
1242
|
+
export declare interface McpCognitoOAuthInboundPolicyOptions {
|
|
1243
|
+
/**
|
|
1244
|
+
* The AWS region that contains the Amazon Cognito user pool.
|
|
1245
|
+
*/
|
|
1246
|
+
awsRegion: string;
|
|
1247
|
+
/**
|
|
1248
|
+
* The Amazon Cognito user pool ID.
|
|
1249
|
+
*/
|
|
1250
|
+
userPoolId: string;
|
|
1251
|
+
/**
|
|
1252
|
+
* The hosted UI domain for the user pool, without https://, a trailing slash, or a path.
|
|
1253
|
+
*/
|
|
1254
|
+
userPoolDomain: string;
|
|
1255
|
+
/**
|
|
1256
|
+
* The Cognito app client_id registered for the gateway's browser login flow.
|
|
1257
|
+
*/
|
|
1258
|
+
clientId: string;
|
|
1259
|
+
/**
|
|
1260
|
+
* The Cognito app client_secret. Use $env(...) to source from a secret environment variable.
|
|
1261
|
+
*/
|
|
1262
|
+
clientSecret: string;
|
|
1263
|
+
/**
|
|
1264
|
+
* OIDC scopes requested during browser login.
|
|
1265
|
+
*/
|
|
1266
|
+
scope?: string;
|
|
1267
|
+
/**
|
|
1268
|
+
* Gateway-side OAuth token settings. The gateway issuer and advertised URLs are derived from the incoming request origin.
|
|
1269
|
+
*/
|
|
1270
|
+
gateway?: {
|
|
1271
|
+
/**
|
|
1272
|
+
* Lifetime of access tokens issued by /oauth/token.
|
|
1273
|
+
*/
|
|
1274
|
+
accessTokenTtlSeconds?: number;
|
|
1275
|
+
/**
|
|
1276
|
+
* Lifetime of refresh tokens issued by /oauth/token.
|
|
1277
|
+
*/
|
|
1278
|
+
refreshTokenTtlSeconds?: number;
|
|
1279
|
+
/**
|
|
1280
|
+
* Whether to advertise client_id_metadata_document_supported in AS metadata.
|
|
1281
|
+
*/
|
|
1282
|
+
cimdEnabled?: boolean;
|
|
1283
|
+
};
|
|
1284
|
+
/**
|
|
1285
|
+
* Optional overrides for the derived browser-login settings.
|
|
1286
|
+
*/
|
|
1287
|
+
browserLoginOverrides?: {
|
|
1288
|
+
remoteTimeoutMs?: number;
|
|
1289
|
+
stateTtlSeconds?: number;
|
|
1290
|
+
sessionTtlSeconds?: number;
|
|
1291
|
+
};
|
|
1292
|
+
}
|
|
1293
|
+
|
|
1294
|
+
/**
|
|
1295
|
+
* Authenticate MCP gateway requests using a gateway-issued OAuth access token,
|
|
1296
|
+
* with browser login delegated to Microsoft Entra ID.
|
|
1297
|
+
*
|
|
1298
|
+
* Entra-friendly wrapper around `McpOAuthInboundPolicy`. Provide a tenant UUID,
|
|
1299
|
+
* application client id, and client secret; the constructor derives the Entra
|
|
1300
|
+
* v2 issuer, JWKS URL, authorize URL, and token URL.
|
|
1301
|
+
*
|
|
1302
|
+
* @title MCP Microsoft Entra OAuth
|
|
1303
|
+
* @public
|
|
1304
|
+
* @product mcp-gateway
|
|
1305
|
+
*/
|
|
1306
|
+
export declare class McpEntraOAuthInboundPolicy extends InboundPolicy<McpEntraOAuthInboundPolicyOptions> {
|
|
1307
|
+
#private;
|
|
1308
|
+
constructor(rawOptions: unknown, policyName: string);
|
|
1309
|
+
handler(
|
|
1310
|
+
request: ZuploRequest,
|
|
1311
|
+
context: ZuploContext
|
|
1312
|
+
): Promise<ZuploRequest | Response>;
|
|
1313
|
+
}
|
|
1314
|
+
|
|
1315
|
+
/**
|
|
1316
|
+
* The options for this policy.
|
|
1317
|
+
* @public
|
|
1318
|
+
*/
|
|
1319
|
+
export declare interface McpEntraOAuthInboundPolicyOptions {
|
|
1320
|
+
/**
|
|
1321
|
+
* The Microsoft Entra tenant UUID. Multi-tenant aliases like common and organizations are not supported by this policy yet.
|
|
1322
|
+
*/
|
|
1323
|
+
tenantId: string;
|
|
1324
|
+
/**
|
|
1325
|
+
* The Microsoft Entra application (client) ID UUID registered for the gateway's browser login flow.
|
|
1326
|
+
*/
|
|
1327
|
+
clientId: string;
|
|
1328
|
+
/**
|
|
1329
|
+
* The Microsoft Entra client secret. Use $env(...) to source from a secret environment variable.
|
|
1330
|
+
*/
|
|
1331
|
+
clientSecret: string;
|
|
1332
|
+
/**
|
|
1333
|
+
* OIDC scopes requested during browser login.
|
|
1334
|
+
*/
|
|
1335
|
+
scope?: string;
|
|
1336
|
+
/**
|
|
1337
|
+
* Gateway-side OAuth token settings. The gateway issuer and advertised URLs are derived from the incoming request origin.
|
|
1338
|
+
*/
|
|
1339
|
+
gateway?: {
|
|
1340
|
+
/**
|
|
1341
|
+
* Lifetime of access tokens issued by /oauth/token.
|
|
1342
|
+
*/
|
|
1343
|
+
accessTokenTtlSeconds?: number;
|
|
1344
|
+
/**
|
|
1345
|
+
* Lifetime of refresh tokens issued by /oauth/token.
|
|
1346
|
+
*/
|
|
1347
|
+
refreshTokenTtlSeconds?: number;
|
|
1348
|
+
/**
|
|
1349
|
+
* Whether to advertise client_id_metadata_document_supported in AS metadata.
|
|
1350
|
+
*/
|
|
1351
|
+
cimdEnabled?: boolean;
|
|
1352
|
+
};
|
|
1353
|
+
/**
|
|
1354
|
+
* Optional overrides for the derived browser-login settings.
|
|
1355
|
+
*/
|
|
1356
|
+
browserLoginOverrides?: {
|
|
1357
|
+
remoteTimeoutMs?: number;
|
|
1358
|
+
stateTtlSeconds?: number;
|
|
1359
|
+
sessionTtlSeconds?: number;
|
|
1360
|
+
};
|
|
1361
|
+
}
|
|
1362
|
+
|
|
1147
1363
|
/**
|
|
1148
1364
|
* Activates the MCP Gateway internal routes (OAuth authorization server,
|
|
1149
1365
|
* upstream connection management, well-known metadata) on the runtime router.
|
|
1150
1366
|
* The plugin is a no-op when no MCP-related policy is present.
|
|
1151
1367
|
*
|
|
1152
|
-
* Importing from `@zuplo/runtime/mcp-gateway` is the opt-in: the runtime core
|
|
1153
|
-
* does not statically reference any MCP gateway code, so unrelated projects
|
|
1154
|
-
* pay no bundle cost.
|
|
1368
|
+
* Importing from `@zuplo/runtime/mcp-gateway` is the opt-in: the runtime core
|
|
1369
|
+
* does not statically reference any MCP gateway code, so unrelated projects
|
|
1370
|
+
* pay no bundle cost.
|
|
1371
|
+
*
|
|
1372
|
+
* @public
|
|
1373
|
+
* @example
|
|
1374
|
+
* ```ts
|
|
1375
|
+
* import { McpGatewayPlugin } from "@zuplo/runtime/mcp-gateway";
|
|
1376
|
+
*
|
|
1377
|
+
* export default async function (runtime: RuntimeExtensions) {
|
|
1378
|
+
* runtime.addPlugin(new McpGatewayPlugin());
|
|
1379
|
+
* }
|
|
1380
|
+
* ```
|
|
1381
|
+
*/
|
|
1382
|
+
export declare class McpGatewayPlugin extends SystemRuntimePlugin {
|
|
1383
|
+
registerRoutes(options: {
|
|
1384
|
+
router: Router;
|
|
1385
|
+
runtimeSettings: RuntimeSettings;
|
|
1386
|
+
parsedRouteData?: ParsedRouteData;
|
|
1387
|
+
}): void;
|
|
1388
|
+
}
|
|
1389
|
+
|
|
1390
|
+
/**
|
|
1391
|
+
* Authenticate MCP gateway requests using a gateway-issued OAuth access token,
|
|
1392
|
+
* with browser login delegated to Google.
|
|
1393
|
+
*
|
|
1394
|
+
* Google-friendly wrapper around `McpOAuthInboundPolicy`. Provide `clientId`
|
|
1395
|
+
* and `clientSecret`; the constructor uses Google's fixed OIDC issuer, JWKS
|
|
1396
|
+
* URL, authorize URL, and token URL, then runs the resulting shape through the
|
|
1397
|
+
* same Zod schema as the generic policy.
|
|
1398
|
+
*
|
|
1399
|
+
* @title MCP Google OAuth
|
|
1400
|
+
* @public
|
|
1401
|
+
* @product mcp-gateway
|
|
1402
|
+
*/
|
|
1403
|
+
export declare class McpGoogleOAuthInboundPolicy extends InboundPolicy<McpGoogleOAuthInboundPolicyOptions> {
|
|
1404
|
+
#private;
|
|
1405
|
+
constructor(rawOptions: unknown, policyName: string);
|
|
1406
|
+
handler(
|
|
1407
|
+
request: ZuploRequest,
|
|
1408
|
+
context: ZuploContext
|
|
1409
|
+
): Promise<ZuploRequest | Response>;
|
|
1410
|
+
}
|
|
1411
|
+
|
|
1412
|
+
/**
|
|
1413
|
+
* The options for this policy.
|
|
1414
|
+
* @public
|
|
1415
|
+
*/
|
|
1416
|
+
export declare interface McpGoogleOAuthInboundPolicyOptions {
|
|
1417
|
+
/**
|
|
1418
|
+
* The Google OAuth client_id registered for the gateway's browser login flow. Google uses a fixed OIDC issuer and discovery endpoint.
|
|
1419
|
+
*/
|
|
1420
|
+
clientId: string;
|
|
1421
|
+
/**
|
|
1422
|
+
* The Google OAuth client_secret. Use $env(...) to source from a secret environment variable.
|
|
1423
|
+
*/
|
|
1424
|
+
clientSecret: string;
|
|
1425
|
+
/**
|
|
1426
|
+
* OIDC scopes requested during browser login.
|
|
1427
|
+
*/
|
|
1428
|
+
scope?: string;
|
|
1429
|
+
/**
|
|
1430
|
+
* Gateway-side OAuth token settings. The gateway issuer and advertised URLs are derived from the incoming request origin.
|
|
1431
|
+
*/
|
|
1432
|
+
gateway?: {
|
|
1433
|
+
/**
|
|
1434
|
+
* Lifetime of access tokens issued by /oauth/token.
|
|
1435
|
+
*/
|
|
1436
|
+
accessTokenTtlSeconds?: number;
|
|
1437
|
+
/**
|
|
1438
|
+
* Lifetime of refresh tokens issued by /oauth/token.
|
|
1439
|
+
*/
|
|
1440
|
+
refreshTokenTtlSeconds?: number;
|
|
1441
|
+
/**
|
|
1442
|
+
* Whether to advertise client_id_metadata_document_supported in AS metadata.
|
|
1443
|
+
*/
|
|
1444
|
+
cimdEnabled?: boolean;
|
|
1445
|
+
};
|
|
1446
|
+
/**
|
|
1447
|
+
* Optional overrides for the derived browser-login settings.
|
|
1448
|
+
*/
|
|
1449
|
+
browserLoginOverrides?: {
|
|
1450
|
+
remoteTimeoutMs?: number;
|
|
1451
|
+
stateTtlSeconds?: number;
|
|
1452
|
+
sessionTtlSeconds?: number;
|
|
1453
|
+
};
|
|
1454
|
+
}
|
|
1455
|
+
|
|
1456
|
+
/**
|
|
1457
|
+
* Authenticate MCP gateway requests using a gateway-issued OAuth access token,
|
|
1458
|
+
* with browser login delegated to Keycloak.
|
|
1459
|
+
*
|
|
1460
|
+
* Keycloak-friendly wrapper around `McpOAuthInboundPolicy`. Provide the
|
|
1461
|
+
* Keycloak server root, realm, client id, and client secret; the constructor
|
|
1462
|
+
* derives the realm issuer, JWKS URL, authorize URL, and token URL from
|
|
1463
|
+
* Keycloak's documented OIDC endpoint layout.
|
|
1464
|
+
*
|
|
1465
|
+
* @title MCP Keycloak OAuth
|
|
1466
|
+
* @public
|
|
1467
|
+
* @product mcp-gateway
|
|
1468
|
+
*/
|
|
1469
|
+
export declare class McpKeycloakOAuthInboundPolicy extends InboundPolicy<McpKeycloakOAuthInboundPolicyOptions> {
|
|
1470
|
+
#private;
|
|
1471
|
+
constructor(rawOptions: unknown, policyName: string);
|
|
1472
|
+
handler(
|
|
1473
|
+
request: ZuploRequest,
|
|
1474
|
+
context: ZuploContext
|
|
1475
|
+
): Promise<ZuploRequest | Response>;
|
|
1476
|
+
}
|
|
1477
|
+
|
|
1478
|
+
/**
|
|
1479
|
+
* The options for this policy.
|
|
1480
|
+
* @public
|
|
1481
|
+
*/
|
|
1482
|
+
export declare interface McpKeycloakOAuthInboundPolicyOptions {
|
|
1483
|
+
/**
|
|
1484
|
+
* The absolute URL for the Keycloak server root. Do not include /realms/{realm}; set the realm option separately.
|
|
1485
|
+
*/
|
|
1486
|
+
keycloakBaseUrl: string;
|
|
1487
|
+
/**
|
|
1488
|
+
* The Keycloak realm name.
|
|
1489
|
+
*/
|
|
1490
|
+
realm: string;
|
|
1491
|
+
/**
|
|
1492
|
+
* The Keycloak OIDC client_id registered for the gateway's browser login flow.
|
|
1493
|
+
*/
|
|
1494
|
+
clientId: string;
|
|
1495
|
+
/**
|
|
1496
|
+
* The Keycloak OIDC client_secret. Use $env(...) to source from a secret environment variable.
|
|
1497
|
+
*/
|
|
1498
|
+
clientSecret: string;
|
|
1499
|
+
/**
|
|
1500
|
+
* OIDC scopes requested during browser login.
|
|
1501
|
+
*/
|
|
1502
|
+
scope?: string;
|
|
1503
|
+
/**
|
|
1504
|
+
* Gateway-side OAuth token settings. The gateway issuer and advertised URLs are derived from the incoming request origin.
|
|
1505
|
+
*/
|
|
1506
|
+
gateway?: {
|
|
1507
|
+
/**
|
|
1508
|
+
* Lifetime of access tokens issued by /oauth/token.
|
|
1509
|
+
*/
|
|
1510
|
+
accessTokenTtlSeconds?: number;
|
|
1511
|
+
/**
|
|
1512
|
+
* Lifetime of refresh tokens issued by /oauth/token.
|
|
1513
|
+
*/
|
|
1514
|
+
refreshTokenTtlSeconds?: number;
|
|
1515
|
+
/**
|
|
1516
|
+
* Whether to advertise client_id_metadata_document_supported in AS metadata.
|
|
1517
|
+
*/
|
|
1518
|
+
cimdEnabled?: boolean;
|
|
1519
|
+
};
|
|
1520
|
+
/**
|
|
1521
|
+
* Optional overrides for the derived browser-login settings.
|
|
1522
|
+
*/
|
|
1523
|
+
browserLoginOverrides?: {
|
|
1524
|
+
remoteTimeoutMs?: number;
|
|
1525
|
+
stateTtlSeconds?: number;
|
|
1526
|
+
sessionTtlSeconds?: number;
|
|
1527
|
+
};
|
|
1528
|
+
}
|
|
1529
|
+
|
|
1530
|
+
/**
|
|
1531
|
+
* Authenticate MCP gateway requests using a gateway-issued OAuth access token,
|
|
1532
|
+
* with browser login delegated to Logto.
|
|
1533
|
+
*
|
|
1534
|
+
* Logto-friendly wrapper around `McpOAuthInboundPolicy`. Provide the Logto
|
|
1535
|
+
* tenant endpoint, client id, and client secret; the constructor derives the
|
|
1536
|
+
* Logto `/oidc` issuer, JWKS URL, authorize URL, and token URL.
|
|
1155
1537
|
*
|
|
1538
|
+
* @title MCP Logto OAuth
|
|
1156
1539
|
* @public
|
|
1157
|
-
* @
|
|
1158
|
-
* ```ts
|
|
1159
|
-
* import { McpGatewayPlugin } from "@zuplo/runtime/mcp-gateway";
|
|
1160
|
-
*
|
|
1161
|
-
* export default async function (runtime: RuntimeExtensions) {
|
|
1162
|
-
* runtime.addPlugin(new McpGatewayPlugin());
|
|
1163
|
-
* }
|
|
1164
|
-
* ```
|
|
1540
|
+
* @product mcp-gateway
|
|
1165
1541
|
*/
|
|
1166
|
-
export declare class
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1542
|
+
export declare class McpLogtoOAuthInboundPolicy extends InboundPolicy<McpLogtoOAuthInboundPolicyOptions> {
|
|
1543
|
+
#private;
|
|
1544
|
+
constructor(rawOptions: unknown, policyName: string);
|
|
1545
|
+
handler(
|
|
1546
|
+
request: ZuploRequest,
|
|
1547
|
+
context: ZuploContext
|
|
1548
|
+
): Promise<ZuploRequest | Response>;
|
|
1549
|
+
}
|
|
1550
|
+
|
|
1551
|
+
/**
|
|
1552
|
+
* The options for this policy.
|
|
1553
|
+
* @public
|
|
1554
|
+
*/
|
|
1555
|
+
export declare interface McpLogtoOAuthInboundPolicyOptions {
|
|
1556
|
+
/**
|
|
1557
|
+
* Your Logto tenant endpoint or custom domain, without the /oidc path. The OIDC issuer, JWKS URL, authorization URL, and token URL are derived from this.
|
|
1558
|
+
*/
|
|
1559
|
+
logtoEndpoint: string;
|
|
1560
|
+
/**
|
|
1561
|
+
* The Logto application client_id registered for the gateway's browser login flow.
|
|
1562
|
+
*/
|
|
1563
|
+
clientId: string;
|
|
1564
|
+
/**
|
|
1565
|
+
* The Logto application client_secret. Use $env(...) to source from a secret environment variable.
|
|
1566
|
+
*/
|
|
1567
|
+
clientSecret: string;
|
|
1568
|
+
/**
|
|
1569
|
+
* OIDC scopes requested during browser login.
|
|
1570
|
+
*/
|
|
1571
|
+
scope?: string;
|
|
1572
|
+
/**
|
|
1573
|
+
* Gateway-side OAuth token settings. The gateway issuer and advertised URLs are derived from the incoming request origin.
|
|
1574
|
+
*/
|
|
1575
|
+
gateway?: {
|
|
1576
|
+
/**
|
|
1577
|
+
* Lifetime of access tokens issued by /oauth/token.
|
|
1578
|
+
*/
|
|
1579
|
+
accessTokenTtlSeconds?: number;
|
|
1580
|
+
/**
|
|
1581
|
+
* Lifetime of refresh tokens issued by /oauth/token.
|
|
1582
|
+
*/
|
|
1583
|
+
refreshTokenTtlSeconds?: number;
|
|
1584
|
+
/**
|
|
1585
|
+
* Whether to advertise client_id_metadata_document_supported in AS metadata.
|
|
1586
|
+
*/
|
|
1587
|
+
cimdEnabled?: boolean;
|
|
1588
|
+
};
|
|
1589
|
+
/**
|
|
1590
|
+
* Optional overrides for the derived browser-login settings.
|
|
1591
|
+
*/
|
|
1592
|
+
browserLoginOverrides?: {
|
|
1593
|
+
remoteTimeoutMs?: number;
|
|
1594
|
+
stateTtlSeconds?: number;
|
|
1595
|
+
sessionTtlSeconds?: number;
|
|
1596
|
+
};
|
|
1172
1597
|
}
|
|
1173
1598
|
|
|
1174
1599
|
/**
|
|
@@ -1324,6 +1749,232 @@ declare const mcpOAuthRuntimeConfigSchema: z.ZodObject<
|
|
|
1324
1749
|
z.core.$strict
|
|
1325
1750
|
>;
|
|
1326
1751
|
|
|
1752
|
+
/**
|
|
1753
|
+
* Authenticate MCP gateway requests using a gateway-issued OAuth access token,
|
|
1754
|
+
* with browser login delegated to Okta.
|
|
1755
|
+
*
|
|
1756
|
+
* Okta-friendly wrapper around `McpOAuthInboundPolicy`. Provide an Okta org
|
|
1757
|
+
* domain, optional authorization server id, client id, and client secret; the
|
|
1758
|
+
* constructor derives the Okta issuer, JWKS URL, authorize URL, and token URL.
|
|
1759
|
+
*
|
|
1760
|
+
* @title MCP Okta OAuth
|
|
1761
|
+
* @public
|
|
1762
|
+
* @product mcp-gateway
|
|
1763
|
+
*/
|
|
1764
|
+
export declare class McpOktaOAuthInboundPolicy extends InboundPolicy<McpOktaOAuthInboundPolicyOptions> {
|
|
1765
|
+
#private;
|
|
1766
|
+
constructor(rawOptions: unknown, policyName: string);
|
|
1767
|
+
handler(
|
|
1768
|
+
request: ZuploRequest,
|
|
1769
|
+
context: ZuploContext
|
|
1770
|
+
): Promise<ZuploRequest | Response>;
|
|
1771
|
+
}
|
|
1772
|
+
|
|
1773
|
+
/**
|
|
1774
|
+
* The options for this policy.
|
|
1775
|
+
* @public
|
|
1776
|
+
*/
|
|
1777
|
+
export declare interface McpOktaOAuthInboundPolicyOptions {
|
|
1778
|
+
/**
|
|
1779
|
+
* The Okta org domain, without https://, a trailing slash, or a path.
|
|
1780
|
+
*/
|
|
1781
|
+
oktaDomain: string;
|
|
1782
|
+
/**
|
|
1783
|
+
* Optional Okta custom authorization server id. Omit this to use the org authorization server.
|
|
1784
|
+
*/
|
|
1785
|
+
authorizationServerId?: string;
|
|
1786
|
+
/**
|
|
1787
|
+
* The Okta OIDC application client_id registered for the gateway's browser login flow.
|
|
1788
|
+
*/
|
|
1789
|
+
clientId: string;
|
|
1790
|
+
/**
|
|
1791
|
+
* The Okta OIDC application client_secret. Use $env(...) to source from a secret environment variable.
|
|
1792
|
+
*/
|
|
1793
|
+
clientSecret: string;
|
|
1794
|
+
/**
|
|
1795
|
+
* OIDC scopes requested during browser login.
|
|
1796
|
+
*/
|
|
1797
|
+
scope?: string;
|
|
1798
|
+
/**
|
|
1799
|
+
* Gateway-side OAuth token settings. The gateway issuer and advertised URLs are derived from the incoming request origin.
|
|
1800
|
+
*/
|
|
1801
|
+
gateway?: {
|
|
1802
|
+
/**
|
|
1803
|
+
* Lifetime of access tokens issued by /oauth/token.
|
|
1804
|
+
*/
|
|
1805
|
+
accessTokenTtlSeconds?: number;
|
|
1806
|
+
/**
|
|
1807
|
+
* Lifetime of refresh tokens issued by /oauth/token.
|
|
1808
|
+
*/
|
|
1809
|
+
refreshTokenTtlSeconds?: number;
|
|
1810
|
+
/**
|
|
1811
|
+
* Whether to advertise client_id_metadata_document_supported in AS metadata.
|
|
1812
|
+
*/
|
|
1813
|
+
cimdEnabled?: boolean;
|
|
1814
|
+
};
|
|
1815
|
+
/**
|
|
1816
|
+
* Optional overrides for the derived browser-login settings.
|
|
1817
|
+
*/
|
|
1818
|
+
browserLoginOverrides?: {
|
|
1819
|
+
remoteTimeoutMs?: number;
|
|
1820
|
+
stateTtlSeconds?: number;
|
|
1821
|
+
sessionTtlSeconds?: number;
|
|
1822
|
+
};
|
|
1823
|
+
}
|
|
1824
|
+
|
|
1825
|
+
/**
|
|
1826
|
+
* Authenticate MCP gateway requests using a gateway-issued OAuth access token,
|
|
1827
|
+
* with browser login delegated to OneLogin.
|
|
1828
|
+
*
|
|
1829
|
+
* OneLogin-friendly wrapper around `McpOAuthInboundPolicy`. Provide the
|
|
1830
|
+
* OneLogin account subdomain, client id, and client secret; the constructor
|
|
1831
|
+
* derives OneLogin's OIDC issuer, JWKS URL, authorize URL, and token URL.
|
|
1832
|
+
*
|
|
1833
|
+
* @title MCP OneLogin OAuth
|
|
1834
|
+
* @public
|
|
1835
|
+
* @product mcp-gateway
|
|
1836
|
+
*/
|
|
1837
|
+
export declare class McpOneLoginOAuthInboundPolicy extends InboundPolicy<McpOneLoginOAuthInboundPolicyOptions> {
|
|
1838
|
+
#private;
|
|
1839
|
+
constructor(rawOptions: unknown, policyName: string);
|
|
1840
|
+
handler(
|
|
1841
|
+
request: ZuploRequest,
|
|
1842
|
+
context: ZuploContext
|
|
1843
|
+
): Promise<ZuploRequest | Response>;
|
|
1844
|
+
}
|
|
1845
|
+
|
|
1846
|
+
/**
|
|
1847
|
+
* The options for this policy.
|
|
1848
|
+
* @public
|
|
1849
|
+
*/
|
|
1850
|
+
export declare interface McpOneLoginOAuthInboundPolicyOptions {
|
|
1851
|
+
/**
|
|
1852
|
+
* The OneLogin account subdomain, without https://, .onelogin.com, a trailing slash, or a path.
|
|
1853
|
+
*/
|
|
1854
|
+
oneLoginSubdomain: string;
|
|
1855
|
+
/**
|
|
1856
|
+
* The OneLogin OIDC application client_id registered for the gateway's browser login flow.
|
|
1857
|
+
*/
|
|
1858
|
+
clientId: string;
|
|
1859
|
+
/**
|
|
1860
|
+
* The OneLogin OIDC application client_secret. Use $env(...) to source from a secret environment variable.
|
|
1861
|
+
*/
|
|
1862
|
+
clientSecret: string;
|
|
1863
|
+
/**
|
|
1864
|
+
* OIDC scopes requested during browser login.
|
|
1865
|
+
*/
|
|
1866
|
+
scope?: string;
|
|
1867
|
+
/**
|
|
1868
|
+
* Gateway-side OAuth token settings. The gateway issuer and advertised URLs are derived from the incoming request origin.
|
|
1869
|
+
*/
|
|
1870
|
+
gateway?: {
|
|
1871
|
+
/**
|
|
1872
|
+
* Lifetime of access tokens issued by /oauth/token.
|
|
1873
|
+
*/
|
|
1874
|
+
accessTokenTtlSeconds?: number;
|
|
1875
|
+
/**
|
|
1876
|
+
* Lifetime of refresh tokens issued by /oauth/token.
|
|
1877
|
+
*/
|
|
1878
|
+
refreshTokenTtlSeconds?: number;
|
|
1879
|
+
/**
|
|
1880
|
+
* Whether to advertise client_id_metadata_document_supported in AS metadata.
|
|
1881
|
+
*/
|
|
1882
|
+
cimdEnabled?: boolean;
|
|
1883
|
+
};
|
|
1884
|
+
/**
|
|
1885
|
+
* Optional overrides for the derived browser-login settings.
|
|
1886
|
+
*/
|
|
1887
|
+
browserLoginOverrides?: {
|
|
1888
|
+
remoteTimeoutMs?: number;
|
|
1889
|
+
stateTtlSeconds?: number;
|
|
1890
|
+
sessionTtlSeconds?: number;
|
|
1891
|
+
};
|
|
1892
|
+
}
|
|
1893
|
+
|
|
1894
|
+
/**
|
|
1895
|
+
* Authenticate MCP gateway requests using a gateway-issued OAuth access token,
|
|
1896
|
+
* with browser login delegated to PingOne.
|
|
1897
|
+
*
|
|
1898
|
+
* PingOne-friendly wrapper around `McpOAuthInboundPolicy`. Provide a PingOne
|
|
1899
|
+
* environment ID plus optional region, or a PingOne custom domain, with client
|
|
1900
|
+
* ID and client secret; the constructor derives the PingOne issuer, JWKS URL,
|
|
1901
|
+
* authorize URL, and token URL.
|
|
1902
|
+
*
|
|
1903
|
+
* @title MCP Ping OAuth
|
|
1904
|
+
* @public
|
|
1905
|
+
* @product mcp-gateway
|
|
1906
|
+
*/
|
|
1907
|
+
export declare class McpPingOAuthInboundPolicy extends InboundPolicy<McpPingOAuthInboundPolicyOptions> {
|
|
1908
|
+
#private;
|
|
1909
|
+
constructor(rawOptions: unknown, policyName: string);
|
|
1910
|
+
handler(
|
|
1911
|
+
request: ZuploRequest,
|
|
1912
|
+
context: ZuploContext
|
|
1913
|
+
): Promise<ZuploRequest | Response>;
|
|
1914
|
+
}
|
|
1915
|
+
|
|
1916
|
+
/**
|
|
1917
|
+
* The options for this policy.
|
|
1918
|
+
* @public
|
|
1919
|
+
*/
|
|
1920
|
+
export declare interface McpPingOAuthInboundPolicyOptions {
|
|
1921
|
+
/**
|
|
1922
|
+
* The PingOne environment ID. Required unless customDomain is set.
|
|
1923
|
+
*/
|
|
1924
|
+
environmentId?: string;
|
|
1925
|
+
/**
|
|
1926
|
+
* The PingOne geography for the environment. Ignored when customDomain is set.
|
|
1927
|
+
*/
|
|
1928
|
+
region?:
|
|
1929
|
+
| "north-america"
|
|
1930
|
+
| "canada"
|
|
1931
|
+
| "europe"
|
|
1932
|
+
| "singapore"
|
|
1933
|
+
| "australia"
|
|
1934
|
+
| "asia-pacific";
|
|
1935
|
+
/**
|
|
1936
|
+
* Optional PingOne custom domain, without https://, a trailing slash, or a path. When set, environmentId and region are not used.
|
|
1937
|
+
*/
|
|
1938
|
+
customDomain?: string;
|
|
1939
|
+
/**
|
|
1940
|
+
* The PingOne OIDC application client_id registered for the gateway's browser login flow.
|
|
1941
|
+
*/
|
|
1942
|
+
clientId: string;
|
|
1943
|
+
/**
|
|
1944
|
+
* The PingOne OIDC application client_secret. Use $env(...) to source from a secret environment variable.
|
|
1945
|
+
*/
|
|
1946
|
+
clientSecret: string;
|
|
1947
|
+
/**
|
|
1948
|
+
* OIDC scopes requested during browser login.
|
|
1949
|
+
*/
|
|
1950
|
+
scope?: string;
|
|
1951
|
+
/**
|
|
1952
|
+
* Gateway-side OAuth token settings. The gateway issuer and advertised URLs are derived from the incoming request origin.
|
|
1953
|
+
*/
|
|
1954
|
+
gateway?: {
|
|
1955
|
+
/**
|
|
1956
|
+
* Lifetime of access tokens issued by /oauth/token.
|
|
1957
|
+
*/
|
|
1958
|
+
accessTokenTtlSeconds?: number;
|
|
1959
|
+
/**
|
|
1960
|
+
* Lifetime of refresh tokens issued by /oauth/token.
|
|
1961
|
+
*/
|
|
1962
|
+
refreshTokenTtlSeconds?: number;
|
|
1963
|
+
/**
|
|
1964
|
+
* Whether to advertise client_id_metadata_document_supported in AS metadata.
|
|
1965
|
+
*/
|
|
1966
|
+
cimdEnabled?: boolean;
|
|
1967
|
+
};
|
|
1968
|
+
/**
|
|
1969
|
+
* Optional overrides for the derived browser-login settings.
|
|
1970
|
+
*/
|
|
1971
|
+
browserLoginOverrides?: {
|
|
1972
|
+
remoteTimeoutMs?: number;
|
|
1973
|
+
stateTtlSeconds?: number;
|
|
1974
|
+
sessionTtlSeconds?: number;
|
|
1975
|
+
};
|
|
1976
|
+
}
|
|
1977
|
+
|
|
1327
1978
|
export declare function McpProxyHandler(
|
|
1328
1979
|
request: ZuploRequest,
|
|
1329
1980
|
context: ZuploContext
|