@aws-cdk/aws-bedrock-agentcore-alpha 2.232.0-alpha.0 → 2.232.1-alpha.0
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/.jsii +3 -3
- package/lib/gateway/gateway-base.d.ts +5 -0
- package/lib/gateway/gateway-base.js +1 -1
- package/lib/gateway/gateway.d.ts +40 -0
- package/lib/gateway/gateway.js +1 -1
- package/lib/gateway/inbound-auth/authorizer.d.ts +13 -0
- package/lib/gateway/inbound-auth/authorizer.js +3 -3
- package/lib/gateway/outbound-auth/api-key.d.ts +39 -0
- package/lib/gateway/outbound-auth/api-key.js +1 -1
- package/lib/gateway/outbound-auth/credential-provider.d.ts +7 -0
- package/lib/gateway/outbound-auth/credential-provider.js +1 -1
- package/lib/gateway/outbound-auth/iam-role.d.ts +25 -1
- package/lib/gateway/outbound-auth/oauth.d.ts +35 -0
- package/lib/gateway/protocol.d.ts +23 -0
- package/lib/gateway/protocol.js +2 -2
- package/lib/gateway/targets/schema/api-schema.d.ts +23 -0
- package/lib/gateway/targets/schema/api-schema.js +4 -4
- package/lib/gateway/targets/schema/base-schema.d.ts +24 -1
- package/lib/gateway/targets/schema/tool-schema.d.ts +35 -0
- package/lib/gateway/targets/schema/tool-schema.js +4 -4
- package/lib/gateway/targets/target-base.js +1 -1
- package/lib/gateway/targets/target-configuration.d.ts +20 -0
- package/lib/gateway/targets/target-configuration.js +5 -5
- package/lib/gateway/targets/target.d.ts +33 -0
- package/lib/gateway/targets/target.js +1 -1
- package/lib/gateway/validation-helpers.d.ts +64 -0
- package/lib/memory/memory-strategy.d.ts +13 -0
- package/lib/memory/memory-strategy.js +1 -1
- package/lib/memory/memory.d.ts +14 -0
- package/lib/memory/memory.js +2 -2
- package/lib/memory/strategies/managed-strategy.js +1 -1
- package/lib/memory/strategies/self-managed-strategy.js +1 -1
- package/lib/network/network-configuration.d.ts +19 -0
- package/lib/network/network-configuration.js +4 -4
- package/lib/runtime/runtime-artifact.d.ts +6 -0
- package/lib/runtime/runtime-artifact.js +1 -1
- package/lib/runtime/runtime-authorizer-configuration.d.ts +6 -0
- package/lib/runtime/runtime-authorizer-configuration.js +1 -1
- package/lib/runtime/runtime-base.d.ts +6 -0
- package/lib/runtime/runtime-base.js +1 -1
- package/lib/runtime/runtime-endpoint-base.js +1 -1
- package/lib/runtime/runtime-endpoint.d.ts +15 -0
- package/lib/runtime/runtime-endpoint.js +1 -1
- package/lib/runtime/runtime.d.ts +20 -0
- package/lib/runtime/runtime.js +1 -1
- package/lib/tools/browser.d.ts +28 -0
- package/lib/tools/browser.js +2 -2
- package/lib/tools/code-interpreter.d.ts +26 -0
- package/lib/tools/code-interpreter.js +2 -2
- package/package.json +9 -9
package/.jsii
CHANGED
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
"url": "https://aws.amazon.com"
|
|
9
9
|
},
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"@aws-cdk/aws-bedrock-alpha": "2.232.
|
|
12
|
-
"aws-cdk-lib": "^2.232.
|
|
11
|
+
"@aws-cdk/aws-bedrock-alpha": "2.232.1-alpha.0",
|
|
12
|
+
"aws-cdk-lib": "^2.232.1",
|
|
13
13
|
"constructs": "^10.0.0"
|
|
14
14
|
},
|
|
15
15
|
"dependencyClosure": {
|
|
@@ -28149,6 +28149,6 @@
|
|
|
28149
28149
|
"symbolId": "lib/network/network-configuration:VpcConfigProps"
|
|
28150
28150
|
}
|
|
28151
28151
|
},
|
|
28152
|
-
"version": "2.232.
|
|
28152
|
+
"version": "2.232.1-alpha.0",
|
|
28153
28153
|
"fingerprint": "**********"
|
|
28154
28154
|
}
|
|
@@ -284,4 +284,9 @@ export declare abstract class GatewayBase extends Resource implements IGateway {
|
|
|
284
284
|
* Return a metric containing the number of requests served by each target type for this gateway.
|
|
285
285
|
*/
|
|
286
286
|
metricTargetType(targetType: string, props?: MetricOptions): Metric;
|
|
287
|
+
/**
|
|
288
|
+
* Internal method to create a metric.
|
|
289
|
+
* @internal
|
|
290
|
+
*/
|
|
291
|
+
private configureMetric;
|
|
287
292
|
}
|
|
@@ -25,7 +25,7 @@ var GatewayExceptionLevel;
|
|
|
25
25
|
* Base Class
|
|
26
26
|
*****************************************************************************/
|
|
27
27
|
class GatewayBase extends aws_cdk_lib_1.Resource {
|
|
28
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.GatewayBase", version: "2.232.
|
|
28
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.GatewayBase", version: "2.232.1-alpha.0" };
|
|
29
29
|
constructor(scope, id) {
|
|
30
30
|
super(scope, id);
|
|
31
31
|
}
|
package/lib/gateway/gateway.d.ts
CHANGED
|
@@ -340,4 +340,44 @@ export declare class Gateway extends GatewayBase {
|
|
|
340
340
|
* @see https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/gateway-target-MCPservers.html
|
|
341
341
|
*/
|
|
342
342
|
addMcpServerTarget(id: string, props: AddMcpServerTargetOptions): GatewayTarget;
|
|
343
|
+
/**
|
|
344
|
+
* Creates the service role for the gateway to assume
|
|
345
|
+
*
|
|
346
|
+
* The service role starts with minimal permissions. Additional permissions
|
|
347
|
+
* are added automatically when targets are configured:
|
|
348
|
+
* - KMS encryption: Automatically grants encrypt/decrypt permissions
|
|
349
|
+
*
|
|
350
|
+
* For other target types, manually grant permissions using standard CDK grant methods:
|
|
351
|
+
* @internal
|
|
352
|
+
*/
|
|
353
|
+
private createGatewayRole;
|
|
354
|
+
/**
|
|
355
|
+
* Validates the gateway name format
|
|
356
|
+
* Pattern: ^([0-9a-zA-Z][-]?){1,100}$
|
|
357
|
+
* Max length: 48 characters
|
|
358
|
+
* @param name The gateway name to validate
|
|
359
|
+
* @throws Error if the name is invalid
|
|
360
|
+
* @internal
|
|
361
|
+
*/
|
|
362
|
+
private validateGatewayName;
|
|
363
|
+
/**
|
|
364
|
+
* Validates the description format
|
|
365
|
+
* Max length: 200 characters
|
|
366
|
+
* @param description The description to validate
|
|
367
|
+
* @throws Error if validation fails
|
|
368
|
+
* @internal
|
|
369
|
+
*/
|
|
370
|
+
private validateDescription;
|
|
371
|
+
/**
|
|
372
|
+
* Creates a default Cognito authorizer for the gateway
|
|
373
|
+
* Provisions a Cognito User Pool and configures JWT authentication
|
|
374
|
+
* @internal
|
|
375
|
+
*/
|
|
376
|
+
private createDefaultCognitoAuthorizerConfig;
|
|
377
|
+
/**
|
|
378
|
+
* Creates a default MCP protocol configuration for the gateway
|
|
379
|
+
* Provides sensible defaults for MCP protocol settings
|
|
380
|
+
* @internal
|
|
381
|
+
*/
|
|
382
|
+
private createDefaultMcpProtocolConfiguration;
|
|
343
383
|
}
|
package/lib/gateway/gateway.js
CHANGED
|
@@ -87,7 +87,7 @@ let Gateway = (() => {
|
|
|
87
87
|
Gateway = _classThis = _classDescriptor.value;
|
|
88
88
|
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
89
89
|
}
|
|
90
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.Gateway", version: "2.232.
|
|
90
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.Gateway", version: "2.232.1-alpha.0" };
|
|
91
91
|
/** Uniquely identifies this class. */
|
|
92
92
|
static PROPERTY_INJECTION_ID = '@aws-cdk.aws-bedrock-agentcore-alpha.Gateway';
|
|
93
93
|
/**
|
|
@@ -19,6 +19,11 @@ export interface IGatewayAuthorizerConfig {
|
|
|
19
19
|
* The authorizer type
|
|
20
20
|
*/
|
|
21
21
|
readonly authorizerType: GatewayAuthorizerType;
|
|
22
|
+
/**
|
|
23
|
+
* The authorizer configuration in CFN format
|
|
24
|
+
* @internal
|
|
25
|
+
*/
|
|
26
|
+
_render(): any;
|
|
22
27
|
}
|
|
23
28
|
/******************************************************************************
|
|
24
29
|
* Custom JWT
|
|
@@ -55,6 +60,10 @@ export declare class CustomJwtAuthorizer implements IGatewayAuthorizerConfig {
|
|
|
55
60
|
private readonly allowedAudience?;
|
|
56
61
|
private readonly allowedClients?;
|
|
57
62
|
constructor(config: CustomJwtConfiguration);
|
|
63
|
+
/**
|
|
64
|
+
* @internal
|
|
65
|
+
*/
|
|
66
|
+
_render(): any;
|
|
58
67
|
}
|
|
59
68
|
/******************************************************************************
|
|
60
69
|
* AWS IAM
|
|
@@ -65,6 +74,10 @@ export declare class CustomJwtAuthorizer implements IGatewayAuthorizerConfig {
|
|
|
65
74
|
*/
|
|
66
75
|
export declare class IamAuthorizer implements IGatewayAuthorizerConfig {
|
|
67
76
|
readonly authorizerType = GatewayAuthorizerType.AWS_IAM;
|
|
77
|
+
/**
|
|
78
|
+
* @internal
|
|
79
|
+
*/
|
|
80
|
+
_render(): any;
|
|
68
81
|
}
|
|
69
82
|
/******************************************************************************
|
|
70
83
|
* Factory
|
|
@@ -21,7 +21,7 @@ var GatewayAuthorizerType;
|
|
|
21
21
|
* Custom JWT authorizer configuration implementation
|
|
22
22
|
*/
|
|
23
23
|
class CustomJwtAuthorizer {
|
|
24
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.CustomJwtAuthorizer", version: "2.232.
|
|
24
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.CustomJwtAuthorizer", version: "2.232.1-alpha.0" };
|
|
25
25
|
authorizerType = GatewayAuthorizerType.CUSTOM_JWT;
|
|
26
26
|
discoveryUrl;
|
|
27
27
|
allowedAudience;
|
|
@@ -62,7 +62,7 @@ exports.CustomJwtAuthorizer = CustomJwtAuthorizer;
|
|
|
62
62
|
*
|
|
63
63
|
*/
|
|
64
64
|
class IamAuthorizer {
|
|
65
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.IamAuthorizer", version: "2.232.
|
|
65
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.IamAuthorizer", version: "2.232.1-alpha.0" };
|
|
66
66
|
authorizerType = GatewayAuthorizerType.AWS_IAM;
|
|
67
67
|
/**
|
|
68
68
|
* @internal
|
|
@@ -78,7 +78,7 @@ exports.IamAuthorizer = IamAuthorizer;
|
|
|
78
78
|
* Factory class for creating Gateway Authorizers
|
|
79
79
|
*/
|
|
80
80
|
class GatewayAuthorizer {
|
|
81
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.GatewayAuthorizer", version: "2.232.
|
|
81
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.GatewayAuthorizer", version: "2.232.1-alpha.0" };
|
|
82
82
|
/**
|
|
83
83
|
* AWS IAM authorizer instance
|
|
84
84
|
*/
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { Grant, IRole } from 'aws-cdk-lib/aws-iam';
|
|
2
|
+
import { CredentialProviderType, ICredentialProviderConfig } from './credential-provider';
|
|
1
3
|
/******************************************************************************
|
|
2
4
|
* API KEY
|
|
3
5
|
*****************************************************************************/
|
|
@@ -22,6 +24,14 @@ export interface ApiKeyAdditionalConfiguration {
|
|
|
22
24
|
*/
|
|
23
25
|
readonly credentialPrefix?: string;
|
|
24
26
|
}
|
|
27
|
+
/**
|
|
28
|
+
* API Key credential location type
|
|
29
|
+
* @internal
|
|
30
|
+
*/
|
|
31
|
+
export declare enum ApiKeyCredentialLocationType {
|
|
32
|
+
HEADER = "HEADER",
|
|
33
|
+
QUERY_PARAMETER = "QUERY_PARAMETER"
|
|
34
|
+
}
|
|
25
35
|
/**
|
|
26
36
|
* API Key location within the request
|
|
27
37
|
*/
|
|
@@ -76,3 +86,32 @@ export interface ApiKeyCredentialProviderProps {
|
|
|
76
86
|
*/
|
|
77
87
|
readonly credentialLocation?: ApiKeyCredentialLocation;
|
|
78
88
|
}
|
|
89
|
+
/**
|
|
90
|
+
* API Key credential provider configuration implementation
|
|
91
|
+
* Can be used with OpenAPI targets
|
|
92
|
+
* @internal
|
|
93
|
+
*/
|
|
94
|
+
export declare class ApiKeyCredentialProviderConfiguration implements ICredentialProviderConfig {
|
|
95
|
+
readonly credentialProviderType = CredentialProviderType.API_KEY;
|
|
96
|
+
/**
|
|
97
|
+
* The ARN of the API key provider
|
|
98
|
+
*/
|
|
99
|
+
readonly providerArn: string;
|
|
100
|
+
/**
|
|
101
|
+
* The ARN of the Secrets Manager secret
|
|
102
|
+
*/
|
|
103
|
+
readonly secretArn: string;
|
|
104
|
+
/**
|
|
105
|
+
* The location configuration for the API key credential
|
|
106
|
+
*/
|
|
107
|
+
readonly credentialLocation: ApiKeyCredentialLocation;
|
|
108
|
+
constructor(configuration: ApiKeyCredentialProviderProps);
|
|
109
|
+
/**
|
|
110
|
+
* Grant the needed permissions to the role for API key authentication
|
|
111
|
+
*/
|
|
112
|
+
grantNeededPermissionsToRole(role: IRole): Grant | undefined;
|
|
113
|
+
/**
|
|
114
|
+
* @internal
|
|
115
|
+
*/
|
|
116
|
+
_render(): any;
|
|
117
|
+
}
|
|
@@ -19,7 +19,7 @@ var ApiKeyCredentialLocationType;
|
|
|
19
19
|
* API Key location within the request
|
|
20
20
|
*/
|
|
21
21
|
class ApiKeyCredentialLocation {
|
|
22
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.ApiKeyCredentialLocation", version: "2.232.
|
|
22
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.ApiKeyCredentialLocation", version: "2.232.1-alpha.0" };
|
|
23
23
|
/**
|
|
24
24
|
* Create a header-based API key credential location
|
|
25
25
|
* @param config - Optional configuration for the credential location
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { IResolvable } from 'aws-cdk-lib';
|
|
2
|
+
import { CfnGatewayTarget } from 'aws-cdk-lib/aws-bedrockagentcore';
|
|
1
3
|
import { Grant, IRole } from 'aws-cdk-lib/aws-iam';
|
|
2
4
|
import { ApiKeyCredentialProviderProps } from './api-key';
|
|
3
5
|
import { OAuthConfiguration } from './oauth';
|
|
@@ -32,6 +34,11 @@ export interface ICredentialProviderConfig {
|
|
|
32
34
|
* The credential provider type
|
|
33
35
|
*/
|
|
34
36
|
readonly credentialProviderType: CredentialProviderType;
|
|
37
|
+
/**
|
|
38
|
+
* Renders as CFN Property
|
|
39
|
+
* @internal
|
|
40
|
+
*/
|
|
41
|
+
_render(): CfnGatewayTarget.CredentialProviderConfigurationProperty | IResolvable;
|
|
35
42
|
/**
|
|
36
43
|
* Grant the role the permissions
|
|
37
44
|
*/
|
|
@@ -31,7 +31,7 @@ var CredentialProviderType;
|
|
|
31
31
|
* Factory class for creating different Gateway Credential Providers
|
|
32
32
|
*/
|
|
33
33
|
class GatewayCredentialProvider {
|
|
34
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.GatewayCredentialProvider", version: "2.232.
|
|
34
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.GatewayCredentialProvider", version: "2.232.1-alpha.0" };
|
|
35
35
|
/**
|
|
36
36
|
* Create an API key credential provider from Identity ARN
|
|
37
37
|
* Use this method when you have the Identity ARN as a string
|
|
@@ -1,4 +1,28 @@
|
|
|
1
1
|
/******************************************************************************
|
|
2
2
|
* IAM Role
|
|
3
3
|
*****************************************************************************/
|
|
4
|
-
|
|
4
|
+
import { Grant, IRole } from 'aws-cdk-lib/aws-iam';
|
|
5
|
+
import { CredentialProviderType, ICredentialProviderConfig } from './credential-provider';
|
|
6
|
+
/**
|
|
7
|
+
* Gateway IAM Role credential provider configuration implementation
|
|
8
|
+
* Can be used with Lambda and Smithy targets
|
|
9
|
+
* @internal
|
|
10
|
+
*/
|
|
11
|
+
export declare class GatewayIamRoleCredentialProviderConfig implements ICredentialProviderConfig {
|
|
12
|
+
readonly credentialProviderType = CredentialProviderType.GATEWAY_IAM_ROLE;
|
|
13
|
+
constructor();
|
|
14
|
+
/**
|
|
15
|
+
* @internal
|
|
16
|
+
*/
|
|
17
|
+
_render(): any;
|
|
18
|
+
/**
|
|
19
|
+
* No-op for IAM role authentication - no additional permissions are required.
|
|
20
|
+
* When using IAM role authentication for outbound calls, the gateway uses its own execution
|
|
21
|
+
* role to authenticate with the target endpoint. Unlike API Key and OAuth credential providers
|
|
22
|
+
* which require permissions to access external credential stores (Secrets Manager, Token Vault),
|
|
23
|
+
* IAM role authentication leverages AWS IAM's native authentication without additional resources.
|
|
24
|
+
* @param role The gateway's execution role (unused - no credential provider permissions needed)
|
|
25
|
+
* @returns undefined - no additional credential provider permissions to grant
|
|
26
|
+
*/
|
|
27
|
+
grantNeededPermissionsToRole(role: IRole): Grant | undefined;
|
|
28
|
+
}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { Grant, IRole } from 'aws-cdk-lib/aws-iam';
|
|
2
|
+
import { CredentialProviderType, ICredentialProviderConfig } from './credential-provider';
|
|
1
3
|
/******************************************************************************
|
|
2
4
|
* OAuth
|
|
3
5
|
*****************************************************************************/
|
|
@@ -43,3 +45,36 @@ export interface OAuthConfiguration {
|
|
|
43
45
|
*/
|
|
44
46
|
readonly customParameters?: Record<string, string>;
|
|
45
47
|
}
|
|
48
|
+
/**
|
|
49
|
+
* OAuth credential provider configuration implementation
|
|
50
|
+
* Can be used with OpenAPI targets
|
|
51
|
+
* @internal
|
|
52
|
+
*/
|
|
53
|
+
export declare class OAuthCredentialProviderConfiguration implements ICredentialProviderConfig {
|
|
54
|
+
readonly credentialProviderType = CredentialProviderType.OAUTH;
|
|
55
|
+
/**
|
|
56
|
+
* The ARN of the OAuth provider
|
|
57
|
+
*/
|
|
58
|
+
readonly providerArn: string;
|
|
59
|
+
/**
|
|
60
|
+
* The ARN of the Secrets Manager secret
|
|
61
|
+
*/
|
|
62
|
+
readonly secretArn: string;
|
|
63
|
+
/**
|
|
64
|
+
* The OAuth scopes to request
|
|
65
|
+
*/
|
|
66
|
+
readonly scopes: string[];
|
|
67
|
+
/**
|
|
68
|
+
* Custom parameters for the OAuth flow
|
|
69
|
+
*/
|
|
70
|
+
readonly customParameters?: Record<string, string>;
|
|
71
|
+
constructor(configuration: OAuthConfiguration);
|
|
72
|
+
/**
|
|
73
|
+
* Grant the needed permissions to the role for OAuth authentication
|
|
74
|
+
*/
|
|
75
|
+
grantNeededPermissionsToRole(role: IRole): Grant | undefined;
|
|
76
|
+
/**
|
|
77
|
+
* @internal
|
|
78
|
+
*/
|
|
79
|
+
_render(): any;
|
|
80
|
+
}
|
|
@@ -1,3 +1,17 @@
|
|
|
1
|
+
import { CfnGateway } from 'aws-cdk-lib/aws-bedrockagentcore';
|
|
2
|
+
/******************************************************************************
|
|
3
|
+
* Enums
|
|
4
|
+
*****************************************************************************/
|
|
5
|
+
/**
|
|
6
|
+
* The type of protocols
|
|
7
|
+
* @internal
|
|
8
|
+
*/
|
|
9
|
+
export declare enum GatewayProtocolType {
|
|
10
|
+
/**
|
|
11
|
+
* MCP (Model Context Protocol) protocol type.
|
|
12
|
+
*/
|
|
13
|
+
MCP = "MCP"
|
|
14
|
+
}
|
|
1
15
|
/******************************************************************************
|
|
2
16
|
* Protocol Configuration
|
|
3
17
|
*****************************************************************************/
|
|
@@ -9,6 +23,11 @@ export interface IGatewayProtocolConfig {
|
|
|
9
23
|
* The protocol type
|
|
10
24
|
*/
|
|
11
25
|
readonly protocolType: string;
|
|
26
|
+
/**
|
|
27
|
+
* Returns internal info as the CFN protocol configuration object
|
|
28
|
+
* @internal
|
|
29
|
+
*/
|
|
30
|
+
_render(): any;
|
|
12
31
|
}
|
|
13
32
|
/**
|
|
14
33
|
* Factory class for instantiating Gateway Protocols
|
|
@@ -95,4 +114,8 @@ export declare class McpProtocolConfiguration implements IGatewayProtocolConfig
|
|
|
95
114
|
*/
|
|
96
115
|
readonly instructions?: string;
|
|
97
116
|
constructor(props?: McpConfiguration);
|
|
117
|
+
/**
|
|
118
|
+
* @internal
|
|
119
|
+
*/
|
|
120
|
+
_render(): CfnGateway.GatewayProtocolConfigurationProperty;
|
|
98
121
|
}
|
package/lib/gateway/protocol.js
CHANGED
|
@@ -21,7 +21,7 @@ var GatewayProtocolType;
|
|
|
21
21
|
* Factory class for instantiating Gateway Protocols
|
|
22
22
|
*/
|
|
23
23
|
class GatewayProtocol {
|
|
24
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.GatewayProtocol", version: "2.232.
|
|
24
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.GatewayProtocol", version: "2.232.1-alpha.0" };
|
|
25
25
|
/**
|
|
26
26
|
* Create an MCP protocol configuration
|
|
27
27
|
* @param props - Optional MCP configuration properties
|
|
@@ -75,7 +75,7 @@ var McpGatewaySearchType;
|
|
|
75
75
|
* MCP (Model Context Protocol) configuration implementation
|
|
76
76
|
*/
|
|
77
77
|
class McpProtocolConfiguration {
|
|
78
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.McpProtocolConfiguration", version: "2.232.
|
|
78
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.McpProtocolConfiguration", version: "2.232.1-alpha.0" };
|
|
79
79
|
protocolType;
|
|
80
80
|
/**
|
|
81
81
|
* The supported MCP protocol versions
|
|
@@ -42,6 +42,11 @@ export declare abstract class ApiSchema extends TargetSchema {
|
|
|
42
42
|
*/
|
|
43
43
|
readonly bucketOwnerAccountId?: string;
|
|
44
44
|
protected constructor(s3File?: Location, bucketOwnerAccountId?: string, inlineSchema?: string);
|
|
45
|
+
/**
|
|
46
|
+
* Format as CFN properties
|
|
47
|
+
* @internal This is an internal core function and should not be called directly.
|
|
48
|
+
*/
|
|
49
|
+
abstract _render(): any;
|
|
45
50
|
}
|
|
46
51
|
/**
|
|
47
52
|
* API Schema from a local asset.
|
|
@@ -54,6 +59,11 @@ export declare class AssetApiSchema extends ApiSchema {
|
|
|
54
59
|
private readonly options;
|
|
55
60
|
private asset?;
|
|
56
61
|
constructor(path: string, options?: s3_assets.AssetOptions);
|
|
62
|
+
/**
|
|
63
|
+
* Gets the file path for internal validation purposes
|
|
64
|
+
* @internal
|
|
65
|
+
*/
|
|
66
|
+
_getFilePath(): string;
|
|
57
67
|
/**
|
|
58
68
|
* Binds this API schema to a construct scope.
|
|
59
69
|
* This method initializes the S3 asset if it hasn't been initialized yet.
|
|
@@ -62,6 +72,11 @@ export declare class AssetApiSchema extends ApiSchema {
|
|
|
62
72
|
* @param scope - The construct scope to bind to
|
|
63
73
|
*/
|
|
64
74
|
bind(scope: Construct): void;
|
|
75
|
+
/**
|
|
76
|
+
* Format as CFN properties
|
|
77
|
+
* @internal This is an internal core function and should not be called directly.
|
|
78
|
+
*/
|
|
79
|
+
_render(): any;
|
|
65
80
|
grantPermissionsToRole(role: IRole): void;
|
|
66
81
|
}
|
|
67
82
|
/**
|
|
@@ -72,6 +87,10 @@ export declare class AssetApiSchema extends ApiSchema {
|
|
|
72
87
|
export declare class InlineApiSchema extends ApiSchema {
|
|
73
88
|
private readonly schema;
|
|
74
89
|
constructor(schema: string);
|
|
90
|
+
/**
|
|
91
|
+
* @internal This is an internal core function and should not be called directly.
|
|
92
|
+
*/
|
|
93
|
+
_render(): any;
|
|
75
94
|
grantPermissionsToRole(_role: IRole): void;
|
|
76
95
|
bind(scope: Construct): void;
|
|
77
96
|
}
|
|
@@ -82,6 +101,10 @@ export declare class S3ApiSchema extends ApiSchema {
|
|
|
82
101
|
private readonly location;
|
|
83
102
|
readonly bucketOwnerAccountId?: string | undefined;
|
|
84
103
|
constructor(location: Location, bucketOwnerAccountId?: string | undefined);
|
|
104
|
+
/**
|
|
105
|
+
* @internal This is an internal core function and should not be called directly.
|
|
106
|
+
*/
|
|
107
|
+
_render(): any;
|
|
85
108
|
bind(scope: Construct): void;
|
|
86
109
|
grantPermissionsToRole(role: IRole): void;
|
|
87
110
|
}
|
|
@@ -24,7 +24,7 @@ class ApiSchemaError extends Error {
|
|
|
24
24
|
* Represents the concept of an API Schema for a Gateway Target.
|
|
25
25
|
*/
|
|
26
26
|
class ApiSchema extends base_schema_1.TargetSchema {
|
|
27
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.ApiSchema", version: "2.232.
|
|
27
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.ApiSchema", version: "2.232.1-alpha.0" };
|
|
28
28
|
/**
|
|
29
29
|
* Creates an API Schema from a local file.
|
|
30
30
|
* @param path - the path to the local file containing the OpenAPI schema for the action group
|
|
@@ -82,7 +82,7 @@ exports.ApiSchema = ApiSchema;
|
|
|
82
82
|
class AssetApiSchema extends ApiSchema {
|
|
83
83
|
path;
|
|
84
84
|
options;
|
|
85
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.AssetApiSchema", version: "2.232.
|
|
85
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.AssetApiSchema", version: "2.232.1-alpha.0" };
|
|
86
86
|
asset;
|
|
87
87
|
constructor(path, options = {}) {
|
|
88
88
|
super();
|
|
@@ -144,7 +144,7 @@ exports.AssetApiSchema = AssetApiSchema;
|
|
|
144
144
|
*/
|
|
145
145
|
class InlineApiSchema extends ApiSchema {
|
|
146
146
|
schema;
|
|
147
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.InlineApiSchema", version: "2.232.
|
|
147
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.InlineApiSchema", version: "2.232.1-alpha.0" };
|
|
148
148
|
constructor(schema) {
|
|
149
149
|
super(undefined, undefined, schema);
|
|
150
150
|
this.schema = schema;
|
|
@@ -174,7 +174,7 @@ exports.InlineApiSchema = InlineApiSchema;
|
|
|
174
174
|
class S3ApiSchema extends ApiSchema {
|
|
175
175
|
location;
|
|
176
176
|
bucketOwnerAccountId;
|
|
177
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.S3ApiSchema", version: "2.232.
|
|
177
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.S3ApiSchema", version: "2.232.1-alpha.0" };
|
|
178
178
|
constructor(location, bucketOwnerAccountId) {
|
|
179
179
|
super(location, bucketOwnerAccountId, undefined);
|
|
180
180
|
this.location = location;
|
|
@@ -1 +1,24 @@
|
|
|
1
|
-
|
|
1
|
+
import { IRole } from 'aws-cdk-lib/aws-iam';
|
|
2
|
+
import { Construct } from 'constructs';
|
|
3
|
+
/**
|
|
4
|
+
* Base abstract class for all schema types used in Bedrock AgentCore Gateway Targets.
|
|
5
|
+
* This provides a common interface for both API schemas and tool schemas.
|
|
6
|
+
* @internal
|
|
7
|
+
*/
|
|
8
|
+
export declare abstract class TargetSchema {
|
|
9
|
+
/**
|
|
10
|
+
* Format as CFN properties
|
|
11
|
+
*
|
|
12
|
+
* @internal This is an internal core function and should not be called directly.
|
|
13
|
+
*/
|
|
14
|
+
abstract _render(): any;
|
|
15
|
+
/**
|
|
16
|
+
* Bind the schema to a construct
|
|
17
|
+
*/
|
|
18
|
+
abstract bind(scope: Construct): void;
|
|
19
|
+
/**
|
|
20
|
+
* Grant permissions to the role
|
|
21
|
+
*
|
|
22
|
+
*/
|
|
23
|
+
abstract grantPermissionsToRole(role: IRole): void;
|
|
24
|
+
}
|
|
@@ -3,6 +3,23 @@ import { IBucket, Location } from 'aws-cdk-lib/aws-s3';
|
|
|
3
3
|
import * as s3_assets from 'aws-cdk-lib/aws-s3-assets';
|
|
4
4
|
import { Construct } from 'constructs';
|
|
5
5
|
import { TargetSchema } from './base-schema';
|
|
6
|
+
/******************************************************************************
|
|
7
|
+
* Tool Schema Configuration
|
|
8
|
+
*****************************************************************************/
|
|
9
|
+
/**
|
|
10
|
+
* Abstract interface for tool schema configuration
|
|
11
|
+
* @internal
|
|
12
|
+
*/
|
|
13
|
+
export interface IToolSchemaConfiguration {
|
|
14
|
+
/**
|
|
15
|
+
* The tool schema configuration type
|
|
16
|
+
*/
|
|
17
|
+
readonly toolSchemaType: string;
|
|
18
|
+
/**
|
|
19
|
+
* The tool schema configuration object
|
|
20
|
+
*/
|
|
21
|
+
readonly configuration: any;
|
|
22
|
+
}
|
|
6
23
|
/**
|
|
7
24
|
* Schema definition types
|
|
8
25
|
*/
|
|
@@ -119,6 +136,11 @@ export declare abstract class ToolSchema extends TargetSchema {
|
|
|
119
136
|
*/
|
|
120
137
|
readonly bucketOwnerAccountId?: string;
|
|
121
138
|
protected constructor(s3File?: Location, bucketOwnerAccountId?: string, inlineSchema?: ToolDefinition[]);
|
|
139
|
+
/**
|
|
140
|
+
* Format as CFN properties
|
|
141
|
+
* @internal This is an internal core function and should not be called directly.
|
|
142
|
+
*/
|
|
143
|
+
abstract _render(): any;
|
|
122
144
|
}
|
|
123
145
|
/**
|
|
124
146
|
* Tool Schema from a local asset.
|
|
@@ -139,6 +161,11 @@ export declare class AssetToolSchema extends ToolSchema {
|
|
|
139
161
|
* @param scope - The construct scope to bind to
|
|
140
162
|
*/
|
|
141
163
|
bind(scope: Construct): void;
|
|
164
|
+
/**
|
|
165
|
+
* Format as CFN properties
|
|
166
|
+
* @internal This is an internal core function and should not be called directly.
|
|
167
|
+
*/
|
|
168
|
+
_render(): any;
|
|
142
169
|
grantPermissionsToRole(role: IRole): void;
|
|
143
170
|
}
|
|
144
171
|
/**
|
|
@@ -148,6 +175,10 @@ export declare class AssetToolSchema extends ToolSchema {
|
|
|
148
175
|
export declare class InlineToolSchema extends ToolSchema {
|
|
149
176
|
private readonly schema;
|
|
150
177
|
constructor(schema: ToolDefinition[]);
|
|
178
|
+
/**
|
|
179
|
+
* @internal This is an internal core function and should not be called directly.
|
|
180
|
+
*/
|
|
181
|
+
_render(): any;
|
|
151
182
|
bind(scope: Construct): void;
|
|
152
183
|
grantPermissionsToRole(_role: IRole): void;
|
|
153
184
|
}
|
|
@@ -158,6 +189,10 @@ export declare class S3ToolSchema extends ToolSchema {
|
|
|
158
189
|
private readonly location;
|
|
159
190
|
readonly bucketOwnerAccountId?: string | undefined;
|
|
160
191
|
constructor(location: Location, bucketOwnerAccountId?: string | undefined);
|
|
192
|
+
/**
|
|
193
|
+
* @internal This is an internal core function and should not be called directly.
|
|
194
|
+
*/
|
|
195
|
+
_render(): any;
|
|
161
196
|
bind(scope: Construct): void;
|
|
162
197
|
grantPermissionsToRole(role: IRole): void;
|
|
163
198
|
}
|
|
@@ -39,7 +39,7 @@ class ToolSchemaError extends Error {
|
|
|
39
39
|
* TOOL SCHEMA CLASS
|
|
40
40
|
*****************************************************************************/
|
|
41
41
|
class ToolSchema extends base_schema_1.TargetSchema {
|
|
42
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.ToolSchema", version: "2.232.
|
|
42
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.ToolSchema", version: "2.232.1-alpha.0" };
|
|
43
43
|
/**
|
|
44
44
|
* Creates a tool Schema from a local file.
|
|
45
45
|
* @param path - the path to the local file containing the function schema for the tool
|
|
@@ -97,7 +97,7 @@ exports.ToolSchema = ToolSchema;
|
|
|
97
97
|
class AssetToolSchema extends ToolSchema {
|
|
98
98
|
path;
|
|
99
99
|
options;
|
|
100
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.AssetToolSchema", version: "2.232.
|
|
100
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.AssetToolSchema", version: "2.232.1-alpha.0" };
|
|
101
101
|
asset;
|
|
102
102
|
constructor(path, options = {}) {
|
|
103
103
|
super();
|
|
@@ -150,7 +150,7 @@ exports.AssetToolSchema = AssetToolSchema;
|
|
|
150
150
|
*/
|
|
151
151
|
class InlineToolSchema extends ToolSchema {
|
|
152
152
|
schema;
|
|
153
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.InlineToolSchema", version: "2.232.
|
|
153
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.InlineToolSchema", version: "2.232.1-alpha.0" };
|
|
154
154
|
constructor(schema) {
|
|
155
155
|
super(undefined, undefined, schema);
|
|
156
156
|
this.schema = schema;
|
|
@@ -180,7 +180,7 @@ exports.InlineToolSchema = InlineToolSchema;
|
|
|
180
180
|
class S3ToolSchema extends ToolSchema {
|
|
181
181
|
location;
|
|
182
182
|
bucketOwnerAccountId;
|
|
183
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.S3ToolSchema", version: "2.232.
|
|
183
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.S3ToolSchema", version: "2.232.1-alpha.0" };
|
|
184
184
|
constructor(location, bucketOwnerAccountId) {
|
|
185
185
|
super(location, bucketOwnerAccountId, undefined);
|
|
186
186
|
this.location = location;
|
|
@@ -39,7 +39,7 @@ var McpTargetType;
|
|
|
39
39
|
* permission management and property definitions.
|
|
40
40
|
*/
|
|
41
41
|
class GatewayTargetBase extends aws_cdk_lib_1.Resource {
|
|
42
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.GatewayTargetBase", version: "2.232.
|
|
42
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.GatewayTargetBase", version: "2.232.1-alpha.0" };
|
|
43
43
|
/**
|
|
44
44
|
* Grants IAM actions to the IAM Principal
|
|
45
45
|
*
|
|
@@ -29,6 +29,11 @@ export interface ITargetConfiguration {
|
|
|
29
29
|
* Sets up permissions and dependencies
|
|
30
30
|
*/
|
|
31
31
|
bind(scope: Construct, gateway: IGateway): TargetConfigurationConfig;
|
|
32
|
+
/**
|
|
33
|
+
* Renders the configuration as CloudFormation properties
|
|
34
|
+
* @internal
|
|
35
|
+
*/
|
|
36
|
+
_render(): any;
|
|
32
37
|
}
|
|
33
38
|
/******************************************************************************
|
|
34
39
|
* MCP Target Configuration Base
|
|
@@ -51,6 +56,11 @@ export declare abstract class McpTargetConfiguration implements ITargetConfigura
|
|
|
51
56
|
* Renders the MCP-specific configuration
|
|
52
57
|
*/
|
|
53
58
|
protected abstract renderMcpConfiguration(): any;
|
|
59
|
+
/**
|
|
60
|
+
* Renders the configuration as CloudFormation properties
|
|
61
|
+
* @internal
|
|
62
|
+
*/
|
|
63
|
+
_render(): any;
|
|
54
64
|
}
|
|
55
65
|
/******************************************************************************
|
|
56
66
|
* Lambda Target Configuration
|
|
@@ -207,4 +217,14 @@ export declare class McpServerTargetConfiguration extends McpTargetConfiguration
|
|
|
207
217
|
* Renders the MCP-specific configuration
|
|
208
218
|
*/
|
|
209
219
|
protected renderMcpConfiguration(): any;
|
|
220
|
+
/**
|
|
221
|
+
* Validates the MCP server endpoint
|
|
222
|
+
* - Must use HTTPS protocol
|
|
223
|
+
* - Should be properly URL encoded
|
|
224
|
+
*
|
|
225
|
+
* @param endpoint The endpoint URL to validate
|
|
226
|
+
* @throws ValidationError if the endpoint is invalid
|
|
227
|
+
* @internal
|
|
228
|
+
*/
|
|
229
|
+
private validateEndpoint;
|
|
210
230
|
}
|