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) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| 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
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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