mcpField
C
ChEMBL-MCP-Server

ChEMBL-MCP-Server

Local
github.com/JackKuo666Science & Education2Updated 82w ago

About ChEMBL-MCP-Server

ChEMBL-MCP-Server wraps the ChEMBL web resource client to provide MCP access to ChEMBL data and chemical functions. It is intended for AI assistants and scientific users querying molecular, assay, target, activity, and drug information.

Key features

  1. 01ChEMBL database API access
  2. 02Activity, assay, target, molecule, and drug data
  3. 03SMILES canonicalization and conversion
  4. 04Chemical structural alerts
  5. 05HTTP and stdio transports
  6. 06Asynchronous calls with error handling and timeouts

Use cases

  1. 01Look up ChEMBL molecule and drug records
  2. 02Query assay, target, and activity data
  3. 03Convert SMILES strings to InChI
  4. 04Retrieve chemical structural alerts

MCP support

Exposes ChEMBL data and chemical functions to MCP clients through server tools. It supports HTTP and stdio transports.

Configuration

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

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

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

ChEMBL-MCP-Server

smithery badge

A FastMCP wrapper server based on the chembl_webresource_client package, providing API access to the ChEMBL database.

Features

  • Complete API access to the ChEMBL database
  • Asynchronous API calls implemented using FastMCP framework
  • Built-in error handling and timeout mechanisms
  • Support for both HTTP and stdio transport methods
  • Complete type annotations and docstrings

Installation

# Clone repository
git clone https://github.com/yourusername/ChEMBL-MCP-Server.git
cd ChEMBL-MCP-Server

# Install dependencies
pip install -r requirements.txt

Usage

Starting the Server
# Start HTTP server with default configuration
python chembl_searver.py

# Specify host and port
python chembl_searver.py --host 0.0.0.0 --port 8080

# Use stdio transport
python chembl_searver.py --transport stdio

# Set log level
python chembl_searver.py --log-level DEBUG
Available Parameters
  • --host: Server host address, defaults to 127.0.0.1
  • --port: Server port, defaults to 8000
  • --transport: Transport method, choose between http or stdio, defaults to http
  • --log-level: Log level, choose from DEBUG, INFO, WARNING, ERROR, CRITICAL, defaults to INFO

API Functions

The server provides the following API functions:

Data Entity APIs
  • example_activity: Get activity data
  • example_assay: Get assay data
  • example_target: Get target data
  • example_molecule: Get molecule data
  • example_drug: Get drug data
  • More data entity APIs...
Chemical Tool APIs
  • example_canonicalizeSmiles: Canonicalize SMILES strings
  • example_smiles2inchi: Convert SMILES to InChI
  • example_smiles2svg: Convert SMILES to SVG image
  • example_structuralAlerts: Get structural alerts
  • More chemical tool APIs...

Examples

Check the chembl_search.py file for examples of using various APIs.

Dependencies

  • chembl_webresource_client: ChEMBL Web Service Client
  • mcp: MCP Framework
  • fastapi: FastAPI Framework
  • uvicorn: ASGI Server
  • asyncio: Asynchronous I/O Library

License

MIT

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.