SuperAPI AI 工具集

alterlab-pyzotero

编程与开发

查看项目

更新于 10-15 19:56

技能介绍

用途:通过 pyzotero(Zotero API v3 的 Python 封装,2026-09 当前版本 1.15.x)以代码方式管理 Zotero 文献库,包括读取与检索条目、分类、标签,创建和更新参考文献,上传附件,以及导出引用。适用于需要与 Zotero 同步的科研自动化流程,或从终端脚本操作本地库、向 AI 客户端暴露本地库。

主要能力:读取条目与分类、按关键词搜索、批量编辑条目/分类/标签;从模板创建条目、附加 PDF;导出 BibTeX、CSL-JSON 或格式化参考文献;提供可选 CLI 与 MCP 服务器(MCP 默认只读,需 --enable-writes 才可写)。

认证与安装:凭据从 https://www.zotero.org/settings/keys 获取,包括 User ID、API Key,群组库还需 Library ID。环境变量示例:ZOTERO_LIBRARY_ID、ZOTERO_API_KEY、ZOTERO_LIBRARY_TYPE(user 或 group)。安装:uv add pyzotero;含 CLI:uv add "pyzotero[cli]";含 MCP:uv add "pyzotero[mcp]"。

基本用法:from pyzotero import Zotero;zot = Zotero(library_id='123456', library_type='user', api_key='ABC1234XYZ');zot.top(limit=10) 取顶层条目,zot.items(q='machine learning', limit=20) 搜索,zot.everything(zot.items()) 取全部。条目数据在 item['data']。写操作成功返回 True,失败抛出 pyzotero.errors 中以 Error 结尾的异常。默认返回 100 条。

本地模式:Zotero(library_id='0', library_type='user', local=True) 可无密钥读取运行中的 Zotero 7+ 桌面应用(需在设置中允许本机其他应用通信);本地写入需 Zotero 10 及以上并经用户授权,zot.authorize_local("My script") 会弹出允许对话框,本地 API 密钥与 zotero.org 密钥无关。

限制:不用于在学术数据库中检索新论文、DOI 转 BibTeX、引用真实性核查或从 PDF 构建证据表,这些应使用同套件中的其他技能。其余细节暂未提供。