class RubyLLM::ServerToolCall

A ServerToolCall records one provider-executed tool step in an assistant response: a web search the model ran, a code execution, or the results block a provider returned for one. They appear on Message#server_tool_calls when a chat enables tools with Chat#with_server_tools.

response = chat.with_server_tools(:web_search).ask "What changed in Ruby 3.5?"
response.server_tool_calls.map(&:type) # => ["server_tool_use", "web_search_tool_result"]

RubyLLM does not model each tool’s result schema. raw always holds the provider’s block exactly as received, and is what RubyLLM replays to the provider in subsequent turns when the wire format requires it.