co-reading-mcp
A local co-reading MCP server for chunked books, reading progress, search, and margin annotations.
A local server that lets you and Claude read books together, load EPUBs or text files, leave notes on passages, and pick up exactly where you left off across different conversations.
Co-Reading MCP is a local server that connects to Claude through the Model Context Protocol, a standard that lets Claude interact with external tools and data sources. The purpose of this server is to give Claude a persistent reading environment: you load books into it, and then both you and Claude can read through them together, leave notes on specific passages, and pick up where you left off across multiple conversations.
Books can be imported in EPUB format (the standard format used by most e-book apps) or as plain text files. The server splits books into stable sections called chunks, preserving chapter boundaries from EPUB files or recognizable heading patterns in plain text. Once a book is loaded, Claude can read it section by section, search for passages, write margin annotations, and track how far through the book you have gotten. You can write notes yourself, then submit them to Claude in bulk, and Claude's replies get attached to those same notes.
The server runs on Node.js and includes a simple browser-based reading interface you can open locally. A separate set of Python scripts handles importing books from the command line. The server can also run on a remote machine, such as a personal cloud server, with token-based authentication to keep your content private.
The project is designed around the idea that reading together with an AI is a different activity than dumping a book into a chat for a one-shot summary. Progress and annotations persist outside any single conversation, so Claude can resume reading from where it left off even in a completely new chat session.
All book content and notes are stored in a local data folder that is excluded from version control, so your private reading material does not end up in git history.
Where it fits
- Read through a non-fiction book chapter by chapter with Claude, leaving notes and questions on specific passages that persist across chat sessions.
- Import an EPUB or text book and let Claude search it, annotate it, and track your reading progress over days or weeks.
- Run the server on a personal cloud machine so you can co-read with Claude from any device while keeping your library private.
- Write your own notes on book passages and submit them to Claude in bulk, then get replies that attach to each specific annotation.