Class: Cerca::Resources::Tools

Inherits:
Object
  • Object
show all
Defined in:
lib/cerca/resources/tools.rb

Instance Method Summary collapse

Constructor Details

#initialize(client:) ⇒ Tools

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns a new instance of Tools.

Parameters:



125
126
127
# File 'lib/cerca/resources/tools.rb', line 125

def initialize(client:)
  @client = client
end

Instance Method Details

#create(fleet_id, body:, request_options: {}) ⇒ Cerca::Models::HTTPToolSource, Cerca::Models::McpToolSource

Create tool



17
18
19
20
21
22
23
24
25
26
# File 'lib/cerca/resources/tools.rb', line 17

def create(fleet_id, params)
  parsed, options = Cerca::ToolCreateParams.dump_request(params)
  @client.request(
    method: :post,
    path: ["fleets/%1$s/tools", fleet_id],
    body: parsed[:body],
    model: Cerca::ToolSource,
    options: options
  )
end

#delete(fleet_id, source_id, request_options: {}) ⇒ nil

Delete tool source

Parameters:

  • fleet_id (String)
  • source_id (String)
  • request_options (Cerca::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

  • (nil)

See Also:



113
114
115
116
117
118
119
120
# File 'lib/cerca/resources/tools.rb', line 113

def delete(fleet_id, source_id, params = {})
  @client.request(
    method: :delete,
    path: ["fleets/%1$s/tools/%2$s", fleet_id, source_id],
    model: NilClass,
    options: params[:request_options]
  )
end

#list(fleet_id, cursor: nil, limit: nil, request_options: {}) ⇒ Cerca::Internal::SourcesCursorPage<Cerca::Models::HTTPToolSource, Cerca::Models::McpToolSource>

Some parameter documentations has been truncated, see Models::ToolListParams for more details.

List tools

Parameters:

  • fleet_id (String)
  • cursor (String)

    Opaque pagination cursor returned by a previous request.

  • limit (String)

    Maximum number of items to return. Defaults to 20 and preserves parseInt semanti

  • request_options (Cerca::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



89
90
91
92
93
94
95
96
97
98
99
100
# File 'lib/cerca/resources/tools.rb', line 89

def list(fleet_id, params = {})
  parsed, options = Cerca::ToolListParams.dump_request(params)
  query = Cerca::Internal::Util.encode_query_params(parsed)
  @client.request(
    method: :get,
    path: ["fleets/%1$s/tools", fleet_id],
    query: query,
    page: Cerca::Internal::SourcesCursorPage,
    model: Cerca::ToolSource,
    options: options
  )
end

#retrieve(fleet_id, source_id, request_options: {}) ⇒ Cerca::Models::HTTPToolSource, Cerca::Models::McpToolSource

Retrieve tool source

Parameters:

  • fleet_id (String)
  • source_id (String)
  • request_options (Cerca::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



39
40
41
42
43
44
45
46
# File 'lib/cerca/resources/tools.rb', line 39

def retrieve(fleet_id, source_id, params = {})
  @client.request(
    method: :get,
    path: ["fleets/%1$s/tools/%2$s", fleet_id, source_id],
    model: Cerca::ToolSource,
    options: params[:request_options]
  )
end

#update(fleet_id, source_id, body:, request_options: {}) ⇒ Cerca::Models::HTTPToolSource, Cerca::Models::McpToolSource

Update tool source



60
61
62
63
64
65
66
67
68
69
# File 'lib/cerca/resources/tools.rb', line 60

def update(fleet_id, source_id, params)
  parsed, options = Cerca::ToolUpdateParams.dump_request(params)
  @client.request(
    method: :put,
    path: ["fleets/%1$s/tools/%2$s", fleet_id, source_id],
    body: parsed[:body],
    model: Cerca::ToolSource,
    options: options
  )
end