booklore-MCP

booklore-MCP

An MCP server for BookLore that lets any MCP-compatible assistant talk to your BookLore library: recommend books you already own, organize them into shelves, and send a book to your Kindle, all through BookLore's own REST API.

Category
Visit Server

README

booklore-MCP

An MCP server for BookLore. It lets any MCP-compatible assistant talk to your BookLore library: recommend books you already own, organize them into shelves, and send a book to your Kindle, all through BookLore's own REST API.

Because it speaks the open Model Context Protocol, it works with any MCP client, for example Claude Code, OpenAI Codex CLI, Cursor, Zed, and Windsurf. It runs over stdio and has no UI of its own.

What it can do

Tool Purpose
list_genres List the genres/categories in your library with book counts
search_books Search by genre, author, title, free text, minimum rating, or unread only
get_book Full detail for one book (description, ratings, shelves)
list_shelves List all shelves
create_shelf Create a shelf (deduplicates by name)
add_books_to_shelf Add books to a shelf by id or name (can auto-create)
list_email_recipients List configured email recipients (for example Kindle addresses)
send_to_kindle Send a book using BookLore's native send-to-Kindle email feature

Typical requests, in natural language: "recommend a well rated thriller I have not read", "create a shelf called Summer and add these five", "send Shogun to my Kindle".

Rating note

In many libraries metadata.rating is empty and the real score lives in goodreadsRating or amazonRating. This server computes an effective rating (rating, then Goodreads, then Amazon) so that sorting and min_rating actually work.

Requirements

  • Python 3.10 or newer
  • A reachable BookLore instance and a BookLore user account
  • For send_to_kindle: an email provider (SMTP) and at least one recipient configured in BookLore (Settings, Email), and the sender address approved in Amazon's Approved Personal Document E-mail List

Install

git clone https://github.com/Giorgiofox/booklore-MCP.git
cd booklore-MCP
# install dependencies into a local ./libs folder (works without a virtualenv)
pip install --target ./libs -r requirements.txt
cp .env.example .env   # then edit it
chmod 600 .env

Fill in .env:

BOOKLORE_URL=http://localhost:6060
BOOKLORE_USERNAME=your_user
BOOKLORE_PASSWORD=your_password
# set to false only if the TLS certificate is not valid on this host
BOOKLORE_VERIFY_SSL=true

run.sh loads .env, sets PYTHONPATH to ./libs, and starts the server over stdio.

Configure your MCP client

Point your client at run.sh.

Claude Code, Cursor, and similar (JSON):

{
  "mcpServers": {
    "booklore": {
      "command": "/absolute/path/to/booklore-MCP/run.sh"
    }
  }
}

OpenAI Codex CLI (~/.codex/config.toml):

[mcp_servers.booklore]
command = "/absolute/path/to/booklore-MCP/run.sh"

Restart the client and approve the booklore server when prompted.

How it authenticates

It logs in with POST /api/v1/auth/login to obtain a JWT access token and refreshes it automatically. Credentials stay local in .env, which is git-ignored and never committed.

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured