resilient-read
MCP server that lets coding agents read very large files safely in small, resumable chunks.
Why this exists
When context windows are small, naive full-file reads are brittle and expensive. resilient-read provides deterministic pagination with cursor-based continuation and drift detection.
Tools
rr.stat- get file metadata (size,mtime_ns, optionalsha256)rr.read_bytes- read byte windows withoffset,max_bytes,next_offset,eofrr.read_lines- read line-numbered slices for code/log analysisrr.read_tail- read only the latest lines from append-only filesrr.search_then_page- search with contextual excerpts andnext_from_linerr.make_cursor- mint resumable cursor tokenrr.read_next- read next chunk from cursor (fails if file changed)
Install
uv sync
PyPI release (0.1.0): https://pypi.org/project/resilient-read/0.1.0/
Install from PyPI:
pip install resilient-read
Run with stdio (default):
uv run resilient-read
Run with SSE:
uv run resilient-read --transport sse --host 127.0.0.1 --port 8000
Run with Streamable HTTP:
uv run resilient-read --transport http --host 127.0.0.1 --port 8000
MCP config (stdio)
{
"mcpServers": {
"resilient-read": {
"command": "uvx",
"args": ["resilient-read"],
"env": {
"RR_WORKSPACE": "/path/to/your/project"
}
}
}
}
MCP config (SSE)
{
"mcpServers": {
"resilient-read": {
"type": "sse",
"url": "http://127.0.0.1:8000/sse"
}
}
}
MCP config (HTTP)
{
"mcpServers": {
"resilient-read": {
"type": "http",
"url": "http://127.0.0.1:8000/mcp"
}
}
}
Example workflows
Cursor-based file pagination
- Call
rr.stat(path="large.log") - Call
rr.make_cursor(path="large.log", offset=0, max_bytes=65536) - Loop on
rr.read_next(cursor=...)untileof=true
Targeted search pagination
- Call
rr.search_then_page(path="server.log", query="timeout", max_matches=3) - Follow with
rr.search_then_page(..., from_line=<next_from_line>)
Each response is small and composable, so you can process huge files while staying inside small model contexts.
Project housekeeping
- Release notes and version history:
CHANGELOG.md - Manual semver tagging flow:
docs/RELEASE.md - JSON-RPC examples:
examples/
Metadata
Release files for resilient-read 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| resilient_read-0.1.1.tar.gz | 45.3 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| resilient_read-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 55.2 kB
Release files / resilient_read-0.1.1.tar.gz
| Download URL | resilient_read-0.1.1.tar.gz |
|---|---|
| Size | 45.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c3ccbea3b3812cc3e73ae19130126ad58fd847aa5f8c21bf23a81d46151062f4
|
|
BLAKE2b-256 checksum How to use checksums |
d83e90d277728cb480da21c59ad4620c7a2687f167e45ef28a7714b865304b73
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.10.18
|
Release files / resilient_read-0.1.1-py3-none-any.whl
| Download URL | resilient_read-0.1.1-py3-none-any.whl |
|---|---|
| Size | 9.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
affa421defc41d0e8b5c61f409d2a500949e5225e1eedf0a8ae0dd0b5d73342f
|
|
BLAKE2b-256 checksum How to use checksums |
1fdf4403641de99fedd3854634fd9f0ab6759a89f1f365566a7a2ce945b1d0b7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.10.18
|
Security for resilient-read 0.1.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.