co-reading-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PORT | No | Port for remote HTTP server (default: 3000) | |
| MCP_AUTH_TOKEN | No | Bearer token for remote HTTP server authentication. If not set, auth is disabled. | |
| CO_READING_DATA_DIR | No | Override the default data directory (default: ./data) |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| import_bookA | Import a book by file path (.txt or .epub) or raw text, split it into chapters and size-bounded chunks, and register it for chunked reading. EPUB chapter boundaries (spine order) are preserved. |
| list_booksA | List all imported books with chunk counts and last-read position. |
| list_chunksA | List all chunks (chapter/part breakdown) of a book, without their text. |
| read_chunkA | Read the text of one chunk. Pass chunkId to read a specific chunk, or omit it to continue from the book's last-read position (its nextId). Reading a chunk updates reading progress. |
| search_bookA | Search all chunks of a book for a substring (case-insensitive) and return matching chunks with context snippets. |
| get_progressA | Get the last-read chunk id for a book. |
| set_progressA | Manually set the last-read chunk id for a book (e.g. to jump or re-read). |
| read_notesB | Read the accumulated discussion notes for a book, used to restore context cheaply between sessions. |
| append_notesB | Append a timestamped note entry (clues, reasoning, thoughts) for a book. |
| add_annotationA | Add an annotation anchored to a quoted passage within a chunk. author should be 'human' or 'claude'. If the other author already has an overlapping annotation on the same quote, a shared card pairing both notes is created automatically. |
| list_annotationsB | List annotations for a book, optionally filtered to one chunk. |
| list_cardsC | List shared cards: passages where both human and claude have left overlapping annotations. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/kikuovo/co-reading-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server