Zotero Keeper MCP 服务器

使用说明(Markdown 格式)

  • 项目简介

    • Zotero Keeper 作为 MCP 服务器实现,旨在让 AI 助手通过标准化的 MCP 接口读取 Zotero 数据、调用工具执行写操作、以及使用 Prompt 模板进行对话式交互,提升学术文献管理的自动化与可控性。
    • 主要组件包含:资源浏览、读写工具、交互式保存(带引 elicitation)、PubMed 集成、批量导入工具、以及本地化的数据处理与缓存逻辑。
  • 主要功能点

    • MCP Native 接口:以 JSON-RPC 风格的 MCP 请求/响应进行交互。
    • MCP 资源与工具:提供可读的资源(zotero:// 开头的 URIs)以及多类工具(读取、写入、批量导入、PubMed 集成等)。
    • Interactive Elicitation:在写入时通过 MCP Elicitation 展示集合选择、去重确认等交互。
    • 本地 Zotero 集成:通过 Zotero Local API / Connector API 实现只在本地的文献管理,支持只读与写入模式。
    • PubMed 集成与 RCR 指标:PubMed 数据导入时附带 NIH 的 RCR、百位百分位等指标(通过 iCite 获取)。
    • 统一导入入口:提供一个统一的导入工具,支持来自 PubMed、RIS、或者 PubMed 列表的多源导入。
    • 安全与本地化:所有操作均在本地执行,尽量避免云端操作,且具备容错与会话状态管理。
  • 安装步骤

    1. 克隆仓库并进入 MCP 服务器目录:mcp-server
    2. 使用 uv 安装开发模式(高效的 Python 环境管理与依赖安装)
      • uv pip install -e .
    3. 启动 MCP 服务器
      • python -m zotero_mcp
      • 或通过环境集成工具以 stdio 传输启动,后续可在 VS Code/Claude 等客户端中配置连接信息
    4. 配置 MCP 客户端以连接服务器(示例见下方“服务器配置”段落)
    5. 如需 PubMed 支持,请根据需求安装 pubmed 的依赖分支或包
      • uv pip install -e ".[pubmed]"
  • 服务器配置(MCP 客户端需要的最小信息) 注意:以下配置用于 MCP 客户端以启动并连接 MCP 服务器。服务器端的实际运行命令请按下述两种常见场景选用其中一种。

    • 场景 A(VS Code Copilot 等使用 stdio 传输) { "servers": { "zotero-keeper": { "name": "Zotero Keeper", "type": "stdio", "command": "uv", "args": [ "run", "--directory", "/path/to/zotero-keeper/mcp-server", "python", "-m", "zotero_mcp" ] // 说明:该配置通过 uv 启动 MCP 服务器,工作目录指向 mcp-server 的根路径,执行 python -m zotero_mcp 自动加载 MCP 服务入口 } } }

    • 场景 B(Claude Desktop 等使用直接 Python 调用) { "zotero-keeper": { "command": "python", "args": ["-m", "zotero_mcp"], "cwd": "/path/to/zotero-keeper/mcp-server" } // 说明:该配置让客户端直接通过 Python 模块方式启动 MCP 服务器,工作目录指向 mcp-server }

  • 基本使用方法

    • 启动后,客户端可以通过 MCP 机制向 Zotero Keeper 请求以下能力:读取 Zotero 数据、添加/导入文献、PubMed 相关导入、以及通过资源浏览器直接读取 Zotero 数据。
    • 使用交互式保存时,系统会提示你选择目标收藏夹、确认潜在重复项、并自动从 DOI/PMID 获取元数据(如摘要、作者、期刊等)。
    • 若需要查看状态、统计信息、或 API 状态,请使用扩展提供的快速菜单与状态栏入口。
  • 关键词 Zotero, PubMed, 本地文献管理, 自动元数据获取, 引文管理

  • 分类 5

服务器信息