opengenes-mcp
 ](https://badge.fury.io/py/opengenes-mcp)   
OpenGenes数据库的MCP(模型上下文协议)服务器
该服务器实现了OpenGenes的模型上下文协议(MCP),为访问衰老和寿命研究数据提供了一个标准化的接口。MCP使AI助手和代理能够通过结构化界面查询全面的生物医学数据集。
服务器会自动从以下位置下载最新的OpenGenes数据库和文档 拥抱脸部中心 (特别是从 opengenes 文件夹),确保您始终可以访问最新的数据,而无需手动文件管理。
OpenGenes数据库包含:
- 寿命_改变:关于基因干预及其对模型生物寿命影响的实验数据
- 基因标准:衰老相关基因的标准分类(12个不同类别)
- 基因标记:与特定基因相关的衰老标志
- 长寿_协会:人口研究中与长寿相关的遗传变异
如果你想了解更多关于模型上下文协议是什么以及如何更有效地使用它,你可以采取 深度学习AI课程 或在YouTube上搜索MCP视频。
🏆 神圣生物MCP框架的一部分
此MCP服务器是 圣生物MCP 项目-生物信息学研究的统一框架 荣获Bio x AI黑客马拉松2025 并在胜利后继续积极发展和推广。
Holy Bio MCP框架将多个专用MCP服务器整合到一个有凝聚力的生态系统中,用于高级生物研究:
- gget mcp -基因组学和序列分析工具包
- opengenes-mcp -衰老与长寿遗传学(此服务器)
- 协同年龄mcp -长寿中的协同遗传相互作用
- 生物科技公司 -来自BioThings.io的基础生物数据
- 药理学mcp -药物、靶点和配体数据
这些服务器共同提供了50多种专门的生物信息学功能,可以在人工智能驱动的研究工作流程中无缝协作。了解有关完整框架的更多信息,请访问 .
用法示例
以下是OpenGenes MCP服务器与AI助手在实践中的工作原理:
*示例显示了如何使用自然语言通过AI助手查询OpenGenes数据库,并通过MCP服务器将其转换为SQL查询。您可以在研究问题的聊天界面和基于AI的开发工具(如Cursor、Windsurf、VS Code with Copilot)中使用此数据库,通过在编码时直接访问衰老和长寿研究数据,显著提高您的生物信息学生产力。*
关于MCP(模型上下文协议)
MCP是一种弥合人工智能系统和专业领域知识之间差距的协议。它能够:
- 结构化访问:直接连接到权威的衰老和长寿研究数据
- 自然语言查询:通过SQL简化了与专用数据库的交互
- 类型安全:通过FastMCP进行强大的打字和验证
- 人工智能集成:与人工智能助手和代理无缝集成
数据源和更新
OpenGenes MCP服务器自动从 长寿精灵/生物mcp数据 Hugging Face Hub上的存储库。这确保了:
- 始终保持最新:自动访问最新的OpenGenes数据库,无需手动更新
- 可靠的分销:具有版本控制和更改跟踪的集中式数据托管
- 高效缓存:下载的文件在本地缓存,以尽量减少网络请求
- 后备支援:支持本地回退文件用于开发和脱机使用
数据文件存储在 opengenes Hugging Face存储库的子文件夹,包括:
open_genes.sqlite-完整的OpenGenes数据库prompt.txt-数据库模式文档和使用指南
可用工具
该服务器提供了三种与OpenGenes数据库交互的主要工具:
opengenes_db_query(sql: str)-对OpenGenes数据库执行只读SQL查询opengenes_get_schema_info()-获取详细的架构信息,包括表、列和枚举opengenes_example_queries()-获取带有描述的示例SQL查询列表
可用资源
resource://db-prompt-完整的数据库模式文档和使用指南resource://schema-summary-表格及其目的的格式化摘要
快速开始
安装uv
# Download and install uv
curl -LsSf https://astral.sh/uv/install.sh | sh
# Verify installation
uv --version
uvx --versionuvx是一个非常好的工具,可以在需要时运行安装它的python包。
用uvx运行
您可以直接使用uvx运行opengenes mcp服务器,而无需克隆存储库:
# Run the server in streamed http mode (default)
uvx opengenes-mcpOther uvx modes (STDIO, HTTP, SSE)
STDIO模式(对于需要STDIO的MCP客户端,当您想保存文件时可能很有用)
# Or explicitly specify stdio mode
uvx opengenes-mcp stdioHTTP模式(Web服务器)
# Run the server in streamable HTTP mode on default (3001) port
uvx opengenes-mcp server
# Run on a specific port
uvx opengenes-mcp server --port 8000SSE模式(服务器发送事件)
# Run the server in SSE mode
uvx opengenes-mcp sse在uvx出现问题的情况下,通常是由于紫外线缓存不足造成的:
uv cache cleanHTTP模式将启动您可以在以下位置访问的web服务器 http://localhost:3001/mcp (文件见 http://localhost:3001/docs).STDIO模式专为通过标准输入/输出进行通信的MCP客户端而设计,而SSE模式使用服务器发送事件进行实时通信。
注: 目前,我们没有Swagger/OpenAPI接口,因此直接在浏览器中访问服务器不会显示太多有用的信息。要探索可用的工具和功能,您应该使用MCP检查器(见下文)或通过MCP客户端连接以查看可用的工具。
配置您的AI客户端(Anthropic Claude Desktop、Cursor、Windsurf等)
快速配置示例
以下是您可以直接复制到Claude Desktop或Cursor MCP配置中的内容:
{
"mcpServers": {
"opengenes-mcp": {
"command": "uvx",
"args": ["opengenes-mcp"],
"env": {
"MCP_TRANSPORT": "stdio"
}
}
}
}替代方案:使用预配置的文件
我们还为不同的用例提供了预配置的JSON文件:
- 对于STDIO模式(推荐): 使用
mcp-config-stdio.json - 对于HTTP模式: 使用
mcp-config.json - 对于当地发展: 使用
mcp-config-stdio-debug.json
配置视频教程
有关如何使用AI客户端配置MCP服务器的视觉指南,请查看我们的 配置教程视频 我们的姊妹MCP服务器(biothings MCP)。OpenGenes MCP服务器的配置原则完全相同,只需使用上面提供的适当JSON配置文件即可。
检查OpenGenes MCP服务器
Using MCP Inspector to explore server capabilities
如果你想检查MCP服务器提供的方法,请使用npx(你可能需要安装nodejs和npm):
对于带uvx的STDIO模式:
npx @modelcontextprotocol/inspector --config mcp-config-stdio.json --server opengenes-mcp对于HTTP模式(确保服务器首先运行):
npx @modelcontextprotocol/inspector --config mcp-config.json --server opengenes-mcp对于当地发展:
npx @modelcontextprotocol/inspector --config mcp-config-stdio-debug.json --server opengenes-mcp您还可以手动运行检查器,并通过界面进行配置:
npx @modelcontextprotocol/inspector之后,您可以在以下网址使用MCP Inspector探索工具和资源http://127.0.0.1:6274(注意,如果您多次运行检查器,它可能会更改端口)
与人工智能系统集成
只需指向您的AI客户端(如Cursor、Windsurf、ClaudeDesktop、带有Copilot的VS Code,或 其他)使用存储库中的相应配置文件。
存储库设置
# Clone the repository
git clone https://github.com/longevity-genie/opengenes-mcp.git
cd opengenes-mcp
uv sync运行MCP服务器
如果你已经克隆了仓库,你可以用uv运行服务器:
# Start the MCP server locally (HTTP mode)
uv run server
# Or start in STDIO mode
uv run stdio
# Or start in SSE mode
uv run sse数据库模式
Detailed schema information
主要表格
- 寿命_改变 (47列):实验寿命数据,包括模型生物的干预细节
- 基因标准 (2列):按年龄标准进行基因分类(12个不同类别)
- 基因标记 (2列):基因衰老图谱的标志
- 长寿_协会 (11列):来自人类研究的群体遗传学长寿数据
关键字段
- HGNC:基因符号(所有表中的主要标识符)
- 模式组织:研究生物(小鼠、秀丽隐杆线虫、苍蝇等)
- 寿命效应:寿命变化方向(增加/减少/不变)
- 干预方法:遗传干预方法(敲除、过表达等)
- 标准:衰老相关基因分类(12类)
- 衰老的标志:与基因相关的生物衰老过程
查询示例
Sample SQL queries for common research questions
-- Get top genes with most lifespan experiments
SELECT HGNC, COUNT(*) as experiment_count
FROM lifespan_change
WHERE HGNC IS NOT NULL
GROUP BY HGNC
ORDER BY experiment_count DESC
LIMIT 10;
-- Find genes that increase lifespan in mice
SELECT DISTINCT HGNC, effect_on_lifespan
FROM lifespan_change
WHERE model_organism = 'mouse'
AND effect_on_lifespan = 'increases lifespan'
AND HGNC IS NOT NULL;
-- Get hallmarks of aging for genes
SELECT HGNC, "hallmarks of aging"
FROM gene_hallmarks
WHERE "hallmarks of aging" LIKE '%mitochondrial%';
-- Find longevity associations by ethnicity
SELECT HGNC, "polymorphism type", "nucleotide substitution", ethnicity
FROM longevity_associations
WHERE ethnicity LIKE '%Italian%';
-- Find genes with both lifespan effects and longevity associations
SELECT DISTINCT lc.HGNC
FROM lifespan_change lc
INNER JOIN longevity_associations la ON lc.HGNC = la.HGNC
WHERE lc.HGNC IS NOT NULL;安全功能
- 只读访问:只允许SELECT查询
- 输入验证:阻止INSERT、UPDATE、DELETE、DROP、CREATE、ALTER、TRUNCATE操作
- 错误处理:通过信息性消息进行全面的错误处理
测试与验证
MCP服务器提供了全面的测试,包括LLM即判断测试,用于评估对复杂查询的响应质量。但是,为了节省成本,默认情况下在CI中禁用基于LLM的测试。
LLM代理测试的环境设置
如果你想在Gemini模型中运行使用MCP函数的LLM代理测试,你需要设置一个 .env 使用Gemini API密钥文件:
# Create a .env file in the project root
echo "GEMINI_API_KEY=your-gemini-api-key-here" > .env注: 这 .env 文件和Gemini API密钥仅用于运行LLM代理测试。所有其他测试和基本MCP服务器功能在没有任何API密钥的情况下工作。
运行测试
对MCP服务器运行测试:
uv run pytest -vvv -s您还可以运行手动测试:
uv run python test/manual_test_questions.py您可以像使用uvx一样,将MCP检查器与本地构建的MCP服务器一起使用。
*注意:使用MCP检查器是可选的。配置后,大多数MCP客户端(如Cursor、Windsurf等)将自动显示此服务器上的可用工具。然而,检查员对于详细的测试和探索可能很有用。*
*如果您选择通过以下方式使用检查器 npx请确保您已安装Node.js和npm。使用 非挥发性物质 建议使用(节点版本管理器)来管理Node.js版本。*
MCP帮助回答的示例问题
Research questions you can explore with this MCP server
- 对哪些基因的干预最能延长小鼠的寿命?
- 在模型动物身上,哪些基因敲除最能延长寿命?
- GHR敲除小鼠的哪些过程得到了改善?
- 哪种基因干预导致果蝇寿命延长最多?
- 过度表达VEGFA的小鼠寿命延长了多少?
- 是否有任何针对肝脏的干预措施可以延长小鼠的寿命?
- 哪种基因与寿命的关联得到了最多研究的证实?
- FOXO3中的哪些多态性与人类寿命有关?
- 在哪些种族中,APOE基因与寿命的关系得到了证实?
- INS基因多态性与长寿有关吗?
- 哪些基因与转录改变有关?
- 哪些标志与KL基因有关?
- 有多少基因与人类的长寿有关?
- 对IGF1R基因进行了哪些类型的研究?
- 你知道PTEN与衰老之间存在联系的哪些证据?
- 哪些基因与老年人的长寿和表达改变有关?
- ACE2基因的表达是否随着人类衰老而改变?
- 蠕虫需要下调哪些基因来延长寿命?
贡献
我们欢迎社区的贡献! 🎉 无论你是研究人员、开发人员还是对衰老和长寿研究感兴趣的爱好者,都有很多方法可以参与其中:
我们特别鼓励您尝试我们的MCP服务器,并与我们分享您的反馈! 您使用服务器的经验、遇到的任何问题以及改进建议对于使该工具更好地服务于整个研究社区来说都是非常有价值的。
贡献方式
- 🐛 错误报告:发现问题?请打开一个包含详细信息的GitHub问题
- 💡 功能请求:对新功能有想法吗?我们很乐意听到他们!
- 📝 文档:帮助改进我们的文档、示例或教程
- 🧪 测试:添加测试用例,特别是边缘用例或新的查询模式
- 🔍 数据质量:帮助识别和报告数据不一致或提出改进建议
- 🚀 演出:优化查询、改进缓存或提高服务器性能
- 🌐 整合:为新的MCP客户端或AI系统创建示例
- 🎥 教程和视频:创建教程、视频指南或教育内容,展示如何使用MCP服务器
- 📖 用户故事:使用我们的MCP服务器分享您的研究工作流程和成功案例
- 🤝 社区外展:帮助我们在生物信息学界宣传MCP的采用
教程、视频和用户故事对我们来说尤其有价值! 我们正在努力推动生物信息学界采用人工智能,研究人员如何使用我们的MCP服务器(这台和我们开发的其他服务器)的真实例子有助于展示实际好处并鼓励更广泛的采用。
入门指南
- 复刻仓库
- 创建要素分支(
git checkout -b feature/amazing-feature) - 进行更改并添加测试
- 运行测试套件(
uv run pytest) - 提交您的更改(
git commit -m 'Add amazing feature') - 推到您的分支(
git push origin feature/amazing-feature) - 打开拉取请求
开发指南
- 遵循现有的代码风格(我们使用
black用于格式化) - 添加新功能的测试
- 根据需要更新文档
- 保持提交的重点,并写明确的提交消息
问题或想法?
不要犹豫,打开一个问题进行讨论!我们很友好,总是很乐意帮助新来者开始。您的贡献有助于推进开放科学和长寿研究。 🧬✨
已知问题
数据库覆盖
目前,此MCP服务器仅使用完整OpenGenes数据库的一个子集。完整的OpenGenes数据库包含我们的MCP实现中尚未包含的其他表和数据。 我们需要贡献者来帮助扩展对完整数据库的支持! 如果您有兴趣帮助扩大数据库覆盖范围,请参阅我们的 贡献 部分。
测试覆盖率
虽然我们提供全面的测试,包括LLM即判断评估,但并非所有测试用例都已根据实际的OpenGenes web界面进行了手动验证。一些自动化测试结果可能需要手动验证以确保准确性。欢迎为提高测试覆盖率和验证做出贡献。
许可证
该项目根据MIT许可证获得许可。
致谢
- OpenGenes数据库 用于全面的衰老研究数据
- Rafikova E、Nemirovich Danchenko N、Ogmen A、Parfenenkova A、Velikanova A、Tikhonov S、Peshkin L、Rafikov K、Spiridonova O、Belova Y、Glinin T、Egorova A、Batin M。开放基因——一个新的与衰老和长寿相关的人类基因综合数据库。《核酸研究》2024年1月5日;52(D1):D950-D962。doi:10.1093/nar/gad712。PMID:37665017;PMCID:PMC10768108。
该项目是 长寿精灵 该组织为健康、遗传学和长寿研究开发开源人工智能助手和图书馆。
Holy Bio-MCP框架中的其他MCP服务器
此服务器是完整 圣生物MCP 框架,其中包括:
- gget mcp -强大的生物信息学工具包,用于基因组学查询和分析
- 协同年龄mcp -长寿中协同和拮抗遗传相互作用数据库
- 生物科技公司 -访问BioThings.io API,获取全面的基因、变异、化学和分类数据
- 药理学mcp -访问药物、靶点和配体信息的药理学数据库指南
该框架提供统一的配置文件,一次启用所有服务器,通过一次设置即可轻松访问50多种专门的生物信息学功能。这个屡获殊荣的项目继续发展成为人工智能驱动的生物研究的综合平台。
我们得到了以下方面的支持:

*健康生命延伸协会*
和

