Dropbox Memory tools

What each tool takes and returns. Names, revs and times in the examples are made up. Home page.

Workspaces

A workspace is a top-level folder in the app folder. Every call names one.

Apps/LLMemoryBox/
  garden/
    tomatoes.md
    beds/plan.md
  work/
    projects/search.md
  readme.md

"all"

list accepts "all" to cover every workspace. Each entry names its workspace, so Claude can read it next.

Request arguments

{ "workspace": "all" }

Result

{"files":[
  {"workspace":"garden","path":"tomatoes.md","size":71,"modified":"2026-10-31T05:46:06Z"},
  {"workspace":"garden","path":"beds/plan.md","size":240,"modified":"2026-10-29T18:02:11Z"},
  {"workspace":"work","path":"projects/search.md","size":1803,"modified":"2026-10-30T22:40:57Z"}
]}

Tools that act on one file refuse "all":

this tool needs one workspace, not "all" (got "all")

Revs and errors

list

The .md files in a workspace, with size in bytes and last change time.

Request arguments

{ "workspace": "garden" }

Result

{"files":[
  {"workspace":"garden","path":"tomatoes.md","size":71,"modified":"2026-10-31T05:46:06Z"},
  {"workspace":"garden","path":"beds/plan.md","size":240,"modified":"2026-10-29T18:02:11Z"}
]}

read

Two text blocks: the rev and size, then the file text as stored.

Request arguments

{ "workspace": "garden", "path": "tomatoes.md" }

Result, block 1

rev: 0165f1c6dcfb473000000033b284821
size: 71 bytes

Result, block 2

# Tomatoes

- Planted 6 seedlings on 12 May.
- First fruit on 20 June.

write

Request arguments

{
  "workspace": "garden",
  "path": "tomatoes.md",
  "text": "# Tomatoes\n\n- Planted 6 seedlings on 12 May.\n"
}

Result

rev: 0165f1c6d7426cd000000033b284821
Indexed for search.

Result if the file exists

The file "tomatoes.md" in workspace "garden" already exists. To replace it, pass its current rev as expected_rev.

Replace request

{
  "workspace": "garden",
  "path": "tomatoes.md",
  "text": "# Tomatoes\n\n- Planted 8 seedlings on 12 May.\n",
  "expected_rev": "0165f1c6d7426cd000000033b284821"
}

append

Request arguments

{
  "workspace": "garden",
  "path": "tomatoes.md",
  "text": "- First fruit on 20 June.\n"
}

Result

rev: 0165f1c6dcfb473000000033b284821
Indexed for search.

patch

Request arguments

{
  "workspace": "garden",
  "path": "tomatoes.md",
  "edits": [
    { "old_text": "6 seedlings", "new_text": "8 seedlings" }
  ],
  "expected_rev": "0165f1c6dcfb473000000033b284821"
}

Result

rev: 0165f1c6e1a5ff2000000033b284821
Indexed for search.

Result if the file changed since read

The file "tomatoes.md" in workspace "garden" is at rev "0165f1c6e1a5ff2000000033b284821", not "0165f1c6dcfb473000000033b284821". It changed since you read it. Nothing was written.

search

Request arguments

{ "workspace": "all", "query": "when did the tomatoes fruit", "limit": 3 }

Result

1. garden/tomatoes.md  score 0.684
2. garden/beds/plan.md  score 0.412
3. garden/journal.md  score 0.205

write result for a file over 8,000 bytes

rev: 0165f1c6f0a2b19000000033b284821
Indexed for search in 5 parts.