Class: Google::Apis::CesV1::McpTool

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/ces_v1/classes.rb,
lib/google/apis/ces_v1/representations.rb,
lib/google/apis/ces_v1/representations.rb

Overview

An MCP tool. See https://modelcontextprotocol.io/specification/2025-06-18/ server/tools for more details.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ McpTool

Returns a new instance of McpTool.



4514
4515
4516
# File 'lib/google/apis/ces_v1/classes.rb', line 4514

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#api_authenticationGoogle::Apis::CesV1::ApiAuthentication

Authentication information required for API calls. Corresponds to the JSON property apiAuthentication



4465
4466
4467
# File 'lib/google/apis/ces_v1/classes.rb', line 4465

def api_authentication
  @api_authentication
end

#custom_headersHash<String,String>

Optional. The custom headers to send in the request to the MCP server. The values must be in the format $context.variables. and can be set in the session variables. See https://docs.cloud.google.com/customer-engagement-ai/ conversational-agents/ps/tool/open-api#openapi-injection for more details. Corresponds to the JSON property customHeaders

Returns:

  • (Hash<String,String>)


4473
4474
4475
# File 'lib/google/apis/ces_v1/classes.rb', line 4473

def custom_headers
  @custom_headers
end

#descriptionString

Optional. The description of the MCP tool. Corresponds to the JSON property description

Returns:

  • (String)


4478
4479
4480
# File 'lib/google/apis/ces_v1/classes.rb', line 4478

def description
  @description
end

#input_schemaGoogle::Apis::CesV1::Schema

Represents a select subset of an OpenAPI 3.0 schema object. Corresponds to the JSON property inputSchema



4483
4484
4485
# File 'lib/google/apis/ces_v1/classes.rb', line 4483

def input_schema
  @input_schema
end

#nameString

Required. The name of the MCP tool. Corresponds to the JSON property name

Returns:

  • (String)


4488
4489
4490
# File 'lib/google/apis/ces_v1/classes.rb', line 4488

def name
  @name
end

#output_schemaGoogle::Apis::CesV1::Schema

Represents a select subset of an OpenAPI 3.0 schema object. Corresponds to the JSON property outputSchema



4493
4494
4495
# File 'lib/google/apis/ces_v1/classes.rb', line 4493

def output_schema
  @output_schema
end

#server_addressString

Required. The server address of the MCP server, e.g., "https://example.com/mcp/ ". If the server is built with the MCP SDK, the url should be suffixed with "/ mcp/". Only Streamable HTTP transport based servers are supported. This is the same as the server_address in the McpToolset. See https://modelcontextprotocol. io/specification/2025-03-26/basic/transports#streamable-http for more details. Corresponds to the JSON property serverAddress

Returns:

  • (String)


4502
4503
4504
# File 'lib/google/apis/ces_v1/classes.rb', line 4502

def server_address
  @server_address
end

#service_directory_configGoogle::Apis::CesV1::ServiceDirectoryConfig

Configuration for tools using Service Directory. Corresponds to the JSON property serviceDirectoryConfig



4507
4508
4509
# File 'lib/google/apis/ces_v1/classes.rb', line 4507

def service_directory_config
  @service_directory_config
end

#tls_configGoogle::Apis::CesV1::TlsConfig

The TLS configuration. Corresponds to the JSON property tlsConfig



4512
4513
4514
# File 'lib/google/apis/ces_v1/classes.rb', line 4512

def tls_config
  @tls_config
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



4519
4520
4521
4522
4523
4524
4525
4526
4527
4528
4529
# File 'lib/google/apis/ces_v1/classes.rb', line 4519

def update!(**args)
  @api_authentication = args[:api_authentication] if args.key?(:api_authentication)
  @custom_headers = args[:custom_headers] if args.key?(:custom_headers)
  @description = args[:description] if args.key?(:description)
  @input_schema = args[:input_schema] if args.key?(:input_schema)
  @name = args[:name] if args.key?(:name)
  @output_schema = args[:output_schema] if args.key?(:output_schema)
  @server_address = args[:server_address] if args.key?(:server_address)
  @service_directory_config = args[:service_directory_config] if args.key?(:service_directory_config)
  @tls_config = args[:tls_config] if args.key?(:tls_config)
end