whatisgithub

What is co-reading-mcp?

idleprocesscc/co-reading-mcp — explained in plain English

Analysis updated 2026-06-24

11JavaScriptAudience · generalComplexity · 3/5Setup · moderate

In one sentence

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.

Mindmap

mindmap
  root((Co-Reading MCP))
    What it does
      Read books with Claude
      Persistent annotations
      Cross-session progress
    Input formats
      EPUB files
      Plain text files
      Chapter chunking
    Features
      Margin notes
      Passage search
      Reading progress
    Tech stack
      Node.js server
      Python import scripts
      Browser UI
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Read through a non-fiction book chapter by chapter with Claude, leaving notes and questions on specific passages that persist across chat sessions.

USE CASE 2

Import an EPUB or text book and let Claude search it, annotate it, and track your reading progress over days or weeks.

USE CASE 3

Run the server on a personal cloud machine so you can co-read with Claude from any device while keeping your library private.

USE CASE 4

Write your own notes on book passages and submit them to Claude in bulk, then get replies that attach to each specific annotation.

What is it built with?

JavaScriptNode.jsPythonModel Context Protocol

How does it compare?

idleprocesscc/co-reading-mcpfares-nosair/opencode-agentrouter-supportgugao-bug/openart-auto-register
Stars111111
LanguageJavaScriptJavaScriptJavaScript
Setup difficultymoderateeasyhard
Complexity3/52/53/5
Audiencegeneraldeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires Node.js and Python installed locally, plus Claude configured to connect via the Model Context Protocol.

No license information is provided in the repository.

So what is it?

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.

Copy-paste prompts

Prompt 1
I've set up co-reading-mcp and imported a book. How do I instruct Claude to read the next chapter, summarize it, and leave an annotation on the key argument?
Prompt 2
I want to discuss chapter 5 of a book I've loaded into co-reading-mcp. Ask Claude to find the passage about [topic], add a margin note, and give me its interpretation.
Prompt 3
Show me how to import an EPUB file into co-reading-mcp using the Python scripts, then have Claude start reading from chapter 1.
Prompt 4
I've been reading a book with Claude across multiple sessions. How do I ask it to recap what we've read so far and pick up from our last annotation?

Frequently asked questions

What is co-reading-mcp?

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.

What language is co-reading-mcp written in?

Mainly JavaScript. The stack also includes JavaScript, Node.js, Python.

What license does co-reading-mcp use?

No license information is provided in the repository.

How hard is co-reading-mcp to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is co-reading-mcp for?

Mainly general.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.