get_pdbe_search_schemaLABSCO SUMMARY
Schema first, then query — which is what stops a model inventing field names.
Both halves follow the same shape: fetch the schema, then run the query. That matters here because the search index and the PDBe-KB graph both have vocabularies nobody memorises, and a guessed field name returns nothing rather than an error. The graph schema tools work with no database of your own; only Cypher execution needs a local install.
What it is
A set of servers over PDBe. One generates its tools from the PDBe REST API for core entry data; a second exposes PDBe's Solr search; a third inspects the PDBe-KB graph schema and, against a graph database of your own, runs read-only Cypher.
What you get
- Core PDBe entry data — entries, assemblies, molecules, ligands, publications and validation — through tools generated from the API specification
- The full Solr search schema, so field names and types come from the index rather than from memory (get_pdbe_search_schema)
- Structure search with field selection, filter queries, facets, grouping, sorting and paging (run_pdbe_search_query)
- The graph schema without a database of your own: node types, relationship types, the patterns defined for a given label, and worked example queries (pdbe_graph_nodes, pdbe_graph_edges, pdbe_graph_node_relationships, pdbe_graph_example_queries)
- Read-only Cypher against a PDBe-KB graph you host yourself — only MATCH and OPTIONAL MATCH are accepted, and writes are refused (pdbe_run_cypher_query)
- An experimental compact output format for API and Cypher responses, which falls back to JSON if encoding fails
Requirements
Python and uv; the package runs straight from PyPI with no install step. The API and search servers need nothing else. The Cypher tool needs a PDBe-KB graph database you set up and credential yourself — PDBe does not host a public one, so most people should start with the API and search servers.
Setup effort
One command — uvx pdbe-mcp-server
USE CASES
Finding structures that match a set of conditions
Read the search schema, then filter on experimental method, resolution and release date in one query.
Summarising what was released in a period
Group a date-filtered search by experimental method and take the counts.
Learning what the PDBe-KB graph contains
List node and relationship types and check which patterns a label actually has, before writing any Cypher.
Querying your own PDBe-KB copy
Start from the example queries, then run your own read-only MATCH against the local database.
7 tools
Listed in project docs. Your client may show a different list.
run_pdbe_search_querypdbe_graph_nodespdbe_graph_edgespdbe_graph_node_relationshipspdbe_graph_example_queriespdbe_run_cypher_queryBEFORE YOU INSTALL
What to know first
Tools you get
7 tools named in the project's documentation.
Requires
- uvx on PATH
- Python 3.10+
INSTALLATION
Connect your client
Server setup
uvx pdbe-mcp-serverMCP Clients
Codex
codex mcp add pdbe-api -- uvx pdbe-mcp-server --server-type pdbe_api_server
codex mcp add pdbe-search -- uvx pdbe-mcp-server --server-type pdbe_search_server