mcp-bindingdb
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
mcp-bindingdb
Under construction: this project is in early development. Tools, table layouts and examples may change without notice.
An MCP server that lets Claude query BindingDB: about 3.2M measured protein–ligand binding affinities for 1.5M compounds and 13k targets, from a local, read-only copy.
Examples
Worked examples, grouped in levels from single lookups to multi-step analyses, show real questions answered with these tools: looking up compounds and targets, exact, similarity and substructure search, selectivity profiles, R-group tables and matched pairs, multi-step workflows such as a clustered selectivity heat map, 3D binding-site views, property filters and structural alerts, SQL analytics, and saving the work as a transcript. Each is an HTML transcript with the prompt, the answer, its figures and structure drawings (index).
Related MCP server: ChEMBL MCP Server
Claude setup
Install uv and Docker (needed only to build the database), and optionally a Java runtime (for IUPAC-name parsing). Then clone the repository:
git clone https://github.com/pwrose/mcp-bindingdb.git cd mcp-bindingdbBuild the database (downloads the BindingDB dump; needs about 5 GB of disk space):
scripts/build_duckdb.shSee Building the database for releases and options.
Add the server to Claude.
Claude Desktop: add this to
claude_desktop_config.json(Settings → Developer → Edit Config) and restart Claude:{ "mcpServers": { "mcp-bindingdb": { "command": "uv", "args": ["--directory", "/path/to/mcp-bindingdb", "run", "--extra", "substructure", "--extra", "name", "--extra", "structures", "mcp-bindingdb"] } } }Claude Code: the repository's
.mcp.jsonregisters the server when you runclaudein this folder. To use it from any folder:claude mcp add --scope user mcp-bindingdb -- uv --directory /path/to/mcp-bindingdb run --extra substructure --extra name --extra structures mcp-bindingdb
If some tools are missing in a chat, check that they are switched on in the chat's tools menu.
Interactive structure editor
Ask "Open the BindingDB structure editor" in an MCP Apps-compatible chat client. Draw or edit a
molecule, paste SMILES/SMARTS, or resolve a chemical name with the existing name tool. Review an exact,
substructure or similarity search (default threshold 0.7), optionally restrict affinity in nM, and
choose Run query to see the results in the editor. The assistant fetches them (get_editor_results) when you ask about them. The sketcher and chemistry engines are bundled
with the server. See setup and testing.
Binding-site overlays
Ask e.g. "Overlay the crystal structures of the most potent HIV-1 protease inhibitors". The server
finds the target's ligands that have PDB complexes (find_pdb_complexes), downloads the entries from PDBe,
superposes their binding sites on the pocket's Cα atoms, and shows them in a 3D viewer in the chat:
protein chains as lines and ligands as sticks, each switched on or off per entry, with hydrogen bonds on
request and a table of the residues each ligand touches. It also writes the superposed complexes as mmCIF
files. See Tools.
Tools
Tool | Purpose |
| Interactive in-chat sketcher that runs exact, substructure and similarity searches |
| Results of the searches the user ran in the structure editor, for follow-up questions |
| Find compounds by name/synonym, ChEMBL id, |
| SMILES for a compound name (trade name, IUPAC name, CAS number), with the BindingDB compounds that have that structure |
| Find targets by name, gene name, UniProt entry name or accession |
| Identifiers, synonyms, PDB ligands, most potent targets, properties (MW, cLogP, QED, ...), scaffold and structural alerts (PAINS, Brenk, NIH) |
| Identifiers, synonyms, PDB ids, complex components, measurement counts |
| Most potent compounds for a target, with ligand efficiency and LipE; filtered by properties (e.g. MW, Ro5, no PAINS, a scaffold), ranked by efficiency, or grouped by scaffold |
| Activity/selectivity profile of a compound |
| Full record of one measurement, with assay description and citation |
| BindingDB entries of the same molecule (salts and stereo included), optionally only those with a measurement in an affinity range |
| Compounds containing a SMILES/SMARTS fragment, optionally only those with a measurement in an affinity range or with given properties, or the targets they were measured against |
| Compounds similar to a molecule, optionally only those with a measurement in an affinity range or with given properties, or the targets they were measured against |
| SAR table of a series: a target's ligands containing a core, each R-group position in its own column |
| Pairs of a target's ligands differing by one group, and what the change did to potency |
| Near-identical ligands of a target with very different potency |
| A target's ligands with structures in the PDB: ligand code, entries and potency |
| PDB complexes of a target's ligands superposed on the binding site, in a 3D viewer in the chat, with each ligand's contacts and hydrogen bonds |
| Opens an overlay's 3D viewer in the browser on the computer running the server, for chats that cannot show the panel (e.g. reached through a linked computer) |
| Table list with descriptions, or the columns of one table |
| Any read-only SQL query |
| A record of the session as Markdown, or as an HTML page with structure drawings: your prompts and Claude's answers, and, if you ask, every BindingDB tool call with its result |
| Compounds side by side, aligned on a shared substructure, with binding bars for their main targets |
| An R-group table of one series: the core drawn with R1, R2, … named, then a row per compound with its substituents drawn and its potency |
| Adds an image made with other tools (e.g. a matplotlib plot) as a figure for transcripts |
| Turns an existing Markdown transcript into an HTML page with structure drawings |
| List the logged tool calls, so a transcript includes only this chat's |
| Start a new transcript log |
Ask for a transcript at the end of a chat, e.g. "create a transcript of this session as a .md file", or
"create an HTML transcript" for a page with the structures drawn. Name a folder ("... in
~/results/heatmap") and the server writes the files there; otherwise they go to data/transcripts/
(change this with --transcript-dir or MCP_BINDINGDB_TRANSCRIPT_DIR).
Add "with the tool calls" to include every BindingDB lookup and its result.
All tools are read-only, apart from the transcripts and figures, which are written to files. Only chemical_name_to_smiles (PubChem) and overlay_binding_site (PDBe, RCSB) use the network.
See Tools for how the searches work and notes on the data.
More
Building the database: releases, derived tables, structure-search index
Tools: tool details, safety, data notes
Development: running the server by hand, server options, tests, examples
License
BSD 3-Clause; see LICENSE. BindingDB data are subject to BindingDB's own terms.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
This server cannot be deployed
Maintenance
Related MCP Connectors
BindingDB — measured protein/small-molecule binding affinities.
Link compounds to protein targets, rank bioactivity, and look up drug mechanisms and indications.
Query, join, profile, clean and convert CSV/JSON/Parquet with server-side DuckDB over MCP.
Biomedical data: compounds, drug info, and molecular targets
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables comprehensive access to PubChem's chemical database with over 110 million compounds. Supports chemical searches, structure analysis, bioactivity data, safety information, and molecular property calculations through 30 specialized tools.30MIT
- FlicenseNot gradedqualityDmaintenanceA Model Context Protocol (MCP) server that exposes ChEMBL's public bioactivity database as tools for searching compounds, retrieving bioactivity data, target compounds, and ADMET properties, usable by Claude and ChatGPT.-
- FlicenseNot gradedqualityCmaintenanceEnables discovery and querying of public OpenBind structure-affinity datasets, experimental binding events, benchmark results, and live Fragalysis targets and observations through read-only REST endpoints without requiring an API key.-
- AlicenseNot gradedqualityCmaintenanceEnables querying BindingDB for measured protein/small-molecule binding affinities, including finding ligands that bind a protein, protein targets for a compound, and affinities from PDB structures.134 npmMIT