
一个完整的Calibre MCP服务器,拥有细致的读写/导入权限。本地测试且刚发布,视为Alpha版本。
概览
这个MCP服务器弥合了AI代理与电子书图书馆之间的差距。它使代理能够作为动态知识库与你的藏书互动,从而搜索、管理和阅读你的数字图书馆。与其他MCP服务器不同,如果图书馆权限设置允许,它还能允许AI代理更新图书馆元数据和内容。 - 使用图书元数据查询图书馆或进行全文内容搜索。 - 查看和更新任何书籍的元数据(书名、作者、标签、评分等)。 - 向你的收藏添加新标题或移除已有的标题。 - 利用Calibre强大的转换引擎,实时切换电子书格式(例如PDF转EPUB)。 - 直接在代理的上下文窗口中搜索并阅读书籍文本,用于分析、摘要或问答。 - 为每个库定义严格的访问控制,包括只读模式和现场级写入限制。 - 必须安装在主机系统上。
概述(AI 翻译)
这个MCP服务器弥合了AI代理与你的Calibre电子书图书馆之间的桥梁。它使代理能够作为动态知识库与你的藏书互动,从而搜索、管理和阅读你的数字图书馆。与其他MCP服务器不同,如果图书馆权限设置为允许,它还允许AI代理更新图书馆元数据和内容。
主要特色
-
高级搜索: 使用图书元数据查询图书馆或进行全文内容搜索。
-
元数据管理: 查看并更新任何书籍的元数据(书名、作者、标签、评分等)。
-
图书馆维护: 向你的收藏添加新书目或移除现有书目。
-
格式转换: 利用Calibre强大的转换引擎,实时切换电子书格式(例如PDF转EPUB)。
-
直接阅读: 直接在代理的上下文窗口中搜索并阅读书籍内容,进行分析、摘要或问答。
-
粒度权限: 为每个库定义严格的访问控制,包括只读模式和现场写入限制。
先修条件
- Calibre: 必须安装在主机系统上。
本页由 AI 翻译,技术细节请以原文为准。
README
以下为原文 README 节选,完整内容请查看原文。
Calibre MCP Server
This MCP server bridges the gap between AI agents and your Calibre ebook libraries. It enables agents to interact with your collection as a dynamic knowledge base, allowing them to search, manage, and read your digital libraries. Unlike other MCP servers it can also allow an AI agent to update library metadata and contents if a library’s permissions are set to allow it.
Key Features
-
Advanced Search: Query libraries using book metadata or perform full-text content searches.
-
Metadata Management: View and update metadata (titles, authors, tags, ratings, etc.) for any book.
-
Library Maintenance: Add new titles to your collection or remove existing ones.
-
Format Conversion: Leverage Calibre’s powerful conversion engine to switch between ebook formats (e.g., PDF to EPUB) on the fly.
-
Direct Reading: Search and read the text content of a book directly into the agent’s context window for analysis, summarization, or Q&A.
-
Granular Permissions: Define strict access controls per library, including read-only modes and field-level write restrictions.
Prerequisites
-
Calibre: Must be installed on the host system. This server utilizes
calibre-debugto execute worker processes. -
Concurrency Note: Calibre does not support concurrent access to a single library. Do not point an agent to a library currently being used by the Calibre desktop application or other calibre processes to avoid database corruption. Setting a
worker_timeoutcan reduce the risk of this happening accidentally, but don’t rely on that to protect your libraries. Be aware of what you’re doing.
Configuration
The server is configured via a JSON file. Since JSON does not support comments, use the structure below as a template.
Example Configuration (config.json)
JSON
{
"libraries": {
"default": {
"path": "d:/ebooks/main_library",
"description": "The primary research library containing technical manuals.",
"default": true,
"permissions": {
"read": ["title", "authors", "tags", "rating", "comments"],
"write": ["tags", "rating", "comments"],
"delete": false,
"convert": true
},
"import": {
"allowed_paths": ["d:/downloads/ebook_imports"],
"allow_delete_source": false
},
"export": {
"allowed_paths": ["d:/ebook_exports"s],
"allow_overwrite_destination": false
},
"worker_timeout": 300
}
},
"port": 8000,
"enable_worker_logging": false,
"expose_resources_via_tools": true,
"log_level": "warning"
}
Configuration Schema Reference
Each library is identified by a unique text key and can have its own separate configuration values:
安装
uvx --from github.com/FaceDeer/calibre_full_mcp_server calibre-full-mcp配置
{
"mcpServers": {
"calibre": {
"command": "uvx",
"args": [
"--from",
"github.com/FaceDeer/calibre_full_mcp_server",
"calibre-full-mcp"
],
"env": {
"CALIBREMCP_CONFIGPATH": "<full path to your config.json>"
}
}
}
}