RCSB PDB MCP Server

An MCP server for interrogating Protein Data Bank structures - discover, inspect, and cross-reference - from LLM clients (Claude Desktop, MCP Inspector, Cursor, etc.). Its 35 documented tools cover rcsb, entity, seqcoord, polymer. It runs locally over stdio via the published package.

People connecting this server to Claude, Cursor, VS Code, or another MCP client. The project is written in Python.

VERIFIED ACTIVE

LAST COMMIT 2026-08-17 · ★ 3 · #230 OF 848 MAINTAINED OTHER · VERIFIED 2026-08-25

MIT · Python servers · how we verify → /methodology

01 · Install RCSB PDB

before you install - you'll need

The README does not document required environment variables for a basic install.

Claude Code

claude mcp add rcsb-rcsb-mcp -- uvx rcsb-mcp

Claude Desktop / Cursor / VS Code - add to config

{
  "mcpServers": {
    "rcsb-rcsb-mcp": {
      "command": "uvx",
      "args": [
        "rcsb-mcp"
      ]
    }
  }
}

Same JSON for Cursor. For VS Code, rename the top-level key from `mcpServers` to `servers`.

Using another client? Same JSON, different key

Claude Desktop · mcpServers

Cursor · mcpServers

VS Code · servers

Windsurf · mcpServers

Zed · context_servers

Cline · mcpServers

Roo Code · mcpServers

Continue · mcpServers

LibreChat · mcpServers

Gemini CLI · mcpServers

Codex CLI · mcp_servers

Full setup guides: every client.

02 · Evidence

Security posture

What to check before giving this server access to your agent - from the registry, GitHub, and our own probes. We don't score safety; we show what's verifiable.

runs as local process (stdio) - runs on your machine with your user's permissions

license MIT - declared in the repository

pypi package rcsb-mcp - check the name against the project README before installing (PyPI has no namespace ownership)

registry namespace io.github.rcsb is GitHub-verified and matches the repo owner

03 · What RCSB PDB can do

Prose above is summarized from the project's README and registry record - no invented capabilities.

What you can build

An agent gets 35 documented tools spanning rcsb, entity, seqcoord, polymer, including rcsb_list_pdb_search_attributes, rcsb_find_go_terms, rcsb_find_interpro_domains, rcsb_find_enzyme_classes.

The 35 tools it gives your agent

Extracted from the project's README - what RCSB PDB lets an agent do.

rcsb_list_pdb_search_attributes
- Discover searchable attribute paths, types, and operators. schema="structure" (default, ~677) or schema="chemical" (~57: chem_comp., drugbank_info., ...).
rcsb_find_go_terms
- Resolve a free-text molecular function / biological process / cellular component to Gene Ontology ids (via EBI QuickGO), annotated with PDB entry counts - then
rcsb_find_interpro_domains
- Resolve a free-text protein domain / family / fold to InterPro ids (via EBI InterPro API), annotated with PDB entry counts - then search by rcsb_polymer_entity_
rcsb_find_enzyme_classes
- Resolve a free-text enzyme / reaction to Enzyme Commission (EC) numbers (via EBI Search/IntEnz), annotated with PDB entry counts - then search by rcsb_polymer_e
rcsb_find_disease_terms
- Resolve a free-text disease / condition to MONDO ids (via EBI OLS), annotated with PDB entry counts - then search by rcsb_uniprot_annotation.annotation_lineage.
rcsb_find_organisms
- Resolve a free-text organism / common name / clade to NCBI Taxonomy ids (via UniProt taxonomy), annotated with PDB entry counts - then search by rcsb_entity_sou
rcsb_search_fulltext
- Free-text keyword search (e.g. "CRISPR Cas9"), optionally refined with structured attributes filters (AND/OR) and sort.
rcsb_search_by_attribute
- Structured search on one or more indexed attributes (resolution, organism, release date, ...) combined with a single AND/OR. Each AttributeFilter supports exist
rcsb_search_by_sequence
- MMseqs2 sequence-similarity search (BLAST-like).
rcsb_search_by_chemical
- Chemical search by SMILES/InChI descriptor (whole-molecule or substructure) or molecular formula.
rcsb_search_by_structure
- 3D shape-similarity search against a reference PDB assembly or chain.
rcsb_search_by_seqmotif
- Short sequence-motif search (PROSITE pattern, regex, or simple wildcards).
show all 35 tools
rcsb_search_strucmotif
- 3D structural-motif search: structures sharing a geometric arrangement of specific residues (e.g. a catalytic triad).
rcsb_get_entries
- PDB entries
rcsb_get_polymer_entities
- Polymer entities (protein/NA)
rcsb_get_nonpolymer_entities
- Ligand/cofactor entities
rcsb_get_branched_entities
- Carbohydrate entities
rcsb_get_polymer_entity_instances
- Polymer chains
rcsb_get_nonpolymer_entity_instances
- Bound-ligand instances
rcsb_get_branched_entity_instances
- Glycan chains
rcsb_get_assemblies
- Biological assemblies
rcsb_get_interfaces
- Assembly interfaces
rcsb_get_chem_comps
- Chemical components / ligands
rcsb_get_entry_groups
- Entry groups
rcsb_get_polymer_entity_groups
- Polymer entity groups (seq. clusters)
rcsb_get_nonpolymer_entity_groups
- Non-polymer entity groups
rcsb_get_uniprot
- UniProt record (single)
rcsb_get_pubmed
- PubMed record (single, integer)
rcsb_get_group_provenance
- Grouping provenance (single)
rcsb_describe_data_object
- Introspect an object's live GraphQL schema to build a fields= selection: browse a level, drill into a nested object with into=, or search by keyword with query=
rcsb_seqcoord_alignments
- Cross-reference a sequence across PDB / UniProt / NCBI with aligned ranges (e.g. 4HHB_1 → NCBI proteins NP_000508, NP_000549).
rcsb_seqcoord_annotations
- Positional features for one sequence, from one or more annotation sources (UNIPROT, PDB_ENTITY, PDB_INSTANCE, PDB_INTERFACE).
rcsb_seqcoord_group_alignments
- Alignments among members of a sequence group (MATCHING_UNIPROT_ACCESSION / SEQUENCE_IDENTITY).
rcsb_seqcoord_group_annotations
- Annotations across a group; summary=True returns a positional summary.
rcsb_describe_seqcoord_object
- Introspect the live schema to discover fields available on a seqcoord object (for use with fields=).

Limitations (from the README)

- Search endpoint: https://search.rcsb.org/rcsbsearch/v2/query (POST, JSON body). - Data endpoint: https://data.rcsb.org/graphql (POST, GraphQL). It returns HTTP 200 even for query errors, reporting them in an errors array. - Sequence Coordinates endpoint: https://sequence-coordinates.rcsb.org/graphql (POST, GraphQL; same HTTP-200-with-errors behavior). - The rcsb_find_ resolvers map free text to ontology ids via EBI

04 · Who maintains RCSB PDB

RCSB PDB is maintained by rcsb. It's the only MCP server we track from this author; the repo dates to Jun 2026.

05 · Facts

category
other - ranked #230 of 848 actively-maintained other servers as of 2026-08-25.
registry
io.github.rcsb/rcsb-mcp (active, first published 2026-06-25 · 19 versions)
packages
pypi:rcsb-mcp

06 · RCSB PDB FAQ

Is RCSB PDB still maintained?

Yes - as of 2026-08-25, its last commit was 2026-08-17. We re-verify nightly.

What can RCSB PDB do?

An agent gets 35 documented tools spanning rcsb, entity, seqcoord, polymer, including rcsb_list_pdb_search_attributes, rcsb_find_go_terms, rcsb_find_interpro_domains, rcsb_find_enzyme_classes.

How do I install RCSB PDB?

Run `uvx rcsb-mcp`. The README does not document required environment variables for a basic install. You can also paste the ready-made client config above.

Does RCSB PDB run locally?

Yes - it's a stdio server: it runs on your machine (via uvx) with your user's permissions. Your data stays local unless the server itself calls external APIs.

07 · Alternatives to RCSB PDB