Memo has a built-in toolset and also supports external tools via MCP. In most cases, you do not need to call tools manually. Just describe your goal clearly and explicitly specify which files should be read or changed.
Built-in Tool Groups
Read-only Tools (Usually no approval needed)
read: read file content (supports offset/limit)glob: find file paths by pattern (for examplesrc/**/*.ts)grep: search content withrg(regex/file list/count)webfetch: restricted HTTP GET with cleaned text previewtodo: in-process task list (not persisted)
Write Tools (Approval required)
write: write filesedit: patch file contentsave_memory: write long-term memory (store only user preferences/profile, not project details)
Execution Tools (High risk, approval required)
bash: run shell commands and return stdout/stderr/exit code
How to Help Memo Use Tools Effectively
- State goal and scope clearly: for example, "Only modify
@packages/core/src/config/config.ts; do not touch other files." - Read before write: for example, "Read
@README.mdfirst, then add one section based on the current structure." - Set constraints: for example, "Do not run destructive commands; read-only only."
Detailed Tool Parameter Docs
Use these pages when you need exact parameter/behavior details:
read:docs/tool/read.mdglob:docs/tool/glob.mdgrep:docs/tool/grep.mdwebfetch:docs/tool/webfetch.mdwrite:docs/tool/write.mdedit:docs/tool/edit.mdbash:docs/tool/bash.mdtodo:docs/tool/todo.mdsave_memory:docs/tool/save_memory.md