关于 Bio-Agents MCP
Bio-Agents MCP 是一组用于自然语言查询生物数据的服务和客户端,包含 PDB、ChEMBL 服务及用于本地测试的 Ollama 客户端。
主要功能
- 01访问 PDB API
- 02访问 ChEMBL API
- 03网页界面和终端客户端
- 04独立运行或通过 Docker Compose 编排
适用场景
- 01查询蛋白质结构与注释
- 02探索化学数据库数据
- 03在本地测试生物数据查询
MCP 相关
其中的 PDB 和 ChEMBL 组件是 MCP 服务,向 MCP 客户端提供生物数据库 API。项目还包含一个用于调用可用工具的 LLM 客户端。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Bio-Agents MCP
用于通过自然语言与生物数据库交互的微服务和客户端集合。
组件
- LLM Client:提供 Web UI 和终端模式的自然语言界面
- PDB MCP Server:Protein Data Bank API 服务
- ChEMBL MCP Server:化学数据库 API 服务
架构
┌─────────────┐ ┌──────────────┐
│ LLM UI │ │ Ollama LLM │
│ (Chainlit) │ │ │
└─────┬───────┘ └───────┬──────┘
│ │
┌─────┴─────────────────────┴──────┐
│ LLM Client │
└─────┬─────────────────────┬──────┘
│ │
┌─────┴───────┐ ┌──────┴───────┐
│ PDB MCP │ │ ChEMBL MCP │
│ Server │ │ Server │
└─────────────┘ └──────────────┘
快速开始
- 配置环境:
cp .env.example .env
- 启动服务:
make build
make up
- 启动 Web 界面:
make run-chainlit
访问 http://localhost:8000,开始查询生物数据。
开发
- 使用
make help查看可用命令 - 每项服务都有自己的 README,其中包含详细文档
- 配置文件位于
conf/目录中
描述
此项目包含多个模块,它们使用 FastMCP 框架与各种服务和 API 交互。每个模块都用于执行特定任务,可以独立运行,也可以通过 Docker Compose 一起运行。此项目主要关注生物 Agent,提供与 Protein Data Bank (PDB) 等生物数据源交互的工具和服务。
模块
LLM Client
llm-client 模块提供一个客户端,可与大模型 (LLM) 服务交互,以处理查询并使用可用工具。该模块基于 FastMCP 框架构建,支持使用 aiohttp 进行异步操作。
更多详情请参阅 LLM Client README。
Protein Data Bank
protein_data_bank_mcp 模块提供一个服务,可与 Protein Data Bank (PDB) API 交互,以获取结构组装描述、化学组分、drugbank 注释、分支实体、非聚合物实体、聚合物实体、uniprot 注释、结构、pubmed 注释、pdb 集群数据聚合、聚合组来源、pdb 集群数据聚合方法以及成对聚合物界面描述。该模块基于 FastMCP 框架构建,支持使用 aiohttp 进行异步操作。
更多详情请参阅 Protein Data Bank README。
Docker
每个模块都提供了 Dockerfile,用于构建 Docker 镜像。
-
构建 Docker 镜像:
docker build -t <module-name> . -
运行 Docker 容器:
docker run --env-file .env <module-name>
Docker Compose
项目提供了 docker-compose.yml 文件,用于一起运行所有服务。
-
启动所有服务:
docker-compose up -d -
停止所有服务:
docker-compose down
Makefile
项目提供了 Makefile,用于简化常见任务。
- 可用目标:
setup-env:设置初始环境。build:构建所有 Docker 镜像。up:使用 docker-compose 启动所有服务。down:使用 docker-compose 停止所有服务。restart:使用 docker-compose 重启所有服务。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。