Documents in your reMarkable library are automatically registered as MCP resources, allowing AI assistants to access them directly.
| URI Scheme | Description | Mode |
|---|---|---|
remarkable:/// |
Your annotations, typed text, and handwriting | All modes |
remarkableraw:/// |
Original PDF/EPUB text | All modes (USB web: PDF) |
remarkableimg:/// |
PNG page images (notebooks) | All modes |
remarkablesvg:/// |
SVG page images (notebooks) | All modes |
Every document is registered as a text resource with its full path.
remarkable:///{path}.txt
remarkable:///Meeting%20Notes.txt
remarkable:///Work/Projects/Q4%20Planning.txt
remarkable:///Journals/November.txt
| Document Type | Content |
|---|---|
| Your annotations, highlights, and typed notes | |
| EPUB | Your annotations, highlights, and typed notes |
| Notebook | Typed text, highlights, and handwritten content (OCR) |
Note: Text resources contain only user-created content—not the original PDF/EPUB text. Use raw resources (remarkableraw:///) for the original document content. OCR is automatically applied for notebooks with handwritten content.
Text resources return the extracted content as plain text:
Meeting Notes - November 28, 2025
Attendees: Alice, Bob, Charlie
Action Items:
- Review Q4 targets
- Schedule follow-up
...
Original PDF and EPUB text content is available as raw resources in SSH mode. These resources extract and return the full text from the original document file—the actual content of the PDF or EPUB, not your annotations.
remarkableraw:///{path}.pdf.txt
remarkableraw:///{path}.epub.txt
remarkableraw:///Research%20Paper.pdf.txt
remarkableraw:///Books/Deep%20Work.epub.txt
Raw resources return extracted text from the original file:
Chapter 1: Introduction
This paper explores the relationship between...
| Mode | Text Resources | Raw Resources |
|---|---|---|
| Cloud | ✅ Yes | ✅ Yes (PDF/EPUB) |
| SSH | ✅ Yes | ✅ Yes (PDF/EPUB) |
| USB Web | ✅ Yes | ✅ Yes (PDF) |
All modes can access the original source files. Cloud stores the source blob alongside the notebook data, so PDFs/EPUBs are available wirelessly — though very large files that the device hasn't synced to the cloud may be missing. USB web exposes the tablet's PDF export.
Notebook pages are available as image resources in both PNG and SVG formats.
remarkableimg:///{path}.page-{N}.png
remarkablesvg:///{path}.page-{N}.svg
Where {N} is the 1-indexed page number.
remarkableimg:///UI%20Mockup.page-1.png
remarkableimg:///Work/Diagrams/Architecture.page-3.png
remarkablesvg:///Wireframe.page-1.svg
remarkablesvg:///Sketches/Logo.page-2.svg
- PNG resources return binary image data with the standard reMarkable paper background color (
#FBFBFB) - SVG resources return SVG XML content with the same background color
- Visual context: View hand-drawn diagrams, sketches, or UI mockups
- Design implementation: Convert wireframes to code
- SVG editing: Import vector graphics into design tools for further editing
- Documentation: Include notebook drawings in documents
- Only available for notebooks (not PDFs or EPUBs)
- For PDFs/EPUBs, the annotation layer would be rendered (not the underlying document)
- Use the
remarkable_imagetool for more control (custom backgrounds, transparent output)
On server startup, remarkable-mcp:
- Connects to your reMarkable (via SSH or Cloud)
- Fetches the document list
- Registers each document as an MCP resource
- For SSH mode, also registers raw PDF/EPUB resources
Resources are registered once at startup. If you add new documents, restart the MCP server to pick them up.
Resources appear in Claude's context when you mention them or use the "Attach" feature.
MCP resources can be accessed through the Copilot chat interface. The screenshot below shows resources appearing with the mcpr prefix:
MCP clients can request resources by URI:
# Request a text resource (includes annotations)
content = await client.read_resource("remarkable:///Meeting%20Notes.txt")
# Request raw PDF text (original document only, no annotations)
pdf_text = await client.read_resource("remarkableraw:///Paper.pdf.txt")Paths in URIs must be URL-encoded:
| Character | Encoded |
|---|---|
| Space | %20 |
/ |
%2F (in filename only) |
& |
%26 |
Examples:
Meeting Notes→Meeting%20Notes/Work/Q4 Report→/Work/Q4%20Report
Archived documents and trash items are not registered as resources. Only documents that are actively synced appear.
When REMARKABLE_ROOT_PATH is configured, only documents within that folder are registered as resources. Paths in URIs are relative to the root:
{
"env": {
"REMARKABLE_ROOT_PATH": "/Work"
}
}With this configuration:
/Work/Meeting Notes→remarkable:///Meeting%20Notes.txt- Documents outside
/Workare not registered
- Resources are registered at startup (slight delay for large libraries)
- Text extraction happens on-demand when a resource is accessed
- Results are cached per session
- SSH mode is significantly faster than Cloud for resource access
