关于 Pubtator MCP Server
Pubtator MCP Server 是连接 PubTator3 API 的异步 Python MCP 服务,面向生物医学研究与文献检索工作流。它提供实体查询、论文搜索、全文提取和实体关系发现工具。
主要功能
- 01查找基因、疾病等实体
- 02按关键词或关系检索文献
- 03提取 PubMed/PMC 文章文本
- 04筛选相关实体及关系
适用场景
- 01查找生物医学概念标识符
- 02检索相关 PubMed/PMC 文献
- 03获取论文纯文本
- 04探索实体间关联
MCP 相关
该服务通过 MCP 向客户端提供 PubTator3 的实体查询、文献搜索、文章文本提取和实体关系发现工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
暂未收录安装方式
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Pubtator MCP 服务
本项目提供一个异步 Python 服务,用于与 PubTator3 API 交互。它提供多个兼容 MCP Agent 协议的生物医学文本挖掘工具,支持实体查询、生物医学文献搜索,以及从 PubMed/PMC 文章中提取文本等任务。
功能
- 实体自动补全: 使用自由文本查询查找生物医学实体(基因、疾病、化学物质、变异)。
- 文献搜索: 使用关键词、实体 ID 或实体关系搜索 PubTator3 数据库。
- 文章获取: 以多种格式下载并提取 PubMed/PMC 文章中的文本。
- 查找相关实体: 通过可自定义的关系和类型筛选条件,查询与指定标识符相关的实体。
- 异步且快速: 使用
aiohttp发送非阻塞 HTTP 请求;旨在集成到更广泛的 MCP 环境中。
可用工具
该服务提供以下工具,用于与 PubTator3 API 交互,可通过 MCP 协议访问。这些工具支持以编程方式查询生物医学概念、搜索文献、提取全文和发现实体关系。
1. find_entity
- 用途: 使用自由文本查询查找特定生物概念的标识符。
- 输入:
query(字符串,必填):要查询的概念自由文本(例如 "breast cancer"、"BRCA1")。bioconcept(字符串,可选):将结果限定为一种概念类型:'disease'、'gene'、'chemical'、'variant'之一。limit(整数,可选):结果数量上限(默认值为 10,最大值为 50)。
- 返回:
匹配实体列表,每个实体包含 PubTator 标识符、标签和概念类型。
2. search_pubtator
- 用途: 使用灵活的查询在 PubTator3 中搜索相关的 PubMed/PMC 文章。
- 输入:
query(字符串,必填):自由文本、PubTator 概念 ID 或关系查询。relation(字符串,可选):指定关系类型(默认值为'ANY')。limit(整数,可选):要获取的结果数量(默认值为 10,最大值为 50)。
- 返回:
JSON 列表,包含文章 ID 和简要摘要。
3. get_paper_text
- 用途: 下载并提取 PubMed 或 PMC 文章中的文本内容。
- 输入:
pmid或pmcid(字符串,必填):文章标识符(PubMed ID 或 PMC ID)。
- 返回:
如果文章文本可用,则返回纯文本内容。
4. find_related_entities
- 用途: 查找与特定 PubTator 实体相关的实体,并按关系类型或实体类型筛选。
- 输入:
entity_id(字符串,必填):要查询的 PubTator 实体 ID(例如,@GENE_BRCA1)。relation_type(字符串,可选):按关系类型筛选(例如,'interacts_with'、'associated_with')。entity_type(字符串,可选):将相关实体限定为某种概念类型。
- 返回:
格式化的 JSON,包含相关实体 ID 和关系详情。
每个工具的完整输入架构、描述和示例均可在 server.py 中的 list_tools 端点查看。
使用这些工具,即可在兼容的平台或 Agent 中集成由 PubTator3 驱动的高级生物医学知识访问能力。
安装
- 安装 3.10+ 和所需的库(见下文)。
pip install mcp-server-pubtator3 - 运行服务:
mcp-server-pubtator3
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。