literature-mcp-pro
这是一个简单的 MCP(Model Context Protocol)风格的本地服务器,用于聚合多个公开学术数据源(PubMed / Crossref / EuropePMC / OpenCitations / Unpaywall)并暴露给 AI 客户端使用。
主要文件
main.py:使用fastmcp暴露工具(search_articles, get_article_details, get_citations, get_references, get_open_access)。orchestrator.py:协调各个数据源,合并去重并补充详情、引用、开放访问等信息。connectors/:各数据源的实现(pubmed.py,crossref.py,europe_pmc.py,opencitations.py,unpaywall.py,details.py)。run_search.py:示例脚本,直接并行调用多个 connector 并打印合并结果(便于在不通过 MCP 客户端时本地测试)。
快速开始(Windows PowerShell)
1) 创建并激活虚拟环境(可选但推荐)
python -m venv venv
.\venv\Scripts\Activate.ps12) 安装依赖
python -m pip install -r requirements.txt3) 配置环境变量(可选:Unpaywall 需要 email)
$env:UNPAYWALL_EMAIL = "you@example.com"4) 直接运行 MCP 服务器(FastMCP 使用 stdio 协议,适合被 VS Code MCP 或其它 MCP 客户端通过 stdin/stdout 调用)
python main.py5) 本地快速测试(不通过 MCP,直接调用 connector)
python run_search.py如何从 AI 调用
- 通过支持 MCP 的客户端或框架,将
main.py当作 stdio 服务启动(见仓库根下mcp.json的 VS Code 配置示例)。 - MCP 客户端应调用工具名
search_articles等,传入query、limit、year_from等参数,服务器会返回 JSON 可序列化的搜索条目列表。
