foldseek-structural-search
google-deepmind/science-skills
Search for structurally similar proteins using 3D coordinate files against PDB, AlphaFold, and other databases.
What is foldseek-structural-search?
Submits a 3D protein structure file (.pdb, .cif, or .mmcif) to the Foldseek API to find structurally similar proteins across multiple databases. Use this when you have a physical 3D structure and want to identify homologous proteins, infer function, and understand structural relationships.
- Validates and uploads 3D protein structure files to the Foldseek web server API
- Searches against multiple databases including PDB, AlphaFold, CATH, MGnify, and others
- Returns ranked structural matches with probability scores, query coverage, and e-values
- Generates both JSON (detailed results) and Markdown (formatted table) output files
- Interprets alignment metrics and synthesizes functional annotations from top matches
How to install foldseek-structural-search
npx skills add https://github.com/google-deepmind/science-skills --skill foldseek-structural-search- uv package manager installed and on PATH (see uv skill)
- A valid 3D structure file in .pdb, .cif, or .mmcif format
- Internet access to reach the Foldseek API
- License acknowledgment (user must review terms at https://search.foldseek.com/search)
How to use foldseek-structural-search
- 1.Prepare or download a 3D protein structure file (.pdb, .cif, or .mmcif)
- 2.Provide the file path to the skill along with any specific database preferences (optional)
- 3.The skill validates the file and queries the Foldseek API against your chosen databases
- 4.Review the generated .md file containing the Markdown-formatted results table
- 5.Examine the top 3-5 structural matches, assessing Prob (probability), Q-Cov (query coverage), and e-values
- 6.Read the detailed JSON output file for downstream analysis or integration with other tools
Use cases
- Finding structurally similar proteins when you have a PDB or AlphaFold structure file
- Inferring protein function by identifying homologous proteins with known annotations
- Discovering distant evolutionary relationships that sequence-only searches might miss
- Validating predicted structures by comparing against known structural databases
- Analyzing protein families and domains through structural similarity clustering
- Structural biologists and computational biologists
- Researchers working with AlphaFold predictions or experimental structures
- Scientists performing protein function annotation
- Drug discovery teams analyzing target protein structures
foldseek-structural-search FAQ
No. Foldseek requires a physical 3D coordinate file (.pdb, .cif, or .mmcif). If you only have a sequence, first download or predict a structure using AlphaFold or similar tools.
Allowed databases are: afdb50, afdb-swissprot, pdb100, BFVD, mgnify_esm30, cath50, gmgcl_id, bfmd, and afdb-proteome. If you request an unlisted database, the skill will halt and show you the allowed list.
Prob (Probability) approaching 1.0 indicates high confidence the match is a true structural homologue. Q-Cov (Query Coverage) as a high percentage means the match covers most of your query protein's overall shape, not just a small motif.
Two files are created: a .json file with full detailed results for downstream analysis, and a .md file with a formatted table of top matches for immediate review.
The skill will inform you clearly and ask you to verify the file path and format. Ensure your file is a valid .pdb, .cif, or .mmcif and that you have internet access.
Full instructions (SKILL.md)
Source of truth, from google-deepmind/science-skills.
name: foldseek-structural-search description: > Performs 3D structural searches of proteins against various databases (PDB, AlphaFold, CATH, MGnify, etc.) using the Foldseek API. Use ONLY when the user provides a physical 3D coordinate file (.cif, .mmcif, or .pdb) and wants to find structurally similar proteins. Do NOT use if the user only provides a protein sequence, gene name, or UniProt ID.
Prerequisites
uv: Read theuvskill and follow its Setup instructions to ensureuvis installed and on PATH.- User Notification: If .licenses/foldseek_structural_search_LICENSE.txt does not already exist in the workspace root directory then (1) prominently notify the user to check the terms at https://search.foldseek.com/search and https://github.com/steineggerlab/foldseek, then (2) create the file recording the notification text and timestamp.
Goal
Submit a user-provided 3D protein structure file (.cif, .mmcif, or .pdb)
to the Foldseek web server API to find structurally similar proteins. Report the
top structural hits, interpret key alignment metrics, summarize the inferred
protein functions, save the Markdown-formatted table to a .md file, and save
the full detailed results to a local JSON file.
Core Rules
- File Requirement: This tool absolutely cannot search by sequence, name,
or accession ID. It strictly requires a
.pdb,.cif, or.mmciffile path. - Strict Validation: Never bypass the input validation or the database allowlist check.
- Do Not Parse the JSON: Rely entirely on the generated
.mdfile for your immediate summary. The JSON is saved purely for subsequent, specialized tool use. - No Raw Parsing: Do not attempt to parse or read the raw 3D coordinates yourself; always pass the file to the script.
- Notification: If this skill is used, ensure this is mentioned in the output.
Instructions
- Strict Input Validation: Verify that the user has explicitly provided a
valid path to a
.cif,.mmcif, or.pdbfile in their workspace.- If the user provided a protein name, an amino acid sequence, or an accession ID (e.g., a UniProt ID) but NO downloaded structure file, halt immediately. Do not run the script.
- Inform the user that Foldseek requires a physical 3D coordinate file, and suggest downloading the structure first (e.g., using the AlphaFold fetch tool).
- Database Validation: Check if the user requested specific databases to
search.
- Allowed List:
afdb50,afdb-swissprot,pdb100,BFVD,mgnify_esm30,cath50,gmgcl_id,bfmd,afdb-proteome. - If the user requests a database NOT on this list, halt immediately. Do not run the script. Inform the user that the database is unsupported and provide them with the allowed list.
- Allowed List:
- Generate File Names: Generate descriptive output file names for both the
JSON data and the Markdown table based on the input file (e.g.,
proteinA_foldseek_results.jsonandproteinA_foldseek_results.md). - Execute the python script based on the user's request, redirecting the
standard output into your generated
.mdfile:- Default (No databases specified):
uv run scripts/search.py <path-to-file> -o <generated-filename.json> > <generated-filename.md> - Custom (Valid databases specified):
uv run scripts/search.py <path-to-file> -o <generated-filename.json> --databases <db1,db2,db3> > <generated-filename.md>
- Default (No databases specified):
- The script will query the databases, save the full JSON payload, and write a
Markdown-formatted table to your specified
.mdfile. - Read the Results: Open and read the newly generated
.mdfile carefully to view the Markdown table. - Interpret the Metrics: Summarize the top 3 to 5 structural matches that
have meaningfull annotations for the user. When reporting, assess the match
quality using these specific fields:
- Prob (Probability): Values approaching 1.0 (100%) indicate extreme confidence that the fold is a true structural homologue.
- Q-Cov (Query Coverage): High percentages mean the match covers the majority of the query protein's overall shape, rather than just a small local motif.
- E-value & Seq Identity: Use these to provide additional evolutionary context.
- Perform Functional Analysis: Analyze the text descriptions embedded
within the
Target IDcolumn for the reported matches.- Explicitly report the specific protein names/functions of the top structural homologues.
- Provide a synthesized overview summarizing the entire variety of different functions, domains, or protein families found across the whole list of homologues (e.g., "Most hits are portal proteins, but there is also a distinct cluster of viral capsid matches...").
- Explicitly inform the user of both newly created files (
.jsonand.md) and their locations so they can be seamlessly used in subsequent analysis steps.
* If the API returns an error or the file is missing, inform the user clearly
and ask them to verify the file path.
Related skills
More from google-deepmind/science-skills and the wider catalog.

gnomad-database
Query the Genome Aggregation Database (gnomAD) for variant frequencies, gene constraints, and structural variants.

gtex-database
Access RNA expression baselines and eQTL data from GTEx across 54 normal human tissues.

human-protein-atlas-database
Query protein expression levels, subcellular localization, and tissue distribution from the Human Protein Atlas.

interpro-database
Query InterPro's unified protein domain database to identify families, domains, and annotate genomes with GO terms.

jaspar-database
Query JASPAR database for transcription factor binding profiles and position weight matrices.

literature-search-arxiv
Search, retrieve, and download scientific papers from arXiv with metadata extraction and full-text access.