putty
MCPProjectProject

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.

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.

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_read", "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 { 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.

The full request and response shape, and a live playground, live on the generated reference at GET /mcp/tools.

On this page