](https://mseep.ai/app/longevity-genie-biothings-mcp)
生物科技公司
 ](https://badge.fury.io/py/biothings-mcp)
Biothings.io的MCP(模型上下文协议)服务器
该服务器实现了BioThings的模型上下文协议(MCP),为访问和操纵生物医学数据提供了一个标准化的接口。MCP使AI助手和代理能够通过结构化接口访问权威数据源的专业生物医学知识。支持的BioThings数据源包括:
- mygene.info --基因注释与查询服务
- myvariant.info --变量注释和查询服务
- mychem.info --化合物标注与查询服务
如果你想了解更多什么是模型上下文协议以及如何更有效地使用它,你可以采取 深度学习AI课程 或者在YouTube上搜索MCP视频。
关于MCP(模型上下文协议)
MCP是一种弥合人工智能系统和专业领域知识之间差距的协议。它能够:
- 结构化访问:与权威生物医学数据源的直接连接
- 自然语言查询:简化了与专业数据库的交互
- 类型安全:通过biothings类型的客户进行强有力的打字和验证
- 人工智能集成:与人工智能助手和代理无缝集成
可用的API接口
该服务器为不同的BioThings数据类型提供专用的API接口,利用 biothings-typed-client 图书馆。这些接口使用以下工具处理程序实现:
- 基因接口:
GeneTools(包裹GeneClientAsync) - 变量接口:
VariantTools(包裹VariantClientAsync) - 化学界面:
ChemTools(包裹ChemClientAsync) - 税务接口:
TaxonTools(包裹TaxonClientAsync) - 下载界面:
DownloadTools(提供文件下载和序列分析功能)
本地文件保存功能
服务器通过以下方式提供本地文件保存功能 DownloadTools 接口,它提供:
下载工具
download_entrez_data:从NCBI Entrez数据库下载数据(以字符串形式返回内容)download_entrez_data_local:从NCBI Entrez数据库下载数据并保存到本地文件
输出目录管理
- 默认位置:文件保存到
biothings_output/当前工作目录中的目录 - 自定义位置:使用
--output-dir用于指定自定义输出目录的参数 - 自动创建:如果输出目录不存在,则会自动创建
- 唯一文件名:自动生成的文件名包含UUID前缀以避免冲突
支持的文件格式
- FASTA:
.fasta序列数据的扩展 - GenBank:
.gbGenBank格式数据的扩展 - 对齐:
.aln对齐结果的扩展 - JSON:
.json结构化数据的扩展 - 文本:
.txt通用文本数据的扩展
快速开始
安装uv
# Download and install uv
curl -LsSf https://astral.sh/uv/install.sh | sh
# Verify installation
uv --version
uvx --versionuvx是一个非常好的工具,可以在需要时运行安装它的python包。
用uvx运行
您可以直接使用uvx运行biothings mcp服务器,而无需克隆存储库:
STDIO模式(对于需要STDIO的MCP客户端,当您想保存文件时可能很有用)
# Run the server in STDIO mode (default mode)
uvx biothings-mcp
# Or explicitly specify stdio mode
uvx --from biothings-mcp stdio
# With custom output directory
uvx --from biothings-mcp stdio --output-dir ./my_dataHTTP流模式(Web服务器)
# Run the server in streamable HTTP mode on default port (3001)
uvx --from biothings-mcp server run
# Run on a custom port
uvx --from biothings-mcp server run --port 8000
# Run on custom host and port
uvx --from biothings-mcp server run --host 0.0.0.0 --port 8000
# With custom output directory
uvx --from biothings-mcp server run --output-dir ./my_dataSSE模式(服务器发送事件)
# Run the server in SSE mode on default port (3001)
uvx --from biothings-mcp sse
# Run on a custom port
uvx --from biothings-mcp sse --port 8000HTTP流模式将启动您可以在以下位置访问的web服务器 http://localhost:3001/mcp (文件见 http://localhost:3001/docs).STDIO模式专为通过标准输入/输出进行通信的MCP客户端而设计,而SSE模式使用服务器发送事件进行实时通信。
配置您的(拟人克劳德桌面、光标、风帆等)
我们使用代理提供stdio配置(可能需要npx才能运行):
- mcp-config-remote.json-用于远程配置
- mcp-config-stdio.json-不支持mcp客户端的本地主机的stdio配置
检查Biothings MCP服务器
如果你想检查MCP提供的方法,请使用npx(你可能需要安装nodejs和npm)
使用MCP检查器测试您的MCP设置。
如果你想检查本地可流式传输的http服务器,你可以使用:
npx @modelcontextprotocol/inspector --config mcp-config.json --server biothings-mcp为远程服务器添加-remote后缀。
如果你想检查stdio本地服务器,你应该使用
npx @modelcontextprotocol/inspector --config mcp-config-stdio.json --server biothings-mcp您还可以手动运行检查器,并将服务器参数放入界面中:
npx @modelcontextprotocol/inspector之后,您可以在以下网址使用MCP Inspector探索其方法http://127.0.0.1:6274
存储库设置
# Clone the repository
git clone https://github.com/longevity-genie/biothings-mcp.git
cd biothings-mcp
uv sync运行MCP服务器
如果你已经克隆了仓库,你可以用uv运行服务器
# Start the MCP server in HTTP streamable mode (default port 3001)
uv run server run
# Run in STDIO mode
uv run stdio
# Run in SSE mode
uv run sse
# Run with custom port
uv run server run --port 8000
# Run with custom output directory
uv run server run --output-dir ./my_data与人工智能系统集成
要将此服务器与MCP兼容的AI客户端集成,您可以使用此存储库中提供的预配置JSON文件之一:
- 要连接到本地运行的服务器: 使用
mcp-config.json。通过以下任一方式确保服务器首先运行uv run server(参见 运行MCP服务器)或docker-compose up(参见 ). - 要连接到公共托管服务器: 使用
mcp-config-remote.json。这连接到https://biothings.longevity-genie.info/mcp并且不需要你在本地运行任何东西。
只需指向您的AI客户端(如Cursor、Windserve、ClaudeDesktop、带有Copilot的VS Code,或 其他)使用适当的配置文件。
以下是一个配置后工具在MCP客户端(如Cursor)中如何显示的示例:
已知问题
该库具有beta质量。目前的主要问题是LLM通常很愚蠢,不知道如何放置有效的基因和基因变异符号。我们计划通过扩展评论和提供实体解析的额外方法来缓解这一问题。
测试与验证
为API终结点运行测试:
uv run pytest -vvv -s您可以将MCP检查器与本地构建的MCP服务器一起使用,方式与uvx相同
*注意:使用MCP检查器是可选的。配置后,大多数MCP客户端(如Cursor、Windsurv等)将自动显示此服务器上的可用工具。然而,检查员对于详细的测试和探索可能很有用。*
*如果您选择通过以下方式使用检查器 npx请确保您已安装Node.js和npm。使用 非挥发性物质 建议使用(节点版本管理器)来管理Node.js版本。*
这将打开一个web界面,您可以在其中探索和测试所有可用的工具。
文档
有关MCP协议及其实现的详细文档,请参阅:
许可证
该项目根据MIT许可证获得许可。
致谢
- MCP协议 对于协议规范
- 派丹蒂克 用于数据验证框架
- FastAPI MCP 用于MCP服务器实现
- 该项目是 长寿精灵 该组织为健康、遗传学和长寿研究开发开源人工智能助手和图书馆。
我们得到了以下方面的支持:

*健康生命延伸协会*
和


