关于 reMarkable MCP Server (Read/Write)
reMarkable MCP Server 将 AI 工具连接到 reMarkable 平板的文档库,适合需要搜索、阅读和管理笔记与文档的用户。它结合 OCR、文本提取和文件夹操作,并支持 USB、SSH 或云端连接。
主要功能
- 01浏览和搜索文档及文件夹
- 02提取 PDF、EPUB 和输入文本
- 03对手写笔记进行 OCR
- 04查看 PNG 或 SVG 页面图像
- 05上传、移动、重命名和删除文件
- 06创建文件夹并查看最近文档
适用场景
- 01按主题搜索手写研究笔记
- 02查看近期笔记并提取待办事项
- 03将 PDF 或 EPUB 上传到平板文件夹
- 04移动或整理平板文档
MCP 相关
该服务向 MCP 客户端提供读取、搜索、浏览和管理 reMarkable 文档库的工具。它还将提取的文本、原始文件和页面图像注册为 MCP 资源。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
reMarkable MCP 服务
释放 reMarkable 平板作为 AI 助手第二大脑的全部潜力。此 MCP 服务可让 Claude、VS Code Copilot 和其他 AI 工具读取、搜索和浏览整个 reMarkable 资料库,包括通过 OCR 识别的手写笔记。
为什么选择 remarkable-mcp?
reMarkable 平板是用于思考、记笔记和研究的强大工具。但这些知识都被困在设备上。此 MCP 服务改变了这一点:
- 完整访问资料库 — 浏览文件夹、搜索文档、读取任何文件
- 文本提取 — 原生支持 Type Folio 和文本注释
- 手写 OCR — 将手写笔记转换为可搜索的文本
- PDF 和 EPUB 支持 — 从文档中提取文本及其注释
- 智能搜索 — 搜索整个资料库中的内容
- 第二大脑集成 — 与 Obsidian、笔记应用或任何 AI 工作流搭配使用
无论你是在研究、写作还是构思,remarkable-mcp 都能让你通过 AI 充分利用 reMarkable 中的所有内容。
快速安装
🔌 USB Web 界面(推荐)
通过 USB 连接,并在平板的存储设置中启用 Web 界面。
设置:
- 通过 USB 连接 reMarkable
- 在平板上:设置 → 存储 → 启用 “USB Web 界面”
- 点击上方按钮安装
为什么选择 USB Web?
- ✅ 通过 USB 快速离线访问
- ✅ 无需订阅
- ✅ 简单易用 — 只需在存储设置中启用
📋 手动配置 USB Web
添加到 .vscode/mcp.json:
{
"servers": {
"remarkable": {
"command": "uvx",
"args": ["remarkable-mcp", "--usb"],
"env": {
"GOOGLE_VISION_API_KEY": "your-api-key"
}
}
}
}
故障排除:
- 确保 reMarkable 已通过 USB 连接并解锁
- 确认已在“设置 → 存储”中启用 USB Web 界面
- 平板应可通过
http://10.11.99.1访问
⚡ SSH 模式(高级)
适合需要直接访问文件系统的高级用户。速度比 USB Web 模式更快,但需要启用开发者模式(需恢复出厂设置)。
要求:启用开发者模式 + 通过 USB 连接到 reMarkable
📋 手动配置 SSH
添加到 .vscode/mcp.json:
{
"servers": {
"remarkable": {
"command": "uvx",
"args": ["remarkable-mcp", "--ssh"],
"env": {
"GOOGLE_VISION_API_KEY": "your-api-key"
}
}
}
}
请参阅 SSH 设置指南 了解详细说明。
☁️ 云模式(无线)
适用于无法使用 USB 时的无线或远程访问。需要订阅 reMarkable Connect,速度明显慢于 USB 模式。
📋 云模式设置
1. 获取一次性代码
前往 my.remarkable.com/device/desktop/connect 并生成代码。
2. 转换为令牌
uvx remarkable-mcp --register YOUR_CODE
3. 安装
或者在 .vscode/mcp.json 中手动配置:
{
"inputs": [
{
"type": "promptString",
"id": "remarkable-token",
"description": "reMarkable API Token",
"password": true
},
{
"type": "promptString",
"id": "google-vision-key",
"description": "Google Vision API Key",
"password": true
}
],
"servers": {
"remarkable": {
"command": "uvx",
"args": ["remarkable-mcp"],
"env": {
"REMARKABLE_TOKEN": "${input:remarkable-token}",
"GOOGLE_VISION_API_KEY": "${input:google-vision-key}"
}
}
}
}
连接模式
选择最适合你的连接方式:
| 模式 | 设置难度 | 速度 | 要求 | 适用对象 |
|---|---|---|---|---|
| 🔌 USB Web(推荐) | ✅ 简单 | 快 | USB 数据线,在存储设置中启用 | 所有人 |
| ⚡ SSH | ⚠️ 高级 | 非常快 | 开发者模式,USB 连接 | 高级用户 |
| ☁️ 云端 | ✅ 简单 | 慢 | reMarkable Connect 订阅 | 远程/无线访问 |
📖 详细设置指南:
- USB Web 界面设置 — 推荐 — 设置简单,支持全部功能
- SSH 设置指南 — 适合需要访问文件系统的高级用户
- 云端设置请参阅上文的快速安装部分
OpenClaw 集成
remarkable-mcp 可作为 OpenClaw 技能使用。将以下内容添加到你的 openclaw.json:
{
"mcpServers": {
"remarkable": {
"command": "uvx",
"args": ["remarkable-mcp", "--usb"]
}
}
}
从 ClawHub 安装:
clawhub install remarkable-mcp
或者将此代码库中的 SKILL.md 复制到你的 ~/.openclaw/skills/remarkable-mcp/ 目录中。
工具
| 工具 | 描述 |
|---|---|
remarkable_read | 读取并提取文档中的文本(支持分页和搜索) |
remarkable_browse | 浏览文件夹、按文档名称搜索或按标签筛选 |
remarkable_search | 跨多个文档搜索内容(支持按标签筛选) |
remarkable_recent | 获取最近修改的文档 |
remarkable_status | 检查连接状态 |
remarkable_image | 获取页面的 PNG/SVG 图像(支持通过采样进行 OCR) |
remarkable_upload | 将 PDF 或 EPUB 文件上传到平板电脑上的文件夹 |
remarkable_mkdir | 创建文件夹,支持嵌套路径(mkdir -p) |
remarkable_delete | 删除文档或文件夹(不可撤销) |
remarkable_move | 移动或重命名文档和文件夹 |
所有工具都会返回包含后续操作提示的结构化 JSON。
📖 完整工具文档
Claude Code 集成
将以下内容添加到你的 ~/.claude/settings.json:
{
"mcpServers": {
"remarkable": {
"command": "uvx",
"args": ["remarkable-mcp-rw", "--wifi"],
"env": {
"REMARKABLE_HOST": "http://YOUR_TABLET_IP"
}
}
}
}
WiFi 设置
- 在你的 reMarkable 上:设置 → 存储 → 启用 “USB web interface”
- 查找平板电脑的 IP 地址:设置 → 常规 → 关于 → IP 地址
- 在上方的配置中将
REMARKABLE_HOST设置为http://YOUR_IP - USB Web 界面可通过 USB 和同一网络下的 WiFi 使用
智能功能
- 自动跳转 — 浏览文档路径时会自动返回其内容
- 自动 OCR — 对没有键入文本的笔记本自动启用 OCR
- 批量搜索 — 一次调用即可搜索多个文档
- 视觉支持 — 获取页面图像以提供视觉上下文(图表、模型图、草图)
- 采样 OCR — 使用客户端的 AI 对图像进行 OCR(无需 API 密钥)
- 标签支持 — 按标签筛选和整理文档
使用示例
# Read a document
remarkable_read("Meeting Notes")
# Search for keywords
remarkable_read("Project Plan", grep="deadline")
# Enable OCR for handwritten notes
remarkable_read("Journal", include_ocr=True)
# Browse your library
remarkable_browse("/Work/Projects")
# Filter by tags
remarkable_browse("/", tags=["important"])
remarkable_browse("/Work", tags=["project", "active"])
# Search across documents
remarkable_search("meeting", grep="action items")
# Search with tag filter
remarkable_search("project", tags=["work"])
# Get recent documents
remarkable_recent(limit=10)
# Get a page image (for visual content like UI mockups or diagrams)
remarkable_image("UI Mockup", page=1)
# Get SVG for editing in design tools
remarkable_image("Wireframe", output_format="svg")
# Get image with OCR text extraction (uses sampling if configured)
remarkable_image("Handwritten Notes", include_ocr=True)
# Transparent background for compositing
remarkable_image("Logo Sketch", background="#00000000")
# Compatibility mode: return resource URI instead of embedded resource
remarkable_image("Diagram", compatibility=True)
资源
文档会自动注册为 MCP 资源:
| URI 方案 | 描述 |
|---|---|
remarkable:///{path}.txt | 提取的文本内容 |
remarkableraw:///{path}.pdf | 原始 PDF 文件(仅 SSH) |
remarkableraw:///{path}.epub | 原始 EPUB 文件(仅 SSH) |
remarkableimg:///{path}.page-{N}.png | 第 N 页的 PNG 图像(仅笔记本) |
remarkablesvg:///{path}.page-{N}.svg | 第 N 页的 SVG 矢量图像(仅笔记本) |
📖 完整资源文档
手写内容 OCR
对于手写内容,remarkable-mcp 提供多种 OCR 后端。请根据你的设置和需求进行选择:
| 后端 | 设置 | 质量 | 离线 | 适用对象 |
|---|---|---|---|---|
| Sampling | 无需 API 密钥 | 取决于客户端模型 | ✅ | 使用能力较强的 AI 客户端的用户 |
| Google Vision | API 密钥 | 优秀 | ❌ | 对手写内容识别准确度要求最高 |
| Tesseract | 系统安装 | 手写识别效果较差 | ✅ | 印刷文本、离线备用方案 |
快速设置
在 MCP 配置中设置 REMARKABLE_OCR_BACKEND:
{
"env": {
"REMARKABLE_OCR_BACKEND": "sampling"
}
}
选项: sampling、google、tesseract、auto
📖 Sampling OCR(无需 API 密钥)
使用 MCP 客户端的 AI 模型进行 OCR。适用于支持 MCP sampling 的客户端(VS Code + Copilot、Claude Desktop 等)。
优点:
- 无需额外的 API 密钥
- 识别质量取决于客户端使用的模型(GPT-4、Claude 等)
- 隐私安全——手写内容保留在客户端本地
缺点:
- 仅适用于支持 sampling 的客户端
- 如果 sampling 不可用,则回退到 Google Vision(若已配置 API 密钥)或 Tesseract
📖 Google Cloud Vision
提供稳定出色的手写识别效果。
设置:
- 启用 Cloud Vision API
- 创建 API 密钥
- 添加到配置中:
"GOOGLE_VISION_API_KEY": "your-key"
费用: 每月免费 1,000 次请求,之后每 1,000 次约 $1.50。
📖 Tesseract(备用方案)
面向印刷文本的开源 OCR。手写识别效果较差,但可作为实用的离线备用方案。
# Install Tesseract
# macOS
brew install tesseract
# Ubuntu/Debian
sudo apt install tesseract-ocr
# Windows
choco install tesseract
默认行为(auto)
当 REMARKABLE_OCR_BACKEND=auto(默认值)时:
- Google Vision(如果设置了
GOOGLE_VISION_API_KEY) - Tesseract(备用方案)
SSH 与云端对比
| 功能 | SSH 模式 | 云端 API |
|---|---|---|
| 速度 | ⚡ 快 10-100 倍 | 较慢 |
| 离线 | ✅ 是 | ❌ 否 |
| 订阅 | ✅ 无需订阅 | ❌ 需要 Connect |
| 原始文件 | ✅ PDF、EPUB | ❌ 不可用 |
| 设置 | 开发者模式 | 一次性代码 |
📖 SSH 设置指南
高级配置
根路径筛选
将 MCP 服务限制在 reMarkable 上的特定文件夹。所有操作都将限定在此文件夹内:
{
"servers": {
"remarkable": {
"command": "uvx",
"args": ["remarkable-mcp", "--ssh"],
"env": {
"REMARKABLE_ROOT_PATH": "/Work",
"GOOGLE_VISION_API_KEY": "your-api-key"
}
}
}
}
使用此配置:
remarkable_browse("/")显示/Work的内容remarkable_browse("/Projects")显示/Work/Projects- 无法访问
/Work之外的文档
适用于:
- 办公时间专注于工作文档
- 分开管理个人和工作笔记
- 限定特定 AI 工作流的操作范围
自定义背景颜色
设置图像渲染的默认背景颜色:
{
"servers": {
"remarkable": {
"command": "uvx",
"args": ["remarkable-mcp", "--ssh"],
"env": {
"REMARKABLE_BACKGROUND_COLOR": "#FFFFFF"
}
}
}
}
支持的格式:
#RRGGBB— RGB 十六进制(例如,#FFFFFF表示白色)#RRGGBBAA— RGBA 十六进制(例如,#00000000表示透明)
默认值为 #FBFBFB(reMarkable 纸张颜色)。这会影响 remarkable_image 工具和图像资源。
使用场景
研究与写作
在使用 Obsidian 知识库或类似工具时,使用 remarkable-mcp 将手写笔记中的知识整理到结构化文档中。AI 可以读取研究笔记并协助拓展想法。
每日回顾
让 AI 助手总结近期笔记、查找待办事项,或识别日记条目中的规律。
文档搜索
在整个文档库(包括手写内容)中搜索,找到那条只记得一部分的笔记。
知识管理
将 reMarkable 作为 AI 可以访问的第二大脑。结合 Obsidian 等工具,即可构建强大的个人知识管理系统。
文档
| 指南 | 描述 |
|---|---|
| SSH 设置 | 启用开发者模式并配置 SSH |
| Google Vision 设置 | 设置手写 OCR |
| 工具参考 | 详细的工具文档 |
| 资源参考 | MCP 资源文档 |
| 能力协商 | MCP 协议能力 |
| 开发 | 贡献指南和开发环境设置 |
| 未来计划 | 路线图和计划中的功能 |
Development
git clone https://github.com/SamMorrowDrums/remarkable-mcp.git
cd remarkable-mcp
uv sync --all-extras
uv run pytest test_server.py -v
License
MIT
Built with rmscene, PyMuPDF, and inspiration from ddvk/rmapi.
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。