mcpField
B
Bio-Agents MCP

Bio-Agents MCP

Local
github.com/dogeplusplusScience & Education12Updated 83w ago

About Bio-Agents MCP

Bio-Agents MCP is a collection of services and a natural-language client for querying biological data. It includes PDB and ChEMBL services and an Ollama-based client for local testing.

Key features

  1. 01PDB API access
  2. 02ChEMBL API access
  3. 03Web UI and terminal client
  4. 04Independent services or Docker Compose

Use cases

  1. 01Query protein structures and annotations
  2. 02Explore chemical database data
  3. 03Test biological data queries locally

MCP support

Its PDB and ChEMBL components are MCP servers that expose biological database APIs to MCP clients. The collection also includes an LLM client for using available tools.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"bio-agents": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"build"
]
}
}
}
Run commanddocker run -i --rm build

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
ocibuild

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Bio-Agents MCP

A collection of microservices and clients for natural language interaction with biological databases.

Components

  • LLM Client: Natural language interface with web UI and terminal modes
  • PDB MCP Server: Protein Data Bank API service
  • ChEMBL MCP Server: Chemical database API service

Architecture

┌─────────────┐     ┌──────────────┐
│   LLM UI    │     │  Ollama LLM  │
│  (Chainlit) │     │              │
└─────┬───────┘     └───────┬──────┘
      │                     │
┌─────┴─────────────────────┴──────┐
│           LLM Client             │
└─────┬─────────────────────┬──────┘
      │                     │
┌─────┴───────┐     ┌──────┴───────┐
│  PDB MCP    │     │  ChEMBL MCP  │
│   Server    │     │    Server    │
└─────────────┘     └──────────────┘

Quick Start

  1. Configure environment:
cp .env.example .env
  1. Start services:
make build
make up
  1. Launch web interface:
make run-chainlit

Visit http://localhost:8000 to start querying biological data.

Development

  • Use make help to see available commands
  • Each service has its own README with detailed documentation
  • Configuration files are in conf/ directory

Description

This project contains multiple modules that interact with various services and APIs using the FastMCP framework. Each module is designed to perform specific tasks and can be run independently or together using Docker Compose. The primary focus of this project is on bio agents, providing tools and services to interact with biological data sources such as the Protein Data Bank (PDB).

Modules

LLM Client

The llm-client module provides a client that interacts with a Language Model (LLM) server to process queries and utilize available tools. It is built using the FastMCP framework and supports asynchronous operations with aiohttp.

For more details, refer to the LLM Client README.

Protein Data Bank

The protein_data_bank_mcp module provides a server that interacts with the Protein Data Bank (PDB) API to fetch structural assembly descriptions, chemical components, drugbank annotations, branched entities, non-polymer entities, polymer entities, uniprot annotations, structures, pubmed annotations, pdb cluster data aggregation, aggregation group provenance, pdb cluster data aggregation method, and pairwise polymeric interface descriptions. It is built using the FastMCP framework and supports asynchronous operations with aiohttp.

For more details, refer to the Protein Data Bank README.

Docker

Dockerfiles are provided for each module to build Docker images.

  • Build the Docker image:

    docker build -t <module-name> .
    
  • Run the Docker container:

    docker run --env-file .env <module-name>
    

Docker Compose

A docker-compose.yml file is provided to run all services together.

  • Start all services:

    docker-compose up -d
    
  • Stop all services:

    docker-compose down
    

Makefile

A Makefile is provided to simplify common tasks.

  • Available targets:
    • setup-env: Set up the initial environment.
    • build: Build all Docker images.
    • up: Start all services using docker-compose.
    • down: Stop all services using docker-compose.
    • restart: Restart all services using docker-compose.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.