大语言模型在处理本体时表现不佳,常常会虚构术语或其标识符。本服务器提供了一种可靠的方式来访问和查询本体,确保信息准确且最新。
本仓库包含一个模型上下文协议(MCP)服务器,用于访问 本体查询服务(OLS) API。该服务器使 AI 助手能够从各种生物和医学本体中搜索和检索本体术语、概念和层次结构。
本服务器旨在与 Claude Desktop 等 AI 助手无缝协作,允许用户使用自然语言查询本体。它支持广泛的本体,包括基因本体(GO)、人类表型本体(HP)等等。
未启用(下图上半部分)和启用 mcp 服务器(下图下半部分)的对比:
OLS MCP 服务器提供以下工具:
# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
# 克隆仓库
git clone https://github.com/seandavi/ols-mcp-server.git
cd ols-mcp-server
# 安装依赖
uv sync
# 作为工具安装(可选)
uv tool install .
在与 Claude Desktop 完成配置后,你可以使用自然语言与 OLS API 进行交互:
# 搜索术语
> "在人类表型本体中搜索与糖尿病相关的术语"
> "在基因本体中查找所有包含 '细胞凋亡' 的术语"
# 获取本体信息
> "告诉我关于基因本体的信息"
> "有哪些适用于化合物的本体?"
# 探索术语层次结构
> "展示基因本体中 '代谢过程' 术语的子项"
> "HP:0000118 的祖先术语有哪些?"
# 查找相似术语
> "在基因本体中查找与 '心脏发育' 相似的术语"
git clone
cd ols-mcp-server
uv sync --extra dev
source .venv/bin/activate # macOS/Linux
# 或者
.venv\Scripts\activate # Windows
# 格式化代码
uv run ruff format
# 代码检查
uv run ruff check
# 类型检查
uv run mypy src/
src/ols_mcp_server/server.py 中使用 @mcp.tool() 装饰器添加新工具src/ols_mcp_server/models.py 中创建模型以实现结构化响应服务器与 EBI 本体查询服务 API v2 进行交互。关键端点如下:
https://www.ebi.ac.uk/ols4/api/searchhttps://www.ebi.ac.uk/ols4/api/v2/ontologieshttps://www.ebi.ac.uk/ols4/api/termshttps://www.ebi.ac.uk/ols4/api/v2/ontologies/{ontology}/classes/{term}/children服务器可与通过 EBI 本体查询服务获取的任何本体协同工作,包括:
git checkout -b feature-nameuv run pytestuv run ruff format文档中未提及许可证相关信息。