Skip to main content

Model Context Protocol (MCP) server for Apple Books

Project description

Apple Books MCP

Model Context Protocol (MCP) server for Apple Books.

PyPI License: Apache 2.0 Buy Me A Coffee

At a glance

  • Ask Claude to summarize your recent highlights
  • Ask Claude to organize books in your library by genre
  • Ask Claude to recommend similar books based on your reading history
  • Ask Claude to compare notes from different books read on the same subject

https://github.com/user-attachments/assets/77a5a29b-bfd7-4275-a4af-8d6c51a4527e

And much more!

Available Tools

Tool Description Parameters
list_collections() List all collections None
get_collection_books(collection_id) Get all books in a collection collection_id: str
describe_collection(collection_id) Get details of a collection collection_id: str
list_all_books() List all books None
get_book_annotations(book_id) Get all annotations for a book book_id: str
describe_book(book_id) Get details of a particular book book_id: str
list_all_annotations() List all annotations None
get_highlights_by_color(color) Get all highlights by color color: str
search_highlighted_text(text) Search for highlights by highlighted text text: str
search_notes(note) Search for notes note: str
full_text_search(text) Search for annotations containing the given text text: str
recent_annotations() Get 10 most recent annotations None
describe_annotation(annotation_id) Get details of an annotation annotation_id: str

Installation

Using uv (recommended)

uvx can be used to directly run apple-books-mcp (without installing it).

brew install uv  # for macos
uvx apple-books-mcp

Using pip

pip install apple-books-mcp

After installing, you can run the server using:

python -m apple_books_mcp

Configuration

Claude Desktop Setup

Using uvx (recommended)

{
    "mcpServers": {
        "apple-books-mcp": {
            "command": "uvx",
            "args": [ "apple-books-mcp" ]
        }
    }
}

Using python

{
    "mcpServers": {
        "apple-books-mcp": {
            "command": "python",
            "args": ["-m", "apple_books_mcp"]
        }
    }
}

Upcoming Features

  • add docker support
  • add resources support
  • edit collections support
  • edit highlights support

Contribution

Thank you for considering contributing to this project!

Development

If you cloned this repository, you can test it using Claude Desktop with below configuration:

Use uv venv to create a virtual environment and install the dependencies.

uv venv
uv sync

Debugging

With Claude Desktop

{
    "mcpServers": {
        "apple-books-mcp": {
            "command": "uv",
            "args": [
                "--directory",
                "/path/to/apple-books-mcp/",
                "run",
                "apple_books_mcp",
                "-v"
            ]
        }
    }
}

With inspector

npx @modelcontextprotocol/inspector uvx apple-books-mcp

Opening Issues

If you encounter a bug, have a feature request, or want to discuss something related to the project, please open an issue on the GitHub repository. When opening an issue, please provide:

Bug Reports: Describe the issue in detail. Include steps to reproduce the bug if possible, along with any error messages or screenshots.

Feature Requests: Clearly explain the new feature you'd like to see added to the project. Provide context on why this feature would be beneficial.

General Discussions: Feel free to start discussions on broader topics related to the project.

Contributing

1️⃣ Fork the GitHub repository https://github.com/vgnshiyer/apple-books-mcp
2️⃣ Create a new branch for your changes (git checkout -b feature/my-new-feature).
3️⃣ Make your changes and test them thoroughly.
4️⃣ Push your changes and open a Pull Request to main.

Please provide a clear title and description of your changes.

License

Apple Books MCP is licensed under the Apache 2.0 license. See the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

apple_books_mcp-0.1.5.tar.gz (9.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

apple_books_mcp-0.1.5-py3-none-any.whl (9.6 kB view details)

Uploaded Python 3

File details

Details for the file apple_books_mcp-0.1.5.tar.gz.

File metadata

  • Download URL: apple_books_mcp-0.1.5.tar.gz
  • Upload date:
  • Size: 9.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for apple_books_mcp-0.1.5.tar.gz
Algorithm Hash digest
SHA256 ffdc4454f28ad9c69dbcd3c8bbe0efa3881259196400222ec28c3e3ef123e84a
MD5 cf9f7bb4d929b4d693f98c732e5caa58
BLAKE2b-256 49edeaac5ea614ffc2a8e59b91f7e545b27a07fc1774998d664a9caee71ddfd0

See more details on using hashes here.

Provenance

The following attestation bundles were made for apple_books_mcp-0.1.5.tar.gz:

Publisher: publish.yml on vgnshiyer/apple-books-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file apple_books_mcp-0.1.5-py3-none-any.whl.

File metadata

File hashes

Hashes for apple_books_mcp-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 d8ca6a6814d8aabc9f21ee1a130f41bf2446cd82b1c919abc496b5fc095bd482
MD5 ebaa15fca52ed7d9d6c00360e80562fe
BLAKE2b-256 0acdbd6ac21964adc2f579ef3db49e4b8a196aa9b462f731c838794778e59f0b

See more details on using hashes here.

Provenance

The following attestation bundles were made for apple_books_mcp-0.1.5-py3-none-any.whl:

Publisher: publish.yml on vgnshiyer/apple-books-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page