Class: OpenAI::Models::Realtime::RealtimeSessionCreateResponse::Tool::McpTool

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/openai/models/realtime/realtime_session_create_response.rb

Defined Under Namespace

Modules: AllowedTools, ConnectorID, RequireApproval

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, inspect, #inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(server_label:, allowed_tools: nil, authorization: nil, connector_id: nil, headers: nil, require_approval: nil, server_description: nil, server_url: nil, type: :mcp) ⇒ Object

Some parameter documentations has been truncated, see OpenAI::Models::Realtime::RealtimeSessionCreateResponse::Tool::McpTool for more details.

Give the model access to additional tools via remote Model Context Protocol (MCP) servers. [Learn more about MCP](platform.openai.com/docs/guides/tools-remote-mcp).

Parameters:



# File 'lib/openai/models/realtime/realtime_session_create_response.rb', line 781

Instance Attribute Details

#allowed_toolsArray<String>, ...

List of allowed tool names or a filter object.



716
717
718
719
720
# File 'lib/openai/models/realtime/realtime_session_create_response.rb', line 716

optional :allowed_tools,
union: -> {
  OpenAI::Realtime::RealtimeSessionCreateResponse::Tool::McpTool::AllowedTools
},
nil?: true

#authorizationString?

An OAuth access token that can be used with a remote MCP server, either with a custom MCP server URL or a service connector. Your application must handle the OAuth authorization flow and provide the token here.

Returns:

  • (String, nil)


728
# File 'lib/openai/models/realtime/realtime_session_create_response.rb', line 728

optional :authorization, String

#connector_idSymbol, ...

Identifier for service connectors, like those available in ChatGPT. One of ‘server_url` or `connector_id` must be provided. Learn more about service connectors [here](platform.openai.com/docs/guides/tools-remote-mcp#connectors).

Currently supported ‘connector_id` values are:

  • Dropbox: ‘connector_dropbox`

  • Gmail: ‘connector_gmail`

  • Google Calendar: ‘connector_googlecalendar`

  • Google Drive: ‘connector_googledrive`

  • Microsoft Teams: ‘connector_microsoftteams`

  • Outlook Calendar: ‘connector_outlookcalendar`

  • Outlook Email: ‘connector_outlookemail`

  • SharePoint: ‘connector_sharepoint`



748
749
# File 'lib/openai/models/realtime/realtime_session_create_response.rb', line 748

optional :connector_id,
enum: -> { OpenAI::Realtime::RealtimeSessionCreateResponse::Tool::McpTool::ConnectorID }

#headersHash{Symbol=>String}?

Optional HTTP headers to send to the MCP server. Use for authentication or other purposes.

Returns:

  • (Hash{Symbol=>String}, nil)


756
# File 'lib/openai/models/realtime/realtime_session_create_response.rb', line 756

optional :headers, OpenAI::Internal::Type::HashOf[String], nil?: true

#require_approvalOpenAI::Models::Realtime::RealtimeSessionCreateResponse::Tool::McpTool::RequireApproval::McpToolApprovalFilter, ...

Specify which of the MCP server’s tools require approval.



762
763
764
765
766
# File 'lib/openai/models/realtime/realtime_session_create_response.rb', line 762

optional :require_approval,
union: -> {
  OpenAI::Realtime::RealtimeSessionCreateResponse::Tool::McpTool::RequireApproval
},
nil?: true

#server_descriptionString?

Optional description of the MCP server, used to provide more context.

Returns:

  • (String, nil)


772
# File 'lib/openai/models/realtime/realtime_session_create_response.rb', line 772

optional :server_description, String

#server_labelString

A label for this MCP server, used to identify it in tool calls.

Returns:

  • (String)


704
# File 'lib/openai/models/realtime/realtime_session_create_response.rb', line 704

required :server_label, String

#server_urlString?

The URL for the MCP server. One of ‘server_url` or `connector_id` must be provided.

Returns:

  • (String, nil)


779
# File 'lib/openai/models/realtime/realtime_session_create_response.rb', line 779

optional :server_url, String

#typeSymbol, :mcp

The type of the MCP tool. Always ‘mcp`.

Returns:

  • (Symbol, :mcp)


710
# File 'lib/openai/models/realtime/realtime_session_create_response.rb', line 710

required :type, const: :mcp

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/openai/models/realtime/realtime_session_create_response.rb', line 884