kiseki-labs-readwise-mcp
Kiseki-Labs-Readwise-MCP is an MCP Server that interfaces with the Readwise API to programmatically manage documents and highlights. Developed by Kiseki Labs, it provides tools to search and filter documents and highlights, enhancing interaction with Readwise data.
Kiseki-Labs-Readwise-MCP
Overview
Kiseki-Labs-Readwise-MCP
is a Model Context Protocol (MCP) Server designed to interact with the Readwise API.
It allows language models to access and manipulate your Readwise documents and highlights programmatically. This server is developed by Kiseki Labs.
Installation
-
Clone the repository:
git clone <your-repository-url> cd readwise_mcp
-
Initialise dependencies with uv (Assuming you have uv installed)
uv sync
Configuration
This server requires a Readwise API key to function.
- Obtain your API key from Readwise.
- Create a
.env
file in the root directory of the project. - Add your API key to the
.env
file:
The server usesREADWISE_API_KEY=your_readwise_api_key_here
python-dotenv
to automatically load this variable when run.
Available Tools
The server exposes the following tools for interaction:
find_readwise_document_by_name(document_name: str) -> Book | None
: Finds a specific document in Readwise by its exact name.list_readwise_documents_by_filters(document_category: str = "", from_date: Optional[date] = None, to_date: Optional[date] = None) -> List[Book]
: Lists documents based on category (e.g., 'books', 'articles') and/or a date range. Requires at least one filter.get_readwise_highlights_by_document_ids(document_ids: List[int]) -> List[Highlight]
: Retrieves all highlights associated with a list of specific document IDs.get_readwise_highlights_by_filters(from_date: Optional[date] = None, to_date: Optional[date] = None, tag_names: List[str] = []) -> List[Highlight]
: Fetches highlights based on a date range and/or a list of tags. Requires at least one filter.
(Note: Book
and Highlight
refer to the data structures defined in the readwise_mcp.types
module.)
Running the Server
Development Mode
To run the MCP server in dev mode, execute the following command from the project's root directory:
uv run mcp dev server.py
The dev server will start and become accessible online by default on http://127.0.0.1:6274/ if you haven't modified the host and port.
Installing the MCP Server with Claude
On MacBook open the file below in your favourite text editor:
~/Library/Application\ Support/Claude/claude_desktop_config.json
For instance using vim open this file you can run the command:
vim ~/Library/Application\ Support/Claude/claude_desktop_config.json
Then add the appropriate entry under the mcpServers
object, like in the example below:
"mcpServers": {
"Kiseki-Labs-Readwise-MCP": {
"command": "/Users/eddie/.pyenv/shims/uv",
"args": [
"run",
"--with",
"fastmcp",
"fastmcp",
"run",
"/Users/eddie/Development/AI/mcp_servers/readwise_mcp/server.py"
]
}
...
Save the file with those changes.
Finally, restart Claude. After restart, the Kiseki-Labs-Readwise-MCP
MCP Server should be available.