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.



6201
6202
6203
# File 'lib/google/apis/ces_v1/classes.rb', line 6201

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



6141
6142
6143
# File 'lib/google/apis/ces_v1/classes.rb', line 6141

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


6149
6150
6151
# File 'lib/google/apis/ces_v1/classes.rb', line 6149

def custom_headers
  @custom_headers
end

#descriptionString

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

Returns:

  • (String)


6154
6155
6156
# File 'lib/google/apis/ces_v1/classes.rb', line 6154

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



6159
6160
6161
# File 'lib/google/apis/ces_v1/classes.rb', line 6159

def input_schema
  @input_schema
end

#nameString

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

Returns:

  • (String)


6164
6165
6166
# File 'lib/google/apis/ces_v1/classes.rb', line 6164

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)


6170
6171
6172
# File 'lib/google/apis/ces_v1/classes.rb', line 6170

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



6175
6176
6177
# File 'lib/google/apis/ces_v1/classes.rb', line 6175

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)


6184
6185
6186
# File 'lib/google/apis/ces_v1/classes.rb', line 6184

def server_address
  @server_address
end

#service_directory_configGoogle::Apis::CesV1::ServiceDirectoryConfig

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



6189
6190
6191
# File 'lib/google/apis/ces_v1/classes.rb', line 6189

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)


6194
6195
6196
# File 'lib/google/apis/ces_v1/classes.rb', line 6194

def state
  @state
end

#tls_configGoogle::Apis::CesV1::TlsConfig

The TLS configuration. Corresponds to the JSON property tlsConfig



6199
6200
6201
# File 'lib/google/apis/ces_v1/classes.rb', line 6199

def tls_config
  @tls_config
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



6206
6207
6208
6209
6210
6211
6212
6213
6214
6215
6216
6217
6218
# File 'lib/google/apis/ces_v1/classes.rb', line 6206

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