PluginBench
MCP Server
Active
MIT

reMarkable MCP Server MCP Server

io.github.wavyrai/rm-mcp

Access your reMarkable tablet through AI — read documents, search notes, and extract handwritten text via OCR.

What is the reMarkable MCP Server MCP server?

The reMarkable MCP Server is an MCP server that connects Claude and other AI assistants to your reMarkable tablet via the reMarkable Cloud API. It enables reading documents, browsing folders, searching content, and extracting handwritten notes through OCR, turning your reMarkable into a searchable second brain for AI workflows.

This server unlocks your reMarkable tablet's knowledge for AI assistants. You can read PDFs and EPUBs, browse your entire library, search across documents, extract typed text and handwritten notes via OCR, and organize folders—all through Claude or VS Code Copilot. Useful for research, daily reviews, knowledge management, and integrating your handwritten notes into AI-powered workflows.

How to install reMarkable MCP Server

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
Environment / auth
  • REMARKABLE_TOKEN
    required
    secret

    Authentication token for reMarkable Cloud API. Get one by registering at https://my.remarkable.com/device/apps/connect

~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "rm-mcp": {
      "command": "uvx",
      "args": [
        "rm-mcp"
      ],
      "env": {
        "REMARKABLE_TOKEN": "<YOUR_REMARKABLE_TOKEN>"
      }
    }
  }
}

Tools & capabilities

Tools this server exposes to the agent.

  • remarkable_read — Read and extract text from documents with pagination, search, and OCR support
  • remarkable_browse — Navigate and explore folders in your reMarkable library
  • remarkable_search — Search content across multiple documents
  • remarkable_recent — Get recently modified documents with optional previews
  • remarkable_status — Check connection status to reMarkable Cloud
  • remarkable_image — Get PNG or SVG images of pages with optional OCR text extraction

Use cases

  • Transfer handwritten research notes into Obsidian or other note-taking apps with AI assistance
  • Summarize recent journal entries and identify action items across your library
  • Search your entire reMarkable library to find half-remembered notes and documents
  • Extract text from diagrams and sketches using vision-based OCR
  • Organize and manage your reMarkable folders programmatically through AI

reMarkable MCP Server MCP server FAQ

What is the reMarkable MCP Server?

It's an MCP server that connects AI assistants like Claude to your reMarkable tablet, allowing them to read documents, search notes, browse folders, and extract handwritten text via OCR.

Is it free to use?

The server itself is free (MIT licensed), but requires a reMarkable Connect subscription to access the reMarkable Cloud API.

How do I install it in Claude Desktop?

Run `uvx rm-mcp --setup` to get your authentication token, then add the configuration to your `claude_desktop_config.json` with the token as an environment variable.

Do I need an API key for OCR?

No. The server uses sampling OCR, where your MCP client's AI model (Claude, GPT-4, etc.) extracts text from handwritten notes—no additional API keys needed.

What authentication is required?

You need a reMarkable Connect subscription and a one-time code from my.remarkable.com/device/apps/connect, which is converted to a token via `uvx rm-mcp --register`.

Can I limit access to specific folders?

Yes, set the `REMARKABLE_ROOT_PATH` environment variable to scope all operations to a specific folder on your reMarkable.

README (reference)

Source of truth, from the repository.

reMarkable MCP Server

Unlock the full potential of your reMarkable tablet as a second brain for AI assistants. This MCP server lets Claude, VS Code Copilot, and other AI tools read, search, and traverse your entire reMarkable library — including handwritten notes via OCR.

<!-- mcp-name: io.github.wavyrai/rm-mcp -->

Why rm-mcp?

Your reMarkable tablet is a powerful tool for thinking, note-taking, and research. But that knowledge stays trapped on the device. This MCP server changes that:

  • Full library access — Browse folders, search documents, read any file
  • Typed text extraction — Native support for Type Folio and typed annotations
  • Handwriting OCR — Convert handwritten notes to searchable text
  • PDF & EPUB support — Extract text from documents, plus your annotations
  • Smart search — Find content across your entire library
  • Organise your library — Rename, move, and create folders (nothing is ever deleted)
  • Second brain integration — Use with Obsidian, note-taking apps, or any AI workflow

Whether you're researching, writing, or developing ideas, rm-mcp lets you leverage everything on your reMarkable through AI.


Quick Install

Uses the reMarkable Cloud API. Requires a reMarkable Connect subscription.

One-command setup (recommended)

uvx rm-mcp --setup

This opens your browser, prompts for the one-time code, and prints the ready-to-paste config for Claude Code and Claude Desktop.

Manual setup

1. Get a One-Time Code

Go to my.remarkable.com/device/browser/connect and generate a code.

2. Convert to Token

uvx rm-mcp --register YOUR_CODE

3. Add to your MCP client

Claude Code:

claude mcp add remarkable \
  -e REMARKABLE_TOKEN='<paste token from step 2>' \
  -e REMARKABLE_OCR_BACKEND=sampling \
  -- uvx rm-mcp@latest

Claude Desktop — add to claude_desktop_config.json (use full path to uvx, e.g. from which uvx):

{
  "mcpServers": {
    "remarkable": {
      "command": "/Users/YOU/.local/bin/uvx",
      "args": ["rm-mcp@latest"],
      "env": {
        "REMARKABLE_TOKEN": "<paste token from step 2>"
      }
    }
  }
}

<!-- Screenshots section - uncomment when screenshots are added ## Screenshots ### MCP Resources Documents appear as resources that AI assistants can access directly: ![Resources in VS Code](docs/assets/resources-screenshot.png) ### Tool Calls in Action AI assistants use the tools to read documents, search content, and more: ![Tool calls in VS Code](docs/assets/tool-calls-screenshot.png) -->

Tools

ToolDescription
remarkable_readRead and extract text from documents (with pagination and search)
remarkable_browseNavigate folders in your library
remarkable_searchSearch content across multiple documents
remarkable_recentGet recently modified documents
remarkable_statusCheck connection status
remarkable_imageGet PNG/SVG images of pages (supports OCR via sampling)

All tools are read-only and return structured JSON with hints for next actions.

📖 Full Tools Documentation

Smart Features

  • Multi-page read — Read all pages at once with pages="all", or a range like pages="1-3"
  • Grep auto-redirect — grep automatically finds and jumps to the matching page
  • Auto-redirect — Browsing a document path returns its content automatically
  • Auto-OCR — Notebooks with no typed text automatically enable OCR (opt out with auto_ocr=False)
  • Full-text search — Reading a document indexes it for fast future searches
  • Compact mode — Use compact_output=True to reduce token usage in responses
  • Batch search — Search across multiple documents in one call
  • Vision support — Get page images for visual context (diagrams, mockups, sketches)
  • Sampling OCR — Use client's AI for OCR on images (no API key needed)

Example Usage

# Read a document
remarkable_read("Meeting Notes")

# Read all pages at once
remarkable_read("Meeting Notes", pages="all")

# Read a range of pages
remarkable_read("Research Paper", pages="1-3")

# Search for keywords (auto-redirects to matching page)
remarkable_read("Project Plan", grep="deadline")

# Enable OCR for handwritten notes
remarkable_read("Journal", include_ocr=True)

# Browse your library
remarkable_browse("/Work/Projects")

# Search across documents
remarkable_search("meeting", grep="action items")

# Get recent documents with previews
remarkable_recent(limit=5, include_preview=True)

# Get a page image
remarkable_image("UI Mockup", page=1)

# Get image with OCR text extraction
remarkable_image("Handwritten Notes", include_ocr=True)

Resources

Documents are automatically registered as MCP resources:

URI SchemeDescription
remarkable:///{path}.txtExtracted text content
remarkableimg:///{path}.page-{N}.pngPNG image of page N (notebooks only)
remarkablesvg:///{path}.page-{N}.svgSVG vector image of page N (notebooks only)

📖 Full Resources Documentation


OCR for Handwriting

rm-mcp uses sampling OCR — your MCP client's AI model extracts text from handwritten notes. No additional API keys or services needed.

How It Works

When you use include_ocr=True, rm-mcp sends page images to your client's LLM (Claude, GPT-4, etc.) via MCP sampling. The model reads the handwriting and returns the text.

Usage

# OCR on a page image
remarkable_image("Handwritten Notes", include_ocr=True)

# OCR when reading a notebook
remarkable_read("Journal", include_ocr=True)

Requirements

  • Your MCP client must support the sampling capability (VS Code + Copilot, Claude Desktop, etc.)
  • REMARKABLE_OCR_BACKEND=sampling (this is the default)

Advanced Configuration

Root Path Filtering

Limit the MCP server to a specific folder on your reMarkable. All operations will be scoped to this folder:

{
  "servers": {
    "remarkable": {
      "command": "uvx",
      "args": ["rm-mcp"],
      "env": {
        "REMARKABLE_TOKEN": "your-token",
        "REMARKABLE_ROOT_PATH": "/Work"
      }
    }
  }
}

With this configuration:

  • remarkable_browse("/") shows contents of /Work
  • remarkable_browse("/Projects") shows /Work/Projects
  • Documents outside /Work are not accessible

Useful for:

  • Focusing on work documents during office hours
  • Separating personal and professional notes
  • Limiting scope for specific AI workflows

Custom Background Color

Set the default background color for image rendering:

{
  "servers": {
    "remarkable": {
      "command": "uvx",
      "args": ["rm-mcp"],
      "env": {
        "REMARKABLE_TOKEN": "your-token",
        "REMARKABLE_BACKGROUND_COLOR": "#FFFFFF"
      }
    }
  }
}

Supported formats:

  • #RRGGBB — RGB hex (e.g., #FFFFFF for white)
  • #RRGGBBAA — RGBA hex (e.g., #00000000 for transparent)

Default is #FBFBFB (reMarkable paper color). This affects both the remarkable_image tool and image resources.

All Environment Variables

VariableDefaultDescription
REMARKABLE_TOKEN(required)Auth token from uvx rm-mcp --setup
REMARKABLE_ROOT_PATH/Limit access to a specific folder
REMARKABLE_READ_ONLY(off)Set to 1 to disable renaming, moving and creating folders
REMARKABLE_OCR_BACKENDsamplingOCR backend (sampling)
REMARKABLE_BACKGROUND_COLOR#FBFBFBBackground color for rendered images (#RRGGBB or #RRGGBBAA)
REMARKABLE_CACHE_TTL60Collection cache TTL in seconds
REMARKABLE_COMPACT(off)Set to 1 or true to omit hints from responses globally
REMARKABLE_MAX_OUTPUT_CHARS50000Maximum characters in tool responses
REMARKABLE_PAGE_SIZE8000PDF/EPUB page size in characters
REMARKABLE_PARALLEL_WORKERS5Parallel workers for metadata fetching
REMARKABLE_INDEX_CONTENT1Set to 0 to disable background indexing of PDF/EPUB text
REMARKABLE_INDEX_PATH~/.cache/rm-mcp/index.dbSQLite full-text search index location
REMARKABLE_INDEX_REBUILD(off)Set to 1 to force index rebuild on startup

Most users only need REMARKABLE_TOKEN. The rest are for advanced tuning.


Use Cases

Research & Writing

Use rm-mcp while working in an Obsidian vault or similar to transfer knowledge from your handwritten notes into structured documents. AI can read your research notes and help develop your ideas.

Daily Review

Ask your AI assistant to summarize your recent notes, find action items, or identify patterns across your journal entries.

Document Search

Find that half-remembered note by searching across your entire library — including handwritten content.

Knowledge Management

Treat your reMarkable as a second brain that AI can access. Combined with tools like Obsidian, you can build a powerful personal knowledge system.


Documentation

GuideDescription
Tools ReferenceDetailed tool documentation
Resources ReferenceMCP resources documentation
Capability NegotiationMCP protocol capabilities
DevelopmentContributing and development setup
Future PlansRoadmap and planned features

Development

git clone https://github.com/wavyrai/rm-mcp.git
cd rm-mcp
uv sync --all-extras
uv run pytest test_server.py -v

📖 Development Guide


License

MIT


Built with rmscene, PyMuPDF, and inspiration from ddvk/rmapi.

Related MCP servers

Free API/MCP/x402 health checks plus $19 hourly managed monitoring for agent services.

0
TypeScript
MIT
View repository →

Operate WhatsApp Business: conversations, contacts, chatbot flows, templates, CRM and store.

244 WhatsApp Business AI tools for messaging, automation, marketing, CRM and Shopify

2
JavaScript
MIT
View repository →

Cognitive memory for AI agents. Atkinson-Shiffrin, RAG, knowledge graph. 100+ tools.

Query, replay and rewrite your app's real HTTPS traffic, captured locally by Charlotte.

Semantic code retrieval engine with hybrid search, context expansion, and 40+ language support.

2
TypeScript
MIT
View repository →