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.



6123
6124
6125
# File 'lib/google/apis/ces_v1/classes.rb', line 6123

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



6063
6064
6065
# File 'lib/google/apis/ces_v1/classes.rb', line 6063

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>)


6071
6072
6073
# File 'lib/google/apis/ces_v1/classes.rb', line 6071

def custom_headers
  @custom_headers
end

#descriptionString

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

Returns:

  • (String)


6076
6077
6078
# File 'lib/google/apis/ces_v1/classes.rb', line 6076

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



6081
6082
6083
# File 'lib/google/apis/ces_v1/classes.rb', line 6081

def input_schema
  @input_schema
end

#nameString

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

Returns:

  • (String)


6086
6087
6088
# File 'lib/google/apis/ces_v1/classes.rb', line 6086

def name
  @name
end

#name_overrideString

Optional. The name override of the MCP tool. This is populated if the name was overridden by a Toolset override. Corresponds to the JSON property nameOverride

Returns:

  • (String)


6092
6093
6094
# File 'lib/google/apis/ces_v1/classes.rb', line 6092

def name_override
  @name_override
end

#output_schemaGoogle::Apis::CesV1::Schema

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



6097
6098
6099
# File 'lib/google/apis/ces_v1/classes.rb', line 6097

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)


6106
6107
6108
# File 'lib/google/apis/ces_v1/classes.rb', line 6106

def server_address
  @server_address
end

#service_directory_configGoogle::Apis::CesV1::ServiceDirectoryConfig

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



6111
6112
6113
# File 'lib/google/apis/ces_v1/classes.rb', line 6111

def service_directory_config
  @service_directory_config
end

#stateString

Output only. The dynamic availability state of the tool on the external server. Corresponds to the JSON property state

Returns:

  • (String)


6116
6117
6118
# File 'lib/google/apis/ces_v1/classes.rb', line 6116

def state
  @state
end

#tls_configGoogle::Apis::CesV1::TlsConfig

The TLS configuration. Corresponds to the JSON property tlsConfig



6121
6122
6123
# File 'lib/google/apis/ces_v1/classes.rb', line 6121

def tls_config
  @tls_config
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



6128
6129
6130
6131
6132
6133
6134
6135
6136
6137
6138
6139
6140
# File 'lib/google/apis/ces_v1/classes.rb', line 6128

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)
  @name_override = args[:name_override] if args.key?(:name_override)
  @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)
  @state = args[:state] if args.key?(:state)
  @tls_config = args[:tls_config] if args.key?(:tls_config)
end