The Responses API includes powerful built-in tools that require zero setup — just enable them in your request.
| Tool | What It Does | Use Case |
|---|---|---|
| web_search | Searches the internet for real-time information | Current events, live data, fact-checking |
| file_search | Searches your uploaded Vector Stores | RAG over internal documents |
| code_interpreter | Executes Python in a sandbox | Data analysis, chart generation, math |
| computer_use | Controls a virtual desktop via screenshots | Browser automation, legacy app interaction |
| mcp | Connects to external MCP servers | Enterprise integrations, databases, APIs |
| image_generation | Creates images via GPT Image 2 | Design, mockups, visual content |
The model can chain multiple tools in a single request. Ask "Research competitor pricing and create a chart" and it will:
web_search to find pricing datacode_interpreter to build a matplotlib chartconst response = await openai.responses.create({
model: "gpt-5.4",
tools: [
{ type: "web_search" },
{ type: "code_interpreter" }
],
input: "Find the latest Bitcoin price and plot a 7-day chart"
});
// Connect to remote MCP servers directly in the API
const response = await openai.responses.create({
model: "gpt-5.4",
tools: [{
type: "mcp",
server_label: "my-crm",
server_url: "https://mcp.acme.com/sse",
require_approval: "always"
}],
input: "Look up the latest deal status for Acme Corp"
});