Skip to main content
Glama

gget-cryo

Search EMDB (3D cryo-EM density maps) and EMPIAR (raw cryo-EM imaging datasets) from Python or as an MCP server for LLM agents.

Features

  • EMDB search — filter by resolution, method, deposition year, keyword

  • EMPIAR search — filter by keyword, release year, movie count, detector

  • Cross-referencing — look up which EMPIAR datasets produced a given EMDB map, and vice versa

  • MCP server — expose all searches as tools for Claude, GPT, or any MCP-compatible LLM

Related MCP server: UniProt MCP Server

Installation

pip install -r requirements.txt

Usage

As a Python library

from gget_cryo import emdb_search, empiar_search, emdb_to_empiar

# Find ribosome maps better than 3.5 A deposited since 2024
results = emdb_search(keyword="ribosome", max_resolution=3.5, year_range=(2024, 2026))
print(results["hit_count"])

# Find EMPIAR datasets with >1000 raw movies
results = empiar_search(keyword="spike", n_movies_min=1000)

# Cross-reference: what raw data produced EMD-3061?
empiar_ids = emdb_to_empiar("EMD-3061")

As an MCP server

Run directly:

python3 mcp_server.py

Or add to your Claude Code MCP config (~/.claude/settings.json):

{
  "mcpServers": {
    "gget-cryo": {
      "command": "python3",
      "args": ["/path/to/gget-cryo/mcp_server.py"]
    }
  }
}

This exposes four tools: search_emdb, search_empiar, cross_ref_emdb_to_empiar, cross_ref_empiar_to_emdb.

Demo

python3 demo.py

API details

Resolution convention

Resolution is in Angstroms. Lower = better. To find maps better than 3.5 A, use max_resolution=3.5.

EMPIAR search limitations

EMPIAR's search index doesn't include detector or movie-count fields. When you filter by n_movies_min or detector, each candidate entry is fetched individually — so the result is exact only among the candidates checked (controlled by max_candidates).

License

MIT

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    Enables searching, retrieving, and downloading protein structure data from the RCSB Protein Data Bank. Supports intelligent protein structure search, comprehensive data retrieval, and multiple file format downloads for bioinformatics research.
    3
    MIT
  • A
    license
    B
    quality
    D
    maintenance
    Provides seamless access to UniProtKB protein database, enabling queries for protein entries, sequences, Gene Ontology annotations, full-text search, and ID mapping across 200+ database types.
    5
    2
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    A Model Context Protocol server providing programmatic access to 3D protein structural data from RCSB PDB, PDBe, and UniProt, enabling search, retrieval, comparison, and analysis of protein structures.
    143 npm
    5
    Apache 2.0