Read tool for files you have read before — saves 50%+ tokens on re-reads.
How it works
Parameters
string
required
Absolute file path.
boolean
default:"false"
If
true, return full content regardless of cache state.Response statuses
first_read
Full file content with chunk metadata. Each chunk includes:
name— function name, heading text, or line rangehash— sha256 of chunk contentlines— line range in the file
unchanged
File mtime matches cache. Returns chunk list (names + hashes) without content. Maximum token savings.
unchanged_content
File mtime changed but sha256 matches — the file was touched (e.g. git checkout) but content is identical.
modified
File actually changed. Returns:
- Changed chunks: full content included
- Unchanged chunks: metadata only (name + hash)
Chunking strategies
AST-aware chunking means that if you add a function at the top of a file, only the new function shows as “changed” — existing functions keep their identity and hash, so they’re returned as metadata-only.