Readwise
效率与工作流by IAmAlexander
管理 Readwise 资料库,搜索、整理并维护 highlights、文档和视频,支持笔记、标签、阅读进度、批量操作与保存网页内容。
什么是 Readwise?
管理 Readwise 资料库,搜索、整理并维护 highlights、文档和视频,支持笔记、标签、阅读进度、批量操作与保存网页内容。
核心功能 (30 个工具)
get_highlightsRetrieve highlights from your Readwise library
get_booksGet a list of books from Readwise
get_documentsRetrieve documents from your Readwise library
search_highlightsSearch for highlights in your Readwise library
get_tagsGet a list of all tags from Readwise
document_tagsGet, update, add, or remove tags for a document in Readwise
bulk_tagsAdd tags to multiple documents in Readwise
get_reading_progressGet the reading progress of a document from your Readwise library
update_reading_progressUpdate the reading progress of a document in your Readwise library
get_reading_listGet a list of documents with their reading progress from your Readwise library
create_highlightCreate a new highlight in your Readwise library
update_highlightUpdate an existing highlight in your Readwise library
delete_highlightDelete a highlight from your Readwise library
create_noteCreate a note on a highlight in your Readwise library
advanced_searchSearch highlights with advanced filters and facets
search_by_tagSearch highlights by tags
search_by_dateSearch highlights by date range
get_videosGet videos from Readwise library
get_videoGet video details by document ID
create_video_highlightCreate a highlight on a video at a specific timestamp
get_video_highlightsGet all highlights from a specific video
update_video_positionUpdate the playback position of a video
get_video_positionGet the current playback position of a video
save_documentSave a new document (URL, article, or webpage) to your Readwise library
update_documentUpdate metadata for an existing document in your Readwise library
delete_documentDelete a document from your Readwise library (requires confirmation)
get_recent_contentGet the most recently added or updated content from your Readwise library
bulk_save_documentsSave multiple documents (URLs, articles, or webpages) to your Readwise library in bulk (requires confirmation)
bulk_update_documentsUpdate metadata for multiple documents in your Readwise library in bulk (requires confirmation)
bulk_delete_documentsDelete multiple documents from your Readwise library in bulk (requires confirmation)
README
Readwise MCP Server
A Model Context Protocol (MCP) server for Readwise, allowing AI assistants to access your saved articles, books, highlights, and documents.
Features
- Books & Articles: Browse your collection of saved books and articles
- Highlights: Access all your highlighted passages
- Search: Find content across your entire Readwise library
- Recent Content: Quickly retrieve your latest saved items
- Tag Management: Organize and filter content with tags
- Advanced Search: Powerful filtering by author, date, tags, and more
- Reading Progress: Track your reading status and completion percentage
- Bulk Operations: Efficiently manage multiple documents at once
- Content Management: Save, update, and delete content in your library
- Video Support: Access and interact with videos saved in your Readwise Reader
- Rate Limiting: Smart handling of API limits to prevent throttling
- Transport Options: Support for both stdio (Claude Desktop) and SSE (web) transports
- MCP Compliance: Full protocol compliance with proper request_id handling
Installation
Installing via Smithery
To install Readwise MCP for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @iamalexander/readwise-mcp --client claude
Installing Manually
-
Obtain a Readwise API Token:
- Log in to your Readwise account
- Go to https://readwise.io/access_token to generate your API token
- Copy the token for later use
-
Install from npm:
bashnpm install -g readwise-mcp -
Or clone and build:
bashgit clone https://github.com/IAmAlexander/readwise-mcp.git cd readwise-mcp npm install npm run build -
Configure your API key:
bash# Run the setup wizard npm run setup # Or start with the API key directly readwise-mcp --api-key YOUR_API_KEY
Docker Support
If you prefer using Docker:
-
Create config directory:
bashmkdir -p ~/.readwise-mcp -
Build and run:
bashdocker build -t readwise-mcp . docker run -p 3001:3001 -e READWISE_API_KEY=your_key readwise-mcp
Usage Examples
Once connected to Claude, unleash your Readwise knowledge with questions like:
- "Find my highlights about 'vibes-first programming' and aesthetic IDEs"
- "What did I save about Claude Code's secret Easter eggs?"
- "Show me all articles tagged with 'AI' and 'productivity'"
- "What's in my reading list that I haven't started yet?"
- "Find articles by Paul Graham that I saved in the last 3 months"
- "Show me books I've completed reading"
- "Save this article to my Readwise: https://example.com/interesting-article"
- "Add the tag 'must-read' to that article about quantum computing"
- "What's my reading progress on that book about machine learning?"
Video-Related Examples
- "Show me all YouTube videos I've saved in Readwise"
- "What highlights did I make on that video about TypeScript?"
- "What's my current playback position for that AI conference video?"
- "Find videos in my library that mention 'machine learning'"
- "Create a highlight at 23:45 in the TypeScript tutorial with the note 'Important pattern'"
- "What did the speaker say around the 15-minute mark in that AI safety video?"
- "Show me the transcript of the programming tutorial I saved yesterday"
Feature Documentation
Basic Features
Browsing Content
- List books and articles: Retrieve your saved books with pagination
- Get highlights: Access all your highlighted passages with filtering options
- Search content: Full-text search across your entire library
- Get recent content: Quickly access your latest saved items
Tag Management
Organize your content with tags:
- List all tags: Get all tags in your library
- Get tags for a document: View tags on a specific document
- Update tags: Replace all tags on a document
- Add a specific tag: Add a single tag to a document
- Remove a specific tag: Remove a tag from a document
- Bulk tagging: Apply tags to multiple documents at once
Advanced Search
Powerful filtering options for finding exactly what you need:
query: Search textcategory: Filter by content type (book, article, etc.)tags: Filter by tags (comma-separated)author: Filter by authortitle: Filter by titlelocation: Filter by location (new, later, archive, feed)dateFrom&dateTo: Date range in ISO 8601 formatsortBy: Field to sort by (created_at, updated_at, title, author)sortOrder: Sort direction (asc, desc)
Reading Progress Tracking
Track your reading status and progress:
- Get reading progress: View current progress on any document
- Update reading progress: Set status, percentage, and page numbers
- Get reading list: Filter by reading status
Reading statuses:
not_started: Haven't begun readingin_progress: Currently readingcompleted: Finished reading
Video Features
Access and interact with videos saved in your Readwise Reader:
Video Listing and Details
- List all videos: Browse videos from YouTube, Vimeo, and other platforms
- Get video details with transcript: Access complete metadata and time-synced transcripts
Video Highlights
- Create highlight with timestamp: Mark important moments in videos
- Get video highlights: Retrieve all highlights for a video, sorted by timestamp
Video Playback Position
- Update playback position: Save your current position for later resuming
- Get playback position: Resume where you left off
How Transcript Access Works
The video transcript feature:
- Extracts the time-synced transcript from the video's HTML content
- Parses timestamp and text pairs
- Returns transcript as an array of segments with timestamps
This allows you to:
- Search for specific content within videos
- Create highlights at precise moments
- Jump directly to important points
- Reference video content with exact time context
Content Management
Save, update, and delete content:
- Save new content: Add URLs, articles, or custom content to your library
- Update document: Modify title, author, summary, tags, and more
- Delete document: Remove content (with safety confirmation)
Bulk Operations
Efficiently manage multiple documents at once:
- Bulk save: Save multiple URLs/content items
- Bulk update: Update multiple documents
- Bulk delete: Remove multiple documents
- Bulk tag: Apply tags to multiple documents
Safety Confirmations
All bulk operations and deletions require explicit confirmation to prevent accidental data loss:
- Single document deletion: Requires confirmation parameter
- Bulk operations: Require specific confirmation strings
These confirmations act as a "human in the loop" safety mechanism.
API Status
Check the API status and rate limit information at any time.
Available Tools
The server provides 30 tools for interacting with your Readwise library:
Core Tools
- get_highlights: Retrieve highlights with filtering and pagination
- get_books: Get books from your library
- get_documents: Get documents from your library
- search_highlights: Search for highlights by query
- get_tags: List all tags in your library
- get_recent_content: Get recently saved content
Tag Management
- document_tags: Get, update, add, or remove tags on a document
- bulk_tags: Apply tags to multiple documents
Reading Progress
- get_reading_progress: Get progress on a specific document
- update_reading_progress: Update reading status and progress
- get_reading_list: Get documents filtered by reading status
Highlight Management
- create_highlight: Create a new highlight
- update_highlight: Modify an existing highlight
- delete_highlight: Remove a highlight
- create_note: Add a note to a highlight
Search Tools
- advanced_search: Powerful multi-parameter search
- search_by_tag: Find content by tags
- search_by_date: Find content by date range
Video Tools
- get_videos: List videos in your library
- get_video: Get video details with transcript
- create_video_highlight: Create highlight with timestamp
- get_video_highlights: Get all highlights for a video
- update_video_position: Save playback position
- get_video_position: Get saved playback position
Document Management
- save_document: Save new content to library
- update_document: Modify document metadata
- delete_document: Remove a document
Bulk Operations
- bulk_save_documents: Save multiple documents
- bulk_update_documents: Update multiple documents
- bulk_delete_documents: Delete multiple documents
Available Resources
MCP Resources provide direct data access for LLM clients:
- books (
readwise://books): List of books in your Readwise library - recent-highlights (
readwise://highlights/recent): Recent highlights from your library - tags (
readwise://tags): List of all tags in your Readwise library
Available Prompts
-
readwise_highlight: Process highlights from Readwise
- Supports summarization, analysis, connection finding, and question generation
- Includes robust error handling and parameter validation
- Formats highlights in a reader-friendly way
-
readwise_search: Search and process highlights from Readwise
- Provides formatted search results with source information
- Handles API errors gracefully with user-friendly messages
- Includes validation for required parameters
Demo and Testing
The repository includes demo files to help you test and explore functionality:
Demo Files
- demo/test-connection.html: Test basic connection to the server
- demo/mcp-demo.html: Comprehensive UI for all features
- demo/video-features.html: Specialized interface for video functionality
- demo/enhanced-transcript-features.html: Advanced transcript features
Running Tests
# Run the full test suite
npm test
# Run automated inspector tests
npm run test-inspector
# Test without a real API key (mock mode)
npm run test-mock
Testing with MCP Inspector
# Test with stdio transport (default)
./scripts/inspector.sh
# Test with SSE transport
./scripts/inspector.sh -t sse -p 3001
# Enable debug mode
./scripts/inspector.sh -d
Integration
Claude Desktop
Add to your Claude Desktop config:
- Linux:
~/.config/Claude/claude_desktop_config.json - Mac:
~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"readwise": {
"command": "readwise-mcp",
"env": {
"READWISE_API_KEY": "your_api_key_here"
}
}
}
}
Cursor
Add to .cursor/mcp.json in your project:
{
"mcpServers": {
"readwise": {
"command": "readwise-mcp",
"env": {
"READWISE_API_KEY": "your_api_key_here"
}
}
}
}
Claude Code
Install via CLI:
claude mcp add readwise-mcp --transport http https://server.smithery.ai/@IAmAlexander/readwise-mcp/mcp
Or use the JSON config format:
{
"mcpServers": {
"readwise-mcp": {
"type": "http",
"url": "https://server.smithery.ai/@IAmAlexander/readwise-mcp/mcp"
}
}
}
Deployment
Smithery
Install via Smithery CLI:
npx @smithery/cli install @iamalexander/readwise-mcp --client claude
Or find it on the Smithery Registry.
Railway (One-Click Deploy)
- Click the button above or go to Railway
- Connect your GitHub repo
- Add environment variable:
READWISE_API_KEY - Deploy!
Render
- Create a new Web Service on Render
- Connect your GitHub repo
- Render will auto-detect
render.yaml - Add environment variable:
READWISE_API_KEY - Deploy!
Docker
docker build -t readwise-mcp .
docker run -p 3001:3001 -e READWISE_API_KEY=your_key readwise-mcp
Troubleshooting
Token Issues
If you encounter authentication issues:
- Verify your Readwise API token is still valid at https://readwise.io/access_token
- Reset authentication by deleting stored credentials:
bash
rm ~/.readwise-mcp/credentials.json - Restart and try connecting again
Connection Issues
If the server cannot connect:
- Ensure the server is running (if manually started)
- Check that port 3001 is not being used by another application
- Restart your AI client (Claude Desktop, Cursor, etc.)
Rate Limiting
The server includes built-in rate limiting. If you encounter rate limit errors:
- Wait a few minutes before trying again
- Reduce the frequency of requests
- Check the rate limit headers in responses
Video-Specific Issues
- Missing transcripts: Not all videos have transcripts. YouTube videos typically have the best support.
- Transcript quality: Transcripts are from the video platform and may contain errors.
- Timestamp inconsistencies: Different platforms use different formats; the API normalizes when possible.
- Playback position not updating: Ensure both
positionanddurationparameters are provided.
Privacy & Security
- Your Readwise API token is stored securely on your local machine
- Your Readwise data is only accessed when explicitly requested
- No data is permanently stored on the MCP server
- Safety confirmations prevent accidental data loss
Development
# Build the project
npm run build
# Run tests
npm test
# Start in development mode with auto-reload
npm run dev:watch
# Lint code
npm run lint
Project Structure
- src/: Main source code
- test-scripts/: Test scripts and utilities
- examples/: Example implementations
- demo/: Interactive HTML demos
- tests/: Test suites
Contributing
Found a bug? Have an idea for a feature? Want to make this MCP server even more awesome? Contributions are welcome and encouraged!
How to Contribute
- Fork this repo (preferably while sipping your beverage of choice)
- Create your feature branch (
git checkout -b feature/my-amazing-idea) - Write some vibes-optimized code (RGB comments optional but appreciated)
- Commit your changes (
git commit -m 'Add mind-blowing feature') - Push to the branch (
git push origin feature/my-amazing-idea) - Open a Pull Request and wait for the dopamine hit when it gets merged
All contributions, big or small, practical or whimsical, are valued!
License
MIT License
Copyright (c) 2023 Alexander
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
常见问题
Readwise 是什么?
管理 Readwise 资料库,搜索、整理并维护 highlights、文档和视频,支持笔记、标签、阅读进度、批量操作与保存网页内容。
Readwise 提供哪些工具?
提供 30 个工具,包括 get_highlights、get_books、get_documents 等。
相关 Skills
表格处理
by anthropics
围绕 .xlsx、.xlsm、.csv、.tsv 做读写、修复、清洗、格式整理、公式计算与格式转换,适合修改现有表格、生成新报表或把杂乱数据整理成交付级电子表格。
✎ 做 Excel/CSV 相关任务很省心,能直接读写、修复、清洗和格式转换,尤其擅长把乱七八糟的表格整理成交付级文件。
PDF处理
by anthropics
遇到 PDF 读写、文本表格提取、合并拆分、旋转加水印、表单填写或加解密时直接用它,也能提取图片、生成新 PDF,并把扫描件通过 OCR 变成可搜索文档。
✎ PDF杂活别再来回切工具了,文本表格提取、合并拆分到OCR识别一次搞定,连扫描件也能变可搜索。
Word文档
by anthropics
覆盖Word/.docx文档的创建、读取、编辑与重排,适合生成报告、备忘录、信函和模板,也能处理目录、页眉页脚、页码、图片替换、查找替换、修订批注及内容提取整理。
✎ 搞定 .docx 的创建、改写与精排版,目录、批量替换、批注修订和图片更新都能自动化,做正式文档尤其省心。
相关 MCP Server
文件系统
编辑精选by Anthropic
Filesystem 是 MCP 官方参考服务器,让 LLM 安全读写本地文件系统。
✎ 这个服务器解决了让 Claude 直接操作本地文件的痛点,比如自动整理文档或生成代码文件。适合需要自动化文件处理的开发者,但注意它只是参考实现,生产环境需自行加固安全。
by wonderwhy-er
Desktop Commander 是让 AI 直接执行终端命令、管理文件和进程的 MCP 服务器。
✎ 这工具解决了 AI 无法直接操作本地环境的痛点,适合需要自动化脚本调试或文件批量处理的开发者。它能让你用自然语言指挥终端,但权限控制需谨慎,毕竟让 AI 执行 rm -rf 可不是闹着玩的。
EdgarTools
编辑精选by dgunning
EdgarTools 是无需 API 密钥即可解析 SEC EDGAR 财报的开源 Python 库。
✎ 这个工具解决了金融数据获取的痛点——直接让 AI 读取结构化财报,比如让 Claude 分析苹果的 10-K 文件。适合量化分析师或金融开发者快速构建数据管道。但注意,它依赖 SEC 网站稳定性,高峰期可能延迟。