Skip to main content
The Responses API includes built-in tools that the model can invoke automatically — no function schemas required. These tools extend the model’s capabilities beyond its training data.
Built-in tools are handled server-side. Unlike custom function calling (where your code executes the function), built-in tools execute automatically and return results to the model within the same request.

Available Built-in Tools


Enable web search to let the model look up current information that isn’t in its training data.
When the model uses web search, the output array includes a web_search_call item showing what was searched:
Web search is useful for questions about current events, recent releases, live data, or anything that may have changed since the model’s training cutoff.

Code Interpreter

Let the model write and execute Python code to solve math problems, analyze data, or generate charts.
The output array will include a code_interpreter_call item with the code that was executed:

Combining Multiple Tools

You can enable multiple built-in tools in the same request. The model decides which to use based on the input.
The model may:
  1. Use web search to find current population data
  2. Use code interpreter to generate the chart
  3. Return the final answer with both tool calls visible in the output array

Mixing Built-in and Custom Tools

You can combine built-in tools with your own custom function definitions:
Built-in tools execute automatically on the server. Custom function calls still require your code to execute the function and submit results back. See Tool Calling for the full custom function workflow.

Tool Choice

Control how the model selects tools with tool_choice:

Best Practices

Be specific about when to search

If your prompt clearly needs current data, enable web search. For questions answerable from training data, skip it to save latency.

Use code interpreter for computation

Models are better at writing code than doing arithmetic. For math-heavy tasks, enable code interpreter for accurate results.

Check output items

Inspect the output array to see which tools were used and verify the model’s reasoning chain.

Combine thoughtfully

Enabling too many tools can confuse the model. Enable only the tools relevant to the task at hand.