- A toolkit is a set of tools that is attached directly to an agent.
- A toolkit builder is something the agent can use to construct tools dynamically, often on a per-turn basis.
Using built-in toolkits from the CLI
Built-in toolkits are commonly enabled when you start an agent from the CLI:- Always-on tools: the tools are attached directly to the agent and are always available to the model.
- Per-turn tools: the tools are exposed through toolkit builders, so they can be selected or toggled for a given turn in the UI.
--require-. For example:
--web-searchmakes web search available as a per-turn tool.--require-web-searchmakes web search always available to the agent.--web-fetchmakes web fetch available as a per-turn tool.--require-web-fetchmakes web fetch always available to the agent.--mcpmakes MCP tools available through the normal builder flow. There is not currently a--require-mcpmode in the chatbot CLI.--storageusesStorageToolkitBuilderfor the builder-based flow.--require-storageaddsStorageToolkitdirectly as always-on tools.--use-memory agents/<agent-name>/memoriesadds aMemoriesToolkitfor that memory path.
Built-in toolkits
These are first-party MeshAgent toolkits that you attach to agents or services in code.Document and content tools
DocumentAuthoringToolkit: create and modify MeshDocuments.DocumentTypeAuthoringToolkit: work with type-specific document structures.MarkItDownToolkit: convert PDFs and Office documents into formats that are easier for LLMs to use.
Data and storage tools
StorageToolkit/StorageToolkitBuilder: expose room or mounted storage operations as tools.MemoriesToolkit/MemoriesToolkitBuilder: expose room-backed memory tools such as add, search, inspect, and delete memory operations.DatabaseToolkitBuilder: construct database tools for agent workflows.UUIDToolkit: provide UUID generation helpers.
Provider and adapter-driven toolkits
These toolkits are usually exposed through adapters or builders instead of being always on. Some of them switch implementation based on the model you choose, so the same CLI flag can work across providers even when the underlying tool definition is different. For adapter-specific details, see OpenAI Responses Adapter and Anthropic Messages Adapter.MCPToolkit/MCPToolkitBuilder: expose external MCP servers as MeshAgent tools.WebFetchToolkitBuilder: add web-fetch tools. In the CLI,--web-fetchselects Anthropic’s built-in Messages API web fetch tool for Claude models and MeshAgent’sWebFetchToolkitBuilderfor other models. That means the same flag works for both Anthropic and OpenAI-backed agents.WebSearchToolkitBuilder: add web search tools. For Claude models this uses Anthropic’s built-in Messages APIweb_search_*tool. For other model paths the CLI selects a different builder, so the same--web-searchflag still works outside Anthropic.ShellToolkitBuilder: add function-based shell execution tools. In the current CLI,--shellis wired for both Claude and OpenAI model paths.LocalShellToolkitBuilder: expose OpenAI’s native local shell tool. In the current CLI,--local-shellis OpenAI-only.ImageGenerationToolkitBuilder: expose OpenAI-native image generation. In the current CLI,--image-generationis OpenAI-only.ApplyPatchToolkitBuilder: expose OpenAI’s patch-editing tool. In the current CLI,--apply-patchis OpenAI-only.ScriptToolkitBuilder: turn a fixed script or command sequence into a tool the agent can call. This is useful when you want to wrap an existing CLI workflow or shell script as an agent tool without building a full custom Python tool first.