Labsco
PDBeurope logo

PDBe MCP Servers

โ˜… 36

from PDBeurope

PDBe MCP Servers (Official) from the PDBe team integrate Protein Data Bank Europe resources with LLMs via Model Context Protocol. Provides seamless access to protein structure data through API tools and graph database schema assistance for intelligent Cypher query generation, bridging structural biology and AI research.

๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅโœ“ VerifiedAccount requiredAdvanced setup

PDBe MCP Servers

A set of Model Context Protocol (MCP) servers that provides seamless access to the Protein Data Bank in Europe (PDBe) API and PDBe Search. These servers expose PDBe's comprehensive structural biology data as MCP tools, enabling direct integration with any AI client that supports MCP.

The package also includes an advanced PDBe Graph server for users who run their own local PDBe-KB Neo4j graph database. PDBe does not provide a public running graph database instance for this MCP server to query, so most users should start with the API and Search servers.

Features:

  • PDBe API Server: Access core structural data through REST API endpoints
  • PDBe Search Server: Perform advanced Solr-based searches across structural data
  • PDBe Graph Server: Inspect the graph schema and, with a local PDBe-KB Neo4j setup, query complex relationships and molecular interactions

AI Client Integration

Configuration

  1. Open your AI client's MCP configuration.

    MCP-compatible clients use different settings locations and file formats. Many JSON-based clients use an mcpServers object, while some clients provide commands or a settings UI for adding servers.

  2. Add the recommended PDBe MCP server configuration.

    For JSON-based clients that support mcpServers, add:

    For PyPI installation (recommended):

    {
      "mcpServers": {
        "PDBe API Server": {
          "command": "uvx",
          "args": [
            "pdbe-mcp-server",
            "--server-type",
            "pdbe_api_server"
          ]
        },
        "PDBe Search Server": {
          "command": "uvx",
          "args": [
            "pdbe-mcp-server",
            "--server-type",
            "pdbe_search_server"
          ]
        }
      }
    }

    For local development installation:

    {
      "mcpServers": {
        "PDBe API": {
          "command": "/usr/local/bin/uv",
          "args": [
            "run",
            "--directory",
            "/path/to/your/PDBe-MCP-Servers",
            "pdbe-mcp-server",
            "--server-type",
            "pdbe_api_server"
          ]
        },
        "PDBe Search": {
          "command": "/usr/local/bin/uv",
          "args": [
            "run",
            "--directory",
            "/path/to/your/PDBe-MCP-Servers",
            "pdbe-mcp-server",
            "--server-type",
            "pdbe_search_server"
          ]
        }
      }
    }

Note:

  • For the PyPI installation method, ensure uvx is available in your PATH (this comes with uv)
  • For local development, ensure that uv is installed and the /path/to/your/PDBe-MCP-Servers matches your actual directory

Add the graph server only if you have a local PDBe-KB Neo4j graph database configured. See Advanced Graph Server Configuration.

  1. Restart or reload your AI client to load the new configuration.

Antigravity Example

In Antigravity, open Manage MCP Servers and select View raw config, or edit ~/.gemini/antigravity/mcp_config.json, then add the PDBe server entries:

{
  "mcpServers": {
    "PDBe API Server": {
      "command": "uvx",
      "args": [
        "pdbe-mcp-server",
        "--server-type",
        "pdbe_api_server"
      ]
    },
    "PDBe Search Server": {
      "command": "uvx",
      "args": [
        "pdbe-mcp-server",
        "--server-type",
        "pdbe_search_server"
      ]
    }
  }
}

Codex Example

In Codex, add the PDBe MCP servers with the CLI:

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
codex mcp list

For a local development checkout, point Codex at the repository directory:

codex mcp add pdbe-api-local -- uv run --directory /path/to/your/PDBe-MCP-Servers pdbe-mcp-server --server-type pdbe_api_server
codex mcp add pdbe-search-local -- uv run --directory /path/to/your/PDBe-MCP-Servers pdbe-mcp-server --server-type pdbe_search_server

Using in an AI Client

Once configured, you can access PDBe tools directly in your AI client conversations:

  • Search for protein structures: "Find structures for UniProt accession P12345"
  • Query structure releases: "Show me all structures released this month grouped by experimental method"
  • Advanced search queries: "Find all X-ray crystal structures with resolution better than 2.0 ร… from 2024"

The tools will appear in your AI client's tools interface, where you can enable or disable them as needed.

Server Types

  • pdbe_api_server: Core PDBe REST API access with essential structural data
  • pdbe_search_server: Advanced Solr-based search capabilities for complex structural queries and data analysis
  • pdbe_graph_server: Advanced/local server for inspecting the PDBe-KB graph schema and optionally executing read-only Cypher queries against a locally configured Neo4j database

Tool Reference

API Server Tools

The pdbe_api_server generates tools from the PDBe API OpenAPI specification. Use this server for core PDBe REST API data, such as entries, assemblies, molecules, ligands, publications, and validation information.

Search Server Tools

get_pdbe_search_schema

Retrieves the complete Solr search schema showing all available fields, data types, and descriptions. Use this to understand what fields you can search and filter on.

Example usage:

"Show me the search schema for PDBe structures"

run_pdbe_search_query

Execute Solr-style search queries with flexible field selection, filter queries, facets, grouping, sorting, and pagination options.

Parameters:

  • query (required): Raw Solr query string passed as q (e.g., *:*, pdb_id:1cbs, text:*kinase*, resolution:[0 TO 2.0])
  • fl (optional): Field list as a string or array of field names to include in results
  • filters (optional): Backwards-compatible alias for fl
  • fq (optional): Filter query string or array of filter query strings
  • sort (optional): Sort criteria (e.g., release_date desc, resolution asc)
  • start (optional): Starting index for pagination (default: 0)
  • rows (optional): Number of results to return (default: 10)
  • facet (optional): Enable Solr faceting
  • facet_fields (optional): Field facet string or array, sent as facet.field
  • facet_queries (optional): Query facet string or array, sent as facet.query
  • facet_limit, facet_mincount, facet_sort (optional): Common facet controls
  • group (optional): Enable Solr grouping
  • group_field (optional): Grouping field string or array, sent as group.field
  • group_limit, group_offset, group_sort (optional): Common grouping controls
  • params (optional): Object of additional Solr parameters for advanced use

Example queries:

{
  "query": "*:*",
  "fq": ["release_date:[2025-10-01T00:00:00Z TO 2025-10-31T23:59:59Z]"],
  "group": true,
  "group_field": "experimental_method",
  "rows": 0
}

{
  "query": "*:*",
  "fq": ["experimental_method:\"X-ray diffraction\"", "resolution:[0 TO 2.0]"],
  "fl": ["pdb_id", "title", "resolution", "experimental_method"],
  "sort": "resolution asc",
  "rows": 20
}

{
  "query": "text:*ATP*",
  "facet": true,
  "facet_fields": ["ligand_name", "experimental_method"],
  "facet_mincount": 1,
  "rows": 10
}

Search Field Examples

Common searchable fields include:

  • pdb_id: PDB entry identifier
  • experimental_method: Structure determination method
  • release_date: Structure release date
  • resolution: Structure resolution (ร…)
  • molecule_type: Type of molecule (protein, DNA, RNA, etc.)
  • organism_scientific_name: Source organism
  • ligand_name: Bound ligands
  • title: Structure title/description

Use get_pdbe_search_schema to discover all available fields and their descriptions.

Development and Testing

Explore available tools and test API responses:

npx @modelcontextprotocol/inspector

The MCP Inspector provides an interactive interface to browse tools, test queries, and validate responses before integrating with your application.

Resources

Support

For questions, bug reports, or feature requests: