Tools
Tools give agents the ability to interact with the world — read files, run commands, search the web, query databases, and more.
How Tools Work
When an agent needs to perform an action, it makes a tool call. The Docker Agent runtime executes the tool and returns the result to the agent, which can then use it to continue its work.
- Agent receives a user message
- Agent decides it needs to use a tool (e.g., read a file)
- Docker Agent executes the tool and returns the result
- Agent incorporates the result and responds
By default, Docker Agent asks for user confirmation before executing tools that have side effects (shell commands, file writes). Use --yolo to auto-approve all tool calls.
Built-in Tools
Enable a built-in toolset by adding its type to the agent's toolsets list. For example:
toolsets:
- type: filesystem
- type: shell
- type: todo
Choose tools for the capabilities your agent needs:
- Work with files and processes: Filesystem and Shell.
- Plan and remember: Todo, Memory, and RAG.
- Coordinate agents: Transfer Task and Background Agents.
See Built-in Tools for the complete catalog, including each toolset's type and configuration reference.
MCP Tools
Docker Agent supports the Model Context Protocol (MCP) for extending agents with external tools. There are three ways to connect MCP tools:
- Docker MCP (recommended) — Run MCP servers in Docker containers via the MCP Gateway. Browse the Docker MCP Catalog.
- Local MCP (stdio) — Run MCP servers as local processes communicating over stdin/stdout.
- Remote MCP (Streamable HTTP / SSE) — Connect to MCP servers running on a network. See Remote MCP Servers.
toolsets:
- type: mcp
ref: docker:duckduckgo
See Tool Config for full MCP configuration reference.
For full configuration reference, see Tool Config.