Woodentable

Giving it files

Your agent sees only what you mount. Mount a folder and it can read and search it; mount it read-only and it can't change it.

Mount a folder

claude mcp add woodentable -- woodentable -mount ~/project serve -name woodentable

-mount goes before serve, as every option that shapes the run does. The folder appears to your agent as /project. Try it at the console first:

woodentable -mount ~/project -sandbox -eval 'puts [glob /project/*]'

Read-only, and choosing the name

Repeat -mount for each folder or file. Each one lands in the catalog, the set of files your agent sees:

You writeYour agent sees
-mount ~/project/project
-mount ~/project=/code/code, with the contents of ~/project
-readonly ~/refs/refs, which it can read but not change
-mount ~/notes.md/notes.md

Save your mounts as a profile

A resource profile saves a set of mounts under a name:

woodentable resources add proj -mount ~/project -readonly ~/refs
woodentable resources list

Then name the profile instead of the mounts:

claude mcp add woodentable -- woodentable -resources proj serve -name woodentable

A run started from a profile also keeps its catalog and search index on disk, so the next run doesn't rebuild them.

woodentable -resources proj -sandbox -eval 'puts [glob /*]'

How your agent finds things

Every mounted file can be searched by its words straight away. Add an embedding model, a GGUF file, and it can search by meaning too:

woodentable -embed ~/models/embed.gguf -mount ~/project serve -name woodentable

Woodentable checks mounted folders for changes every 30 seconds; -watch sets how often, in milliseconds.

Go deeper with the built-in guides:

woodentable help mounts
woodentable help resources