使用说明(简要,便于快速上手):
-
项目简介
- 该仓库实现了一个完整的 MCP 服务器,用来向 LLM 客户端提供文献检索相关的上下文信息与功能,包括多源检索、文献详情、参考文献、文献关系分析和期刊质量评估等工具,以及资源管理和缓存机制。
- 服务器通过 JSON-RPC 与客户端通信,支持多种传输模式,并提供会话管理、能力声明与可扩展的数据源集成。
-
主要功能点
- 多源文献检索:对 Europe PMC、PubMed、arXiv、CrossRef、OpenAlex 等来源进行并发检索,支持不同策略(全面、快速、精确、预印本)并合并去重。
- 文献详情与批量获取:按 DOI/PMID/PMCID/ArXiv ID 获取文献详细信息,支持批量模式与全文获取(若存在 PMCID)并可按章节提取全文内容。
- 参考文献与关系分析:获取文献引用的参考文献、相似文献及引用关系,支持批量分析和网络分析。
- 期刊质量评估:整合 EasyScholar 与 OpenAlex 指标,提供影响因子、分区、H 指数等多源指标,支持批量查询和排序。
- 资源与缓存:提供本地缓存(24 小时缓存策略)、API 限速与重试、以及对常用资源的描述与访问。
- 安全与扩展性:设计为可扩展的后端框架,具备会话管理、能力声明、以及多传输协议的支持。
-
安装步骤
- 需要先安装 uv 工具(若未安装则通过 Astral 提供的脚本安装)。
- 安装所需依赖(如 FastMCP、requests、aiohttp、markdown 转换工具等)。
- 通过两种方式启动服务器:
- 使用 PyPI 包直接运行(推荐):
- uvx article-mcp
- 该方式会自动下载并运行已经发布的包。
- 本地开发/自建环境运行:
- 克隆仓库后在项目根目录执行安装依赖(如 uv sync、pip 安装所需包)。
- 启动服务器命令示例:
- 直接运行:uv run python -m article_mcp server
- 指定传输模式:uv run python -m article_mcp server --transport stdio
- 使用 streamable-http 传输:uv run python -m article_mcp server --transport streamable-http --host 0.0.0.0 --port 9000
- 使用 PyPI 包直接运行(推荐):
-
服务器配置(MCP 客户端所需信息,JSON 格式)
- 配置目标:MCP 客户端需要知道如何启动并连接到该 MCP 服务器。下面给出一个准确的示例配置,描述了服务器名称、启动命令及参数等信息,注释仅用于说明,实际配置请在客户端 JSON 中按示例结构填写。
- 示例 JSON(仅示例结构,实际按需调整): { "mcpServers": { "article-mcp": { "command": "uvx", "args": ["article-mcp"] } // 如需本地开发环境运行,替换为实际启动命令与工作目录 }, "说明": "此配置用于 Claude Desktop / Cherry Studio 等 MCP 客户端,将 article-mcp 作为一个 MCP 服务器条目注册。该字段中没有暴露服务器端敏感信息,若需要秘密密钥(如 EasyScholar 访问),可在 env 部分配置。" }
-
基本使用方法
- 启动后端服务器后,MCP 客户端通过该服务器可以请求以下核心能力:
- 搜索文献:通过工具名 search_literature,传入 keyword、sources、max_results、search_type 等参数,获取合并后的文献列表及元数据。
- 获取文献详情:通过 get_article_details,传入 identifier/id_type 等,获取单文献或批量文献的详细信息。
- 获取参考文献:通过 get_references,传入 identifier/id_type/sources 等,获取参考文献列表及去重结果。
- 文献关系分析:通过 get_literature_relations,传入 identifiers、relation_types、sources 等,获取引用关系、相似文献与引用网络信息。
- 期刊质量评估:通过 get_journal_quality,传入 journal_name、include_metrics 等,获取期刊质量指标并可进行批量排序。
- 传输模式说明:
- stdio:适用于桌面客户端,直接在控制台进行交互。
- SSE:适用于 Web 应用,通过服务器推送获取事件。
- streamable-http:对接 API 集成场景,支持 HTTP 请求/响应流式传输。
- 使用时,请确保 MCP 客户端的配置中的 server 名称与配置的一键对应,且 command 与 args 与服务器启动方式一致,以实现正确的连接与通信。
- 启动后端服务器后,MCP 客户端通过该服务器可以请求以下核心能力:
-
重要注意
- 该实现包含完整的后端服务器逻辑与工具注册机制,非单纯示例。包含对多数据源的并行调用、缓存、以及对 OpenAlex/EasyScholar 等外部服务的整合等,具备可运行性和扩展性。
信息
分类
网页与API