--web-search, --web-fetch, and --shell. You choose the capability once, and MeshAgent selects the provider-specific tool path that matches the model you are running.
Add built-in capabilities from the CLI
--web-search, --storage, --shell, or --document-authoring. --require-toolkit is the exception for attaching an external toolkit by name. The tables below show the current CLI flags for each built-in capability.
Run meshagent process join --help to see the current tool flags and related configuration options.
Built-in capabilities
Web and retrieval
| Capability | Toolkit or tool | Flags | What it does |
|---|---|---|---|
| Web search | WebSearchTool | --web-search | Search the web |
| Web fetch | WebFetchTool | --web-fetch | Fetch and read web pages directly |
Storage and memory
| Capability | Toolkit or tool | Flags | What it does |
|---|---|---|---|
| Storage | StorageToolkit | --storage, --read-only-storage | Work with room or mounted storage |
| Memory | MemoriesToolkit | --use-memory <name-or-path> | Add, search, inspect, and delete room-backed memories |
| Database access | DatabaseToolkit, make_database_toolkit | --database-namespace, --table-read <table>, --table-write <table> | Add table-specific database tools |
| UUID tools | UUIDToolkit | --uuid | Provide UUID generation helpers |
| Time tools | DatetimeToolkit | --time | Provide time and datetime tools |
MCP and external tools
| Capability | Toolkit or tool | Flags | What it does |
|---|---|---|---|
| MCP tools | room-provided MCP toolkits | --mcp | Use MCP tools available in the room on turns where MCP is enabled |
meshagent process runtime, MCP is exposed through --mcp rather than as a required named toolkit.
Shell and execution
| Capability | Toolkit or tool | Flags | What it does |
|---|---|---|---|
| Function shell | ShellTool or ContainerShellTool | --shell | Give the agent direct shell tool calling |
| Managed container shell | ContainerToolkit | --advanced-shell | Give the agent container start, list, stop, and run tools |
| Script tools | get_script_tools(...) | --script-tool, --discover-script-tools | Add script-based tools or discover script tools from the room |
--advanced-shell is the right choice when the agent needs to manage a working container across several steps instead of treating each shell command as an isolated call.
If the shell environment needs access to runtime metadata from the current room or service, add --shell-tool-config-mount <mount>. When the current runtime exposes MESHAGENT_SPEC_PATH or MESHAGENT_MEMBERS_PATH, MeshAgent mounts those runtime files into the shell container as spec.json and members.json under the target directory and points the env vars at the mounted paths.
Provider-native tools
| Capability | Toolkit or tool | Flags | What it does |
|---|---|---|---|
| Image generation | ImageGenerationTool | --image-generation <model> | Use OpenAI-native image generation |
| Apply patch | ApplyPatchTool | --apply-patch | Use OpenAI-native patch editing |
| Computer use | ComputerToolkit | --computer-use, --starting-url, --allow-goto-url | Use browser and computer-interaction tools |
Document and content tools
| Capability | Toolkit or tool | Flags | What it does |
|---|---|---|---|
| Document authoring | DocumentAuthoringToolkit | --document-authoring | Create and modify MeshDocuments |
| Document type authoring | DocumentTypeAuthoringToolkit | --document-authoring | Add type-specific document tools for the built-in widget document type |
| MarkItDown | MarkItDownToolkit | no direct meshagent process flag | Convert PDFs and Office documents into LLM-friendly formats |
Discovery
| Capability | Toolkit or tool | Flags | What it does |
|---|---|---|---|
| Discovery tools | DiscoveryToolkit | --discovery | Discover agents and tools available in the room |
meshagent process flag, add it from the SDK or package it into your own service or custom toolkit.