Apple Books MCP
An MCP server that allows AI agents to access the user's Apple Books library, including reading progress, highlights, annotations, and book search capabilities. It supports listing collections, retrieving chapter text, and clustering highlights by theme to aid in reading reflection and discovery.
Package and access
Local package with source-attributed installation metadata. Koskamo does not execute packages during review.
Checks and signals
Each line is separate evidence, not a trust score.
- Popularity 64 GitHub stars
What you can do with it
- Retrieve current reading progress and chapter text
- Search for books by title or author
- List and manage reading collections
- Cluster highlights by theme for reflection
Source and maintenance
- Last repository push
- Latest release
- v0.9.0
- Maintenance checked
Packages and installation
Source-provided package data. Koskamo has not executed or live-probed this package.
apple-books-mcp 0.9.0
{
"version": "0.9.0",
"transport": "stdio",
"identifier": "apple-books-mcp",
"runtimeHint": "uvx",
"registryType": "pypi",
"registryBaseUrl": "https://pypi.org",
"environmentVariables": [
{
"name": "APPLE_BOOKS_MCP_ENABLE_WRITES",
"format": "boolean",
"default": "false",
"description": "Allow the collection write tools (create, rename and delete collections; add and remove books). Writes refuse to run while Books is open and take a backup first."
},
{
"name": "APPLE_BOOKS_DATA_DIR",
"format": "filepath",
"description": "Folder holding the Apple Books stores (BKLibrary and AEAnnotation), if not ~/Library/Containers/com.apple.iBooksX/Data/Documents."
},
{
"name": "APPLE_BOOKS_MCP_THREADS",
"format": "number",
"default": "8",
"description": "How many tool calls may run at once (default 8; 0 runs them one at a time on the event loop)."
},
{
"name": "APPLE_BOOKS_QUERY_TIMEOUT",
"format": "number",
"default": "30",
"description": "Seconds a library query may run before it is stopped (default 30; 0 for no limit)."
}
]
}Tools
Reported by the attributed source; not independently observed by Koskamo.
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · repository · passed · metadata changed · updated
- · backfill · recorded · Pre-expansion baseline; unobserved rich metadata remains unknown
Connect from your client
Each snippet configures the same source-provided package; replace placeholders before use.
Cursor
{
"mcpServers": {
"apple-books-mcp-mcp": {
"command": "uvx",
"args": [
"apple-books-mcp==0.9.0"
],
"env": {
"APPLE_BOOKS_MCP_ENABLE_WRITES": "<YOUR_APPLE_BOOKS_MCP_ENABLE_WRITES>",
"APPLE_BOOKS_DATA_DIR": "<YOUR_APPLE_BOOKS_DATA_DIR>",
"APPLE_BOOKS_MCP_THREADS": "<YOUR_APPLE_BOOKS_MCP_THREADS>",
"APPLE_BOOKS_QUERY_TIMEOUT": "<YOUR_APPLE_BOOKS_QUERY_TIMEOUT>"
}
}
}
}Cline
{
"mcpServers": {
"apple-books-mcp-mcp": {
"command": "uvx",
"args": [
"apple-books-mcp==0.9.0"
],
"env": {
"APPLE_BOOKS_MCP_ENABLE_WRITES": "<YOUR_APPLE_BOOKS_MCP_ENABLE_WRITES>",
"APPLE_BOOKS_DATA_DIR": "<YOUR_APPLE_BOOKS_DATA_DIR>",
"APPLE_BOOKS_MCP_THREADS": "<YOUR_APPLE_BOOKS_MCP_THREADS>",
"APPLE_BOOKS_QUERY_TIMEOUT": "<YOUR_APPLE_BOOKS_QUERY_TIMEOUT>"
}
}
}
}VS Code
{
"servers": {
"apple-books-mcp-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"apple-books-mcp==0.9.0"
],
"env": {
"APPLE_BOOKS_MCP_ENABLE_WRITES": "<YOUR_APPLE_BOOKS_MCP_ENABLE_WRITES>",
"APPLE_BOOKS_DATA_DIR": "<YOUR_APPLE_BOOKS_DATA_DIR>",
"APPLE_BOOKS_MCP_THREADS": "<YOUR_APPLE_BOOKS_MCP_THREADS>",
"APPLE_BOOKS_QUERY_TIMEOUT": "<YOUR_APPLE_BOOKS_QUERY_TIMEOUT>"
}
}
}
}Claude Desktop
{
"mcpServers": {
"apple-books-mcp-mcp": {
"command": "uvx",
"args": [
"apple-books-mcp==0.9.0"
],
"env": {
"APPLE_BOOKS_MCP_ENABLE_WRITES": "<YOUR_APPLE_BOOKS_MCP_ENABLE_WRITES>",
"APPLE_BOOKS_DATA_DIR": "<YOUR_APPLE_BOOKS_DATA_DIR>",
"APPLE_BOOKS_MCP_THREADS": "<YOUR_APPLE_BOOKS_MCP_THREADS>",
"APPLE_BOOKS_QUERY_TIMEOUT": "<YOUR_APPLE_BOOKS_QUERY_TIMEOUT>"
}
}
}
}Let your agent find its tools
Find servers like Apple Books MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.