Overview
RCSB MCP (cnyambura) connects an MCP client to tools for accessing the RCSB Protein Data Bank API. Its role is data retrieval: an assistant can request entry metadata, inspect polymer entities, download structure files, or submit custom endpoint queries. This repository is a third-party interface to RCSB services, not the database itself; the supplied sources do not establish upstream endorsement.
The documented inputs include four-character PDB identifiers, polymer entity numbers, API endpoint paths, and optional query parameters encoded as a JSON string. Entry lookups return JSON containing fields such as title, experimental method, resolution, dates, authors, and source organism. Polymer lookups return molecule names, sequences, molecular weights, entity types, and organism information. Structure downloads support PDB, mmCIF, and PDBML/XML, including compressed variants, and return a status and local file path.
The README describes standalone execution and a Claude Desktop configuration, while the project metadata declares Python and MCP-related dependencies. A custom-query tool extends access to documented assembly, nonpolymer entity, and UniProt cross-reference endpoints. The organism-search tool has a narrower role: it returns instructions and example queries rather than a retrieved set of matching structures. The supplied evidence describes access functions, not structure prediction, docking, or scientific validation. Evaluation should therefore focus on retrieval accuracy, usable outputs, and client integration before incorporating the server into a research workflow.
Key Features
- `get_pdb_entry` retrieves entry-level JSON, including experimental method, resolution, dates, authors, and source organism.
- `get_polymer_entity` retrieves protein, DNA, or RNA entity details, with an optional entity identifier defaulting to "1".
- `download_structure_file` supports PDB, mmCIF, and PDBML/XML files and their compressed variants, with optional output-directory and filename settings.
- `query_rcsb_api` accepts an endpoint path and optional JSON-string parameters, returning the API response as JSON.
- `search_pdb_by_organism` supplies organism-search instructions and example queries rather than executing a documented search.
- The README provides standalone server execution and Claude Desktop integration instructions.
Use Cases
- Suggested evaluation: retrieve metadata for selected PDB entries to support a structural-biology literature or dataset curation workflow.
- Suggested evaluation: inspect polymer sequences and entity descriptions before choosing structures for downstream analysis.
- Suggested evaluation: download structures in a required format and verify the reported file paths before using separate visualization or modeling software.
- Suggested evaluation: query assembly or ligand-related endpoints to gather contextual records for structure-based research.
How to Use
- Read the repository README to identify the tools and decide whether metadata retrieval, file downloads, or custom queries fit your workflow.
- Check the Python requirement and declared dependencies in pyproject.toml. Follow the README's documented dependency-installation route; the supplied excerpts do not establish tested platform compatibility.
- Choose standalone execution or the README's Claude Desktop integration. For desktop integration, replace the example local repository path with your own location and restart the client as instructed.
- Evaluate an entry lookup and a polymer-entity lookup using selected PDB identifiers. Inspect the returned JSON against the fields described in the README before relying on it downstream.
- Test a structure download with an explicit format and destination, then check the returned status and file path. For custom endpoints, consult the linked RCSB Data API and web-services overview. Treat organism-search output as guidance, not search results.