remark-mcp
Enables AI assistants to browse and read documents from a reMarkable tablet connected via USB, rendering PDF pages as images for the AI to see.
README
remark-mcp
An MCP (Model Context Protocol) server that connects AI assistants to a reMarkable tablet over its local USB HTTP interface.
Once configured, you can ask Claude (or any MCP-capable client) to browse your tablet's documents and read them — the server fetches the PDF from the tablet and renders each page as an image that the AI can see.
Prerequisites
- Node.js 18 or later
- A reMarkable tablet connected via USB cable with the USB web interface enabled
- On the tablet: Settings → Storage → USB web interface — make sure it is turned on
- The tablet must be reachable at
http://10.11.99.1(the default USB address)
Installation
git clone <repo-url>
cd remark-mcp
npm install
Connecting to Claude Code
Add the server to your Claude Code MCP configuration. In your project's .claude/settings.json (or the global ~/.claude/settings.json):
{
"mcpServers": {
"remarkable": {
"command": "/absolute/path/to/node",
"args": ["/absolute/path/to/remark-mcp/index.js"],
"env": {
"RM_MCP_LOG": "info",
"RM_MCP_LOG_FILE": "/absolute/path/to/remark-mcp/rm-mcp.log"
}
}
}
}
Important: The
commandfield must be the full path to thenodeexecutable — Claude Code does not inherit your shell'sPATH, so a barenodewill fail. Find the path withwhich node(macOS/Linux) orwhere node(Windows).
Restart Claude Code after saving. You should see remarkable listed as an available MCP server.
Available Tools
| Tool | Description |
|---|---|
list_root |
List all files and folders in the root of the tablet |
list_folder |
List the contents of a folder by its ID |
download_pdf |
Download a document as a PDF and return each page as an image |
Example prompts
List everything on my reMarkable tablet.
Open the folder called "Work" and show me what's inside.
Show me the document "Meeting Notes" from my tablet.
The download_pdf tool renders every page of the document as a PNG image at 2× viewport scale, so Claude can read handwritten notes and printed text.
Environment Variables
| Variable | Values | Default | Description |
|---|---|---|---|
RM_MCP_LOG |
debug, info, error, silent |
silent |
Log verbosity |
RM_MCP_LOG_FILE |
file path | (stderr) | Write logs to a file instead of stderr |
Note: stdout is reserved for the MCP protocol wire format. All logging goes to stderr or to
RM_MCP_LOG_FILE. Never redirect stdout to a file when running the server.
Running
The server uses the MCP stdio transport. It is normally launched automatically by the MCP client (Claude Code), but you can start it manually to test:
npm start
# or
node index.js
Utility Script
fetch-pdf.js is a standalone script for downloading a single PDF directly to disk — useful for debugging connectivity before using the MCP server:
node fetch-pdf.js <document-id>
# saves <document-id>.pdf in the current directory
Tests
npm test
Tests use Node's built-in test runner (node:test) and stub out all external dependencies (network, PDF renderer, MCP SDK) so they run without a tablet attached.
Windows Notes
The server patches the pdf-to-png-converter path normalisation at runtime so that pdfjs-dist asset URLs use forward slashes on Windows. No manual changes to node_modules are required.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.