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.



6143
6144
6145
# File 'lib/google/apis/ces_v1/classes.rb', line 6143

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



6083
6084
6085
# File 'lib/google/apis/ces_v1/classes.rb', line 6083

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


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

def custom_headers
  @custom_headers
end

#descriptionString

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

Returns:

  • (String)


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

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



6101
6102
6103
# File 'lib/google/apis/ces_v1/classes.rb', line 6101

def input_schema
  @input_schema
end

#nameString

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

Returns:

  • (String)


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

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)


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

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



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

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)


6126
6127
6128
# File 'lib/google/apis/ces_v1/classes.rb', line 6126

def server_address
  @server_address
end

#service_directory_configGoogle::Apis::CesV1::ServiceDirectoryConfig

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



6131
6132
6133
# File 'lib/google/apis/ces_v1/classes.rb', line 6131

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)


6136
6137
6138
# File 'lib/google/apis/ces_v1/classes.rb', line 6136

def state
  @state
end

#tls_configGoogle::Apis::CesV1::TlsConfig

The TLS configuration. Corresponds to the JSON property tlsConfig



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

def tls_config
  @tls_config
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



6148
6149
6150
6151
6152
6153
6154
6155
6156
6157
6158
6159
6160
# File 'lib/google/apis/ces_v1/classes.rb', line 6148

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