Class: AWSCDK::BedrockAgentCore::AddMcpServerTargetOptions

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
bedrock_agent_core/add_mcp_server_target_options.rb

Overview

Options for adding an MCP Server target to a gateway.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(credential_provider_configurations:, endpoint:, description: nil, gateway_target_name: nil) ⇒ AddMcpServerTargetOptions

Returns a new instance of AddMcpServerTargetOptions.

Parameters:

  • credential_provider_configurations (Array<AWSCDK::BedrockAgentCore::ICredentialProviderConfig>)

    Credential providers for authentication.

  • endpoint (String)

    The HTTPS endpoint URL of the MCP server.

  • description (String, nil) (defaults to: nil)

    Optional description for the gateway target.

  • gateway_target_name (String, nil) (defaults to: nil)

    The name of the gateway target Valid characters are a-z, A-Z, 0-9, _ (underscore) and - (hyphen).



11
12
13
14
15
16
17
18
19
20
# File 'bedrock_agent_core/add_mcp_server_target_options.rb', line 11

def initialize(credential_provider_configurations:, endpoint:, description: nil, gateway_target_name: nil)
  @credential_provider_configurations = credential_provider_configurations
  Jsii::Type.check_type(@credential_provider_configurations, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLmF3c19iZWRyb2NrYWdlbnRjb3JlLklDcmVkZW50aWFsUHJvdmlkZXJDb25maWcifSwia2luZCI6ImFycmF5In19")), "credentialProviderConfigurations")
  @endpoint = endpoint
  Jsii::Type.check_type(@endpoint, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "endpoint")
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil?
  @gateway_target_name = gateway_target_name
  Jsii::Type.check_type(@gateway_target_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "gatewayTargetName") unless @gateway_target_name.nil?
end

Instance Attribute Details

#credential_provider_configurationsArray<AWSCDK::BedrockAgentCore::ICredentialProviderConfig> (readonly)

Credential providers for authentication.

MCP servers require explicit authentication configuration. OAuth2 is strongly recommended over NoAuth.



28
29
30
# File 'bedrock_agent_core/add_mcp_server_target_options.rb', line 28

def credential_provider_configurations
  @credential_provider_configurations
end

#descriptionString? (readonly)

Note:

Default: - No description

Optional description for the gateway target.

Returns:

  • (String, nil)


43
44
45
# File 'bedrock_agent_core/add_mcp_server_target_options.rb', line 43

def description
  @description
end

#endpointString (readonly)

The HTTPS endpoint URL of the MCP server.

The endpoint must:

  • Use HTTPS protocol
  • Be properly URL-encoded
  • Point to an MCP server that implements tool capabilities

Returns:

  • (String)


38
39
40
# File 'bedrock_agent_core/add_mcp_server_target_options.rb', line 38

def endpoint
  @endpoint
end

#gateway_target_nameString? (readonly)

Note:

Default: - auto generate

The name of the gateway target Valid characters are a-z, A-Z, 0-9, _ (underscore) and - (hyphen).

Returns:

  • (String, nil)


48
49
50
# File 'bedrock_agent_core/add_mcp_server_target_options.rb', line 48

def gateway_target_name
  @gateway_target_name
end

Class Method Details

.jsii_propertiesObject



50
51
52
53
54
55
56
57
# File 'bedrock_agent_core/add_mcp_server_target_options.rb', line 50

def self.jsii_properties
  {
    :credential_provider_configurations => "credentialProviderConfigurations",
    :endpoint => "endpoint",
    :description => "description",
    :gateway_target_name => "gatewayTargetName",
  }
end

Instance Method Details

#to_jsiiObject



59
60
61
62
63
64
65
66
67
68
# File 'bedrock_agent_core/add_mcp_server_target_options.rb', line 59

def to_jsii
  result = {}
  result.merge!({
    "credentialProviderConfigurations" => @credential_provider_configurations,
    "endpoint" => @endpoint,
    "description" => @description,
    "gatewayTargetName" => @gateway_target_name,
  })
  result.compact
end