project_fs_list
List a directory in the project's sandbox. Paths are relative to `/workspace`; `node_modules`, `.git`, and `dist` are always skipped, because a listing that walks them buries the source tree under build output. Returns `{ dir, entries, count }` where each entry is `{ path, type, size }`, sorted by path. Omit `dir` for the workspace root, and pass `recursive: true` to walk the whole source tree. Read a file with `project_fs_read`. Another user's project is answered with the same 'no such project' a deleted one would be.
List a directory in the project's sandbox. Paths are relative to /workspace; node_modules, .git, and dist are always skipped, because a listing that walks them buries the source tree under build output.
Input
The tool takes a single JSON object. Every field, its type, and an example are on the generated reference at GET /mcp/tools, under this tool's name.
Calling it
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": { "name": "project_fs_list", "arguments": {} }
}Put your arguments in place of the empty object. A call that fails comes back as a normal result carrying isError: true and a message naming what went wrong, not as a JSON-RPC protocol error.
Notes
Returns { dir, entries, count } where each entry is { path, type, size }, sorted by path. Omit dir for the workspace root, and pass recursive: true to walk the whole source tree. Read a file with project_fs_read. Another user's project is answered with the same 'no such project' a deleted one would be.
The full request and response shape, and a live playground, live on the generated reference at GET /mcp/tools.
Project
The sandbox filesystem, the process, the run lifecycle, and the two exports.
project_fs_read
Read a file from the project's sandbox as text. Paths are relative to `/workspace`; a path that leaves the workspace is refused by the sandbox path rules. Returns `{ path, content, totalLines, returnedLines, bytes, truncated }` — pass `startLine` / `endLine` to read a slice of a file that is too large for one call. A read over the 200 KB cap keeps the head and the tail with a `…[N bytes truncated]…` marker between them and sets `truncated`. Call `project_fs_list` to see what is in the tree, and `project_fs_edit` to change what you read. Another user's project is answered with the same 'no such project' a deleted one would be.