bedrock-agentcore-starter-toolkit 0.1.18__py3-none-any.whl → 0.1.20__py3-none-any.whl

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.

Potentially problematic release.


This version of bedrock-agentcore-starter-toolkit might be problematic. Click here for more details.

@@ -186,7 +186,7 @@ def configure(
186
186
  ),
187
187
  verbose: bool = typer.Option(False, "--verbose", "-v", help="Enable verbose output"),
188
188
  region: Optional[str] = typer.Option(None, "--region", "-r"),
189
- protocol: Optional[str] = typer.Option(None, "--protocol", "-p", help="Server protocol (HTTP or MCP)"),
189
+ protocol: Optional[str] = typer.Option(None, "--protocol", "-p", help="Server protocol (HTTP or MCP or A2A)"),
190
190
  non_interactive: bool = typer.Option(
191
191
  False, "--non-interactive", "-ni", help="Skip prompts; use defaults unless overridden"
192
192
  ),
@@ -198,8 +198,8 @@ def configure(
198
198
  if not entrypoint:
199
199
  _handle_error("--entrypoint is required")
200
200
 
201
- if protocol and protocol.upper() not in ["HTTP", "MCP"]:
202
- _handle_error("Error: --protocol must be either HTTP or MCP")
201
+ if protocol and protocol.upper() not in ["HTTP", "MCP", "A2A"]:
202
+ _handle_error("Error: --protocol must be either HTTP or MCP or A2A")
203
203
 
204
204
  console.print("[cyan]Configuring Bedrock AgentCore...[/cyan]")
205
205
  try:
@@ -47,7 +47,7 @@ class Runtime:
47
47
  region: Optional[str] = None,
48
48
  protocol: Optional[Literal["HTTP", "MCP"]] = None,
49
49
  disable_otel: bool = False,
50
- non_interactive: bool = False,
50
+ non_interactive: bool = True,
51
51
  ) -> ConfigureResult:
52
52
  """Configure Bedrock AgentCore from notebook using an entrypoint file.
53
53
 
@@ -67,7 +67,7 @@ class Runtime:
67
67
  region: AWS region for deployment
68
68
  protocol: agent server protocol, must be either HTTP or MCP
69
69
  disable_otel: Whether to disable OpenTelemetry observability (default: False)
70
- non_interactive: Skip interactive prompts and use defaults (default: False)
70
+ non_interactive: Skip interactive prompts and use defaults (default: True)
71
71
 
72
72
  Returns:
73
73
  ConfigureResult with configuration details
@@ -415,6 +415,10 @@ class GatewayClient:
415
415
  def create_oauth_authorizer_with_cognito(self, gateway_name: str) -> Dict[str, Any]:
416
416
  """Creates Cognito OAuth authorization server.
417
417
 
418
+ Note: This implementation uses AdminCreateUserOnly mode where only administrators
419
+ can create user accounts. If modifying this implementation for public clients,
420
+ review AWS Cognito security best practices regarding user sign-up policies.
421
+
418
422
  :param gateway_name: the name of the gateway being created for use in naming Cognito resources.
419
423
  :return: dictionary with details of the authorization server, client id, and client secret.
420
424
  """
@@ -425,7 +429,12 @@ class GatewayClient:
425
429
  try:
426
430
  # 1. Create User Pool
427
431
  pool_name = f"agentcore-gateway-{GatewayClient.generate_random_id()}"
428
- user_pool_response = cognito_client.create_user_pool(PoolName=pool_name)
432
+ user_pool_response = cognito_client.create_user_pool(
433
+ PoolName=pool_name,
434
+ AdminCreateUserConfig={
435
+ "AllowAdminCreateUserOnly": True # Disables self-registration
436
+ },
437
+ )
429
438
  user_pool_id = user_pool_response["UserPool"]["Id"]
430
439
  self.logger.info(" ✓ Created User Pool: %s", user_pool_id)
431
440
 
@@ -58,7 +58,7 @@ def create_test_lambda(session: Session, logger: logging.Logger, gateway_role_ar
58
58
  try:
59
59
  response = lambda_client.create_function(
60
60
  FunctionName=function_name,
61
- Runtime="python3.9",
61
+ Runtime="python3.13",
62
62
  Role=role_arn,
63
63
  Handler="lambda_function.lambda_handler",
64
64
  Code={"ZipFile": zip_buffer.read()},
@@ -59,7 +59,7 @@ def configure_bedrock_agentcore(
59
59
  request_header_configuration: Request header configuration dictionary
60
60
  verbose: Whether to provide verbose output during configuration
61
61
  region: AWS region for deployment
62
- protocol: agent server protocol, must be either HTTP or MCP
62
+ protocol: agent server protocol, must be either HTTP or MCP or A2A
63
63
  non_interactive: Skip interactive prompts and use defaults
64
64
 
65
65
  Returns:
@@ -205,6 +205,7 @@ def configure_bedrock_agentcore(
205
205
  requirements_file,
206
206
  memory_id,
207
207
  memory_name,
208
+ protocol,
208
209
  )
209
210
 
210
211
  # Check if .dockerignore was created
@@ -98,6 +98,8 @@ class BedrockAgentCoreClient:
98
98
  control_plane_url = get_control_plane_endpoint(region)
99
99
  data_plane_url = get_data_plane_endpoint(region)
100
100
 
101
+ self.dp_endpoint = data_plane_url
102
+
101
103
  self.logger.debug("Initializing Bedrock AgentCore client for region: %s", region)
102
104
  self.logger.debug("Control plane: %s", control_plane_url)
103
105
  self.logger.debug("Data plane: %s", data_plane_url)
@@ -110,6 +110,7 @@ class ContainerRuntime:
110
110
  requirements_file: Optional[str] = None,
111
111
  memory_id: Optional[str] = None,
112
112
  memory_name: Optional[str] = None,
113
+ protocol: Optional[str] = None,
113
114
  ) -> Path:
114
115
  """Generate Dockerfile from template."""
115
116
  current_platform = self._get_current_platform()
@@ -168,6 +169,7 @@ class ContainerRuntime:
168
169
  "observability_enabled": enable_observability,
169
170
  "memory_id": memory_id,
170
171
  "memory_name": memory_name,
172
+ "protocol": protocol or "HTTP",
171
173
  }
172
174
 
173
175
  dockerfile_path = output_dir / "Dockerfile"
@@ -43,7 +43,18 @@ class NetworkConfiguration(BaseModel):
43
43
  class ProtocolConfiguration(BaseModel):
44
44
  """Protocol configuration for BedrockAgentCore deployment."""
45
45
 
46
- server_protocol: str = Field(default="HTTP", description="Server protocol for deployment, either HTTP or MCP")
46
+ server_protocol: str = Field(
47
+ default="HTTP", description="Server protocol for deployment, either HTTP or MCP or A2A"
48
+ )
49
+
50
+ @field_validator("server_protocol")
51
+ @classmethod
52
+ def validate_protocol(cls, v: str) -> str:
53
+ """Validate protocol is one of the supported types."""
54
+ allowed = ["HTTP", "MCP", "A2A"]
55
+ if v.upper() not in allowed:
56
+ raise ValueError(f"Protocol must be one of {allowed}, got: {v}")
57
+ return v.upper()
47
58
 
48
59
  def to_aws_dict(self) -> dict:
49
60
  """Convert to AWS API format with camelCase keys."""
@@ -40,8 +40,9 @@ ENV DOCKER_CONTAINER=1
40
40
  RUN useradd -m -u 1000 bedrock_agentcore
41
41
  USER bedrock_agentcore
42
42
 
43
- EXPOSE 8080
43
+ EXPOSE 9000
44
44
  EXPOSE 8000
45
+ EXPOSE 8080
45
46
 
46
47
  # Copy entire project (respecting .dockerignore)
47
48
  COPY . .
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: bedrock-agentcore-starter-toolkit
3
- Version: 0.1.18
3
+ Version: 0.1.20
4
4
  Summary: A starter toolkit for using Bedrock AgentCore
5
5
  Project-URL: Homepage, https://github.com/aws/bedrock-agentcore-starter-toolkit
6
6
  Project-URL: Bug Tracker, https://github.com/aws/bedrock-agentcore-starter-toolkit/issues
@@ -9,16 +9,16 @@ bedrock_agentcore_starter_toolkit/cli/import_agent/__init__.py,sha256=tyM3dXM3Tc
9
9
  bedrock_agentcore_starter_toolkit/cli/import_agent/agent_info.py,sha256=CcPXbKNnI9fc7NyFmZBjB3PkB0wAz2Q_kBGoUVcnngA,9736
10
10
  bedrock_agentcore_starter_toolkit/cli/import_agent/commands.py,sha256=vpA66fGwKf6cxBelT3Yb_Af5Ow3AMquGLIDe-tBLjmc,22419
11
11
  bedrock_agentcore_starter_toolkit/cli/runtime/__init__.py,sha256=0zKPPoYThoDIr3DZhIQJavq5nVTKRsgcE1s9--wx118,60
12
- bedrock_agentcore_starter_toolkit/cli/runtime/commands.py,sha256=0k86wtUZmSPZA4w6jpmMRYjKpSU0XosWljkVwWpt4yc,51234
12
+ bedrock_agentcore_starter_toolkit/cli/runtime/commands.py,sha256=oFviB4Fx2Ff43IHxwWg1q8QLYU2IK3IUS96_MO0IH5k,51255
13
13
  bedrock_agentcore_starter_toolkit/cli/runtime/configuration_manager.py,sha256=72UVvnzD3aqaOBNhIMMHjNN5-mgR2oUnnWyA33oFoLM,14602
14
14
  bedrock_agentcore_starter_toolkit/notebook/__init__.py,sha256=wH1ZzIVKsKT_P0qX2kIIoyVxeHj8K40odfR1YI3McHw,129
15
15
  bedrock_agentcore_starter_toolkit/notebook/runtime/__init__.py,sha256=DoGfB_uGFLANJVE9rSZtTH3ymw76WBWmD9vORvBIdXs,66
16
- bedrock_agentcore_starter_toolkit/notebook/runtime/bedrock_agentcore.py,sha256=TL90e6r_q6osJBuHXa3cn-HgxU2WJA9TzoGU2pl0Zio,15716
16
+ bedrock_agentcore_starter_toolkit/notebook/runtime/bedrock_agentcore.py,sha256=jUpCv7MEnnUvsih37MVdQqYLJ_z2fIKNQuxgO1w7zV4,15714
17
17
  bedrock_agentcore_starter_toolkit/operations/__init__.py,sha256=L7sCNjfZviiVVoh2f3NEs2sbjNqFkmIRI3ZPYMMWMz0,51
18
18
  bedrock_agentcore_starter_toolkit/operations/gateway/__init__.py,sha256=5Qo1GeN-DghNp9g0coFUs7WpUJDboJoidOVs-5Co7fo,233
19
- bedrock_agentcore_starter_toolkit/operations/gateway/client.py,sha256=A4pBxe66TKVpwVQb4GWfC5LCVvwPo0kdRqXnSgONf6w,26063
19
+ bedrock_agentcore_starter_toolkit/operations/gateway/client.py,sha256=9KQzRAEGWbBDVVacdB1GqN_HJ06vwTBs6tLwfxYROoY,26498
20
20
  bedrock_agentcore_starter_toolkit/operations/gateway/constants.py,sha256=0_4J6BN4VAE4-XTQhPTEACkhilRrFqu_iKiuHSm2pYk,4610
21
- bedrock_agentcore_starter_toolkit/operations/gateway/create_lambda.py,sha256=MQsBJfUj26zBh7LqYWLoekHuvbAHIJE8qcXwrmJOhM0,2875
21
+ bedrock_agentcore_starter_toolkit/operations/gateway/create_lambda.py,sha256=mAzXvi5hetzN2iv0ITfx6PDbOgeLOjqt71zzaDpKHnw,2876
22
22
  bedrock_agentcore_starter_toolkit/operations/gateway/create_role.py,sha256=Oma9s6K4T9EFgwPAUDungDL9fGa3W0LsHBknIXUmSpI,4474
23
23
  bedrock_agentcore_starter_toolkit/operations/gateway/exceptions.py,sha256=WjsrE7lT2708CJniM_ISMzkfNX4IUteGgvOxleD9JZY,272
24
24
  bedrock_agentcore_starter_toolkit/operations/memory/README.md,sha256=VHmdCoZImRVsiDvCnKbnt4btO5fOkfeKmoludgSbKwM,31139
@@ -38,7 +38,7 @@ bedrock_agentcore_starter_toolkit/operations/memory/models/strategies/semantic.p
38
38
  bedrock_agentcore_starter_toolkit/operations/memory/models/strategies/summary.py,sha256=X0sVh-6Hw9PPnpPQucG_M7gVyXUiElZInFXBN8WDFUQ,1015
39
39
  bedrock_agentcore_starter_toolkit/operations/memory/models/strategies/user_preference.py,sha256=JJPAzt_Shix5a-RJEf7xOEzN5kxtX3dpP8xoMvry61U,996
40
40
  bedrock_agentcore_starter_toolkit/operations/runtime/__init__.py,sha256=0jRUuwSoqh4R_WqzfP4XAXngrgyFK5uH8JGXUVars6Y,793
41
- bedrock_agentcore_starter_toolkit/operations/runtime/configure.py,sha256=wQAYfKfYOp_YXh90bfwzMWB8vhW76fndZ30q-nbfE4M,12823
41
+ bedrock_agentcore_starter_toolkit/operations/runtime/configure.py,sha256=qNioReDz0xW0TTc1ihpcd6Cm1t3cM0u4kYrxMttivYI,12848
42
42
  bedrock_agentcore_starter_toolkit/operations/runtime/create_role.py,sha256=1-b_wBvkOXNh-HJsxATwHfXQqj0dpdETds0FNSTY0BE,16116
43
43
  bedrock_agentcore_starter_toolkit/operations/runtime/destroy.py,sha256=w80NppiAFEQefrQpBoF4YBL2pCreKM_TFNYG68irdYs,25147
44
44
  bedrock_agentcore_starter_toolkit/operations/runtime/invoke.py,sha256=49bfVSGICisXlOiqtFc6vUfd24z3ibQxPPeZy1QMoWw,6764
@@ -48,7 +48,7 @@ bedrock_agentcore_starter_toolkit/operations/runtime/status.py,sha256=4lK-zp29rZ
48
48
  bedrock_agentcore_starter_toolkit/services/__init__.py,sha256=s7QtYYFCCX2ff0gZHUdDxCDI3zhUq0fPsjevZbF9xdA,66
49
49
  bedrock_agentcore_starter_toolkit/services/codebuild.py,sha256=-ys84zixz2Y4g3kATnITrQ5cjREU_aZjjgMc3D_giFU,14311
50
50
  bedrock_agentcore_starter_toolkit/services/ecr.py,sha256=nW9wIZcXI6amZeLVSmM9F6awVBQP1-zrFXTozSNEDjo,2805
51
- bedrock_agentcore_starter_toolkit/services/runtime.py,sha256=NmjsGfOfdUr-ySFB6hDd9YjIFJsdRied-yVCQhbcOdI,22365
51
+ bedrock_agentcore_starter_toolkit/services/runtime.py,sha256=lqBB-4uJuxNKbnPHpRskQ7bajiZ2MpjnbqPnKnvTinY,22408
52
52
  bedrock_agentcore_starter_toolkit/services/xray.py,sha256=CRlcfVXpghVy7PvZqLUC4rp49Sw5DQ98rUU61HAluRM,6363
53
53
  bedrock_agentcore_starter_toolkit/services/import_agent/__init__.py,sha256=ig-xanZqA3oJdRTucYz9xF9_2yi31ADRVIKFsnIw_l4,68
54
54
  bedrock_agentcore_starter_toolkit/services/import_agent/utils.py,sha256=yCnzqv3S8sbQi6ArTz3MeR4ggRcojbAgMbBb7KAf0sA,16077
@@ -63,18 +63,18 @@ bedrock_agentcore_starter_toolkit/services/import_agent/scripts/bedrock_to_stran
63
63
  bedrock_agentcore_starter_toolkit/utils/endpoints.py,sha256=1gIDRd1oO1fymYpiedVit7m6zl5k6N8Ns9N-2ix7ZaE,1153
64
64
  bedrock_agentcore_starter_toolkit/utils/logging_config.py,sha256=NtZDyndNKCAbz7jZ0leb13bb3UmjjRUTSVwI8MMlOfw,2191
65
65
  bedrock_agentcore_starter_toolkit/utils/runtime/config.py,sha256=qRQid59rD3zJ0d0hcBY4-8R52PNIWEIUt9iR3biuz_c,4495
66
- bedrock_agentcore_starter_toolkit/utils/runtime/container.py,sha256=vrwIIoDCJ_rLLGbJLbLRhjlBzjdVBnR3I0HjuByJQX4,15839
66
+ bedrock_agentcore_starter_toolkit/utils/runtime/container.py,sha256=h6IxLFORkyVaZIhx2flrLGf2qFxVXXD26C0F2FtsAjo,15923
67
67
  bedrock_agentcore_starter_toolkit/utils/runtime/entrypoint.py,sha256=d-XjEwvQOdpRHvBGLdIBCs1fgUwNwB0EL_WkcdQXwXQ,5893
68
68
  bedrock_agentcore_starter_toolkit/utils/runtime/logs.py,sha256=ZZ9PD4QO0BSms5KphhUb3-6-IPTkmwkY-Zn2AWM9Aew,1601
69
69
  bedrock_agentcore_starter_toolkit/utils/runtime/policy_template.py,sha256=CgER7YXPh0BpR6JcTcumDL_k8bhmfLSEok1sf09-31I,2054
70
- bedrock_agentcore_starter_toolkit/utils/runtime/schema.py,sha256=19YP2yd7g5-JdTz-S93iXsrubKo9c6VYpDDtgrh8luU,7590
71
- bedrock_agentcore_starter_toolkit/utils/runtime/templates/Dockerfile.j2,sha256=fnnw8DsRcda2ZQDvLxAz1RYTml_IMG5q0d0iKn3DB1I,1595
70
+ bedrock_agentcore_starter_toolkit/utils/runtime/schema.py,sha256=019Lt1RkDka7ZiM5uCnucY69-vC5LYIhY-Os0AxXsS4,7959
71
+ bedrock_agentcore_starter_toolkit/utils/runtime/templates/Dockerfile.j2,sha256=3CK9AG26w3tMmLA6XDI_rpjZZNDhneJj3ghtTM9YAf8,1607
72
72
  bedrock_agentcore_starter_toolkit/utils/runtime/templates/dockerignore.template,sha256=b_70sBi0MwkTuA9TqxPqFcWK7TcmpaXBJ6M2Ipox65Q,691
73
73
  bedrock_agentcore_starter_toolkit/utils/runtime/templates/execution_role_policy.json.j2,sha256=hsYLCgaWMfXuwva90yb1DVEO_HUkIjHHNcPKb60E18k,6180
74
74
  bedrock_agentcore_starter_toolkit/utils/runtime/templates/execution_role_trust_policy.json.j2,sha256=PPJF6Ofq70W5DUE0NlbmnZjw5RkgepPgkskxEgEG28o,473
75
- bedrock_agentcore_starter_toolkit-0.1.18.dist-info/METADATA,sha256=OSe2By2dPOOkhiz3JseXzCrKh0jRZEGdJuJCZciPWTI,9999
76
- bedrock_agentcore_starter_toolkit-0.1.18.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
77
- bedrock_agentcore_starter_toolkit-0.1.18.dist-info/entry_points.txt,sha256=Tf94DkUf2Tp8P7p8MEXLxre7A7Pp_XNukteiz0wHnk8,77
78
- bedrock_agentcore_starter_toolkit-0.1.18.dist-info/licenses/LICENSE.txt,sha256=nNPOMinitYdtfbhdQgsPgz1UowBznU6QVN3Xs0pSTKU,10768
79
- bedrock_agentcore_starter_toolkit-0.1.18.dist-info/licenses/NOTICE.txt,sha256=rkBsg8DbKqfIoQbveqX9foR4uJPUVAokbkr02pRPilE,8674
80
- bedrock_agentcore_starter_toolkit-0.1.18.dist-info/RECORD,,
75
+ bedrock_agentcore_starter_toolkit-0.1.20.dist-info/METADATA,sha256=e09RnkNZr3nfiJmQimbum5TRQls1Zh1V3mkOazJwN7A,9999
76
+ bedrock_agentcore_starter_toolkit-0.1.20.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
77
+ bedrock_agentcore_starter_toolkit-0.1.20.dist-info/entry_points.txt,sha256=Tf94DkUf2Tp8P7p8MEXLxre7A7Pp_XNukteiz0wHnk8,77
78
+ bedrock_agentcore_starter_toolkit-0.1.20.dist-info/licenses/LICENSE.txt,sha256=nNPOMinitYdtfbhdQgsPgz1UowBznU6QVN3Xs0pSTKU,10768
79
+ bedrock_agentcore_starter_toolkit-0.1.20.dist-info/licenses/NOTICE.txt,sha256=rkBsg8DbKqfIoQbveqX9foR4uJPUVAokbkr02pRPilE,8674
80
+ bedrock_agentcore_starter_toolkit-0.1.20.dist-info/RECORD,,