Readwise Reader
An MCP server for the Readwise Reader API to access and manage your articles and highlights.
Readwise Reader MCP Server
A Model Context Protocol (MCP) server for the Readwise Reader API, built with TypeScript and the official Claude SDK.
Features
- Secure Authentication: Uses environment variables for token storage
- Document Management: Save, list, update, and delete documents with complete metadata
- Tag Management: List and filter by tags
- Rich Filtering: Filter documents by location, category, tags, and more
- Pagination Support: Handle large document collections
- LLM-Friendly Content: HTML content automatically converted to clean text using r.jina.ai
- Complete Data Access: Returns full document information including content, metadata, and timestamps
API Documentation
For detailed information about the Readwise Reader API endpoints, parameters, and examples, please refer to the official API documentation:
📖 Readwise Reader API Documentation
This MCP server implements all the core endpoints described in the official documentation.
Installation
npm install
npm run build
Configuration
With Claude Desktop
-
Build the MCP server:
npm install npm run build -
Get your Readwise access token from: https://readwise.io/access_token
-
Add the server to your Claude Desktop configuration. Open your Claude Desktop settings and add this to your MCP servers configuration:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:%APPDATA%\Claude\claude_desktop_config.json{ "mcpServers": { "readwise-reader": { "command": "node", "args": ["/path/to/your/reader_readwise_mcp/dist/index.js"], "env": { "READWISE_TOKEN": "your_readwise_access_token_here" } } } }Replace:
/path/to/your/reader_readwise_mcpwith the actual path to this project directoryyour_readwise_access_token_herewith your actual Readwise access token
-
Restart Claude Desktop
Available Tools
readwise_save_document
Save a document (URL or HTML content) to Readwise Reader.
Parameters:
url(required): URL of the document to savehtml(optional): HTML content of the documenttags(optional): Array of tags to addlocation(optional): Location to save (new,later,shortlist,archive,feed)category(optional): Document category (article,book,tweet,pdf,email,youtube,podcast)
readwise_list_documents
List documents from Readwise Reader with optional filtering. Returns complete document information including metadata and LLM-friendly text content.
Parameters:
id(optional): Filter by specific document IDupdatedAfter(optional): Filter documents updated after this date (ISO 8601)location(optional): Filter by document locationcategory(optional): Filter by document categorytag(optional): Filter by tag namepageCursor(optional): Page cursor for paginationwithHtmlContent(optional): ⚠️ PERFORMANCE WARNING: Include HTML content in the response. This significantly slows down the API. Only use when explicitly requested by the user or when raw HTML is specifically needed for the task.withFullContent(optional): ⚠️ PERFORMANCE WARNING: Include full converted text content in the response. This significantly slows down the API as it fetches and processes each document's content. Only use when explicitly requested by the user or when document content is specifically needed for analysis/reading. Default: false for performance.
Returns: Complete document objects with all available fields:
id,title,author,url,source_url,summarypublished_date,image_url,location,categorytags,created_at,updated_atcontent: LLM-friendly text content (converted from source_url or url via r.jina.ai)
readwise_update_document
Update a document in Readwise Reader.
Parameters:
id(required): Document ID to updatetitle(optional): New titleauthor(optional): New authorsummary(optional): New summarypublished_date(optional): New published date (ISO 8601)image_url(optional): New image URLlocation(optional): New locationcategory(optional): New category
readwise_delete_document
Delete a document from Readwise Reader.
Parameters:
id(required): Document ID to delete
readwise_list_tags
List all tags from Readwise Reader.
Parameters: None
readwise_topic_search
Search documents in Readwise Reader by topic using regex matching on title, summary, notes, and tags.
Parameters:
searchTerms(required): Array of search terms to match against document content (case-insensitive regex matching)
Returns: Search results with matching documents including:
- Search terms used
- Total number of matches
- Complete document objects with all available metadata (same fields as
readwise_list_documents)
Authentication
The server requires a Readwise access token to be provided via the READWISE_TOKEN environment variable. This token is used to authenticate all API requests to Readwise Reader.
Security Note: The token is stored in your MCP configuration and never exposed through Claude or the tools interface.
Rate Limits
- Default: 20 requests/minute
- Document CREATE/UPDATE: 50 requests/minute
- 429 responses include "Retry-After" header
License
MIT
Related Servers
screenpipe
use 24/7 desktop memory as context in AI
Notion
Integrates with Notion's API to manage a personal todo list.
ClickUp
Integrate AI assistants with ClickUp for productivity and project management.
AutoWP
Connects Claude to WordPress sites to create posts and manage sites using the WordPress REST API.
JotForm
An MCP server for interacting with the Jotform API to manage online forms and submissions.
Google Docs
A Model Context Protocol (MCP) server for integrating Google Docs with AI clients.
Pandoc
A server for converting document formats using Pandoc.
Dooray MCP Server
Manage schedules using the Dooray API. Requires API key, member ID, and calendar ID to be configured.
MCP Voice Assistant
A voice-enabled AI personal assistant that integrates multiple tools and services through natural voice interactions using MCP.
Jira MCP
The most robust Jira MCP safe for internal corporate use.