mcpField
C
calibredb

calibredb

github.com/lvtd-llc文档处理175 次安装7 周前更新
代码仓库

关于 calibredb

CalibreDB 技能为使用命令行操作 Calibre 书库提供流程指引,适合需要查询或维护图书记录的用户。它强调先只读检查、明确书库路径,并在破坏性操作前确认意图。

主要功能

  1. 01指定本地书库或 Content server
  2. 02查询书目并查看元数据
  3. 03添加书籍与更新字段
  4. 04执行书库健康检查
  5. 05区分只读和破坏性操作

适用场景

  1. 01查找书籍并获取记录 ID
  2. 02批量检查书目与格式信息
  3. 03更新书籍元数据或添加文件
  4. 04对书库执行健康检查

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/lvtd-llc/skills --skill calibredb

安装后在 Claude Code 中输入/calibredb确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
command-matrix.md
safe-workflows.md
scripts/
list_books_json.py

详细介绍

CalibreDB

对 Calibre 书库执行所有命令行操作时,请使用此技能。

书库路径

  • Calibre 书库的位置因用户而异。运行命令前,请确定目标书库路径 或内容服务器 URL。
  • 尽量在每条命令中指定明确的路径:--with-library "$CALIBRE_LIBRARY"。
  • 如果用户未提供书库路径,请先询问,或检查本地环境中是否存在现有的 Calibre 书库。
  • 对于机器可读的输出,请使用 --for-machine 或支持 JSON 的子命令。

安全模型

先执行只读操作,仅在需要时再进行更改。

只读(默认安全)
  • list
  • search
  • show_metadata
  • custom_columns
  • list_categories
  • check_library
  • fts_search
  • fts_index status
会修改数据(破坏性/不可逆操作前需确认)
  • 通常在意图明确时是安全的:add、set_metadata、set_custom、add_format、embed_metadata、backup_metadata
  • 破坏性操作前需确认:remove、remove_format、remove_custom_column、restore_database、对整个书库执行 fts_index reindex

核心工作流

  1. 确定目标书库并设置 --with-library。
  2. 使用 search(或 list --search)查找相关书籍的 ID。
  3. 使用 show_metadata 或 list --for-machine 检查记录。
  4. 执行所需的最少更改。
  5. 使用后续的 list/search/show_metadata 验证结果。

常用命令模式

1) 列出书籍
export CALIBRE_LIBRARY="/path/to/Calibre Library"
calibredb list --with-library "$CALIBRE_LIBRARY" --fields id,title,authors,formats --limit 20

机器可读输出:

calibredb list --with-library "$CALIBRE_LIBRARY" --fields id,title,authors,tags,formats --for-machine
2) 搜索并获取 ID
calibredb search --with-library "$CALIBRE_LIBRARY" "title:python"

在后续命令中使用这些 ID。

3) 显示元数据
calibredb show_metadata --with-library "$CALIBRE_LIBRARY" 123

以 OPF 格式显示:

calibredb show_metadata --with-library "$CALIBRE_LIBRARY" --as-opf 123
4) 更新元数据字段
calibredb set_metadata --with-library "$CALIBRE_LIBRARY" 123 \
  --field title:"Example Book" \
  --field tags:"python,reference"
5) 添加/导出书籍
calibredb add --with-library "$CALIBRE_LIBRARY" "/path/to/book.epub"
calibredb export --with-library "$CALIBRE_LIBRARY" 123 --to-dir "/tmp/export"
6) 检查书库健康状况
calibredb check_library --with-library "$CALIBRE_LIBRARY"

内容服务器用法

要连接正在运行的 Calibre 内容服务器:

calibredb list --with-library "http://hostname:8080/#library_id" --username <user> --password <pass>

根据文档:使用特殊的 #- 书库 ID 列出服务器书库。

安全提示:字面值 --password <pass> 会作为进程参数传递,在共享计算机上可能会通过进程列表工具被其他用户看到。建议使用 --password '<stdin>',并通过密码管理器传入密码;或者使用 --password '<f:/path/to/file>',并将权限为 0600 的凭据文件存储在仓库之外。对于经过身份验证的内容服务器命令,优先使用本地或可信主机;并从 shell 历史记录、日志和任务记录中删去凭据。

参考文件

  • 命令矩阵和选项:references/command-matrix.md
  • 安全操作手册:references/safe-workflows.md

评论

支持 Markdown