Skip to main content
The ESM Atlas is is a free resource that provides predicted 3D structures from ESMFold2 and interpretable feature annotations, such as function, from the ESMC language model for over a billion proteins. Ask your AI agent questions about proteins through the ESM Atlas, and Biohub MCP looks it up and finds the proteins most like it. To see the structure of a selected protein, use the structure viewer, and to obtain structure files and more detailed structure information, see Get more from the ESM Atlas API.

Understanding SAE features

The ESM Atlas describes each protein by its SAE features: patterns that the ESMC protein language model picks up in sequences, such as a catalytic motif or a transmembrane helix. A sparse autoencoder (SAE) pulled 16,384 of these patterns out of ESMC, and each one has a number, a label, and a strength for your protein, as Understanding SAE features explains.

What you can ask

Ask in your own words, and your agent picks the tools and passes each result to the next step in the process. For example:

What does the ESM Atlas know about PETase from Ideonella sakaiensis? Explain its three strongest SAE features and where in the sequence each one is most active.

Find the ESM Atlas cluster closest to human hemoglobin alpha and summarize it: how big it is, how well characterized it is, its Pfam domains, and its most common phyla.

Find proteins in the ESM Atlas that resemble PETase from Ideonella sakaiensis but come from clusters with no characterized Pfam domains, and name three SAE features they all share.

You can use a sequence or an accession number instead of a protein name in any of these prompts.

Which tools your assistant uses

How a lookup works

1

Your AI agent gets the sequence

When you name a protein or give a UniProt accession, your AI agent looks up its sequence with esm_atlas_search_uniprot. For a UniParc or MGnify accession, it uses esm_atlas_lookup_accession. You can also directly input a protein sequence.
2

The ESM Atlas looks for the exact sequence first

If the ESM Atlas has the exact sequence, you see protein details from the stored record. A variant or a trimmed sequence counts as a new sequence.
3

A new sequence gets its features computed

If the ESM Atlas doesn’t have it, protein details and the similarity search compute its SAE features for this request, for sequences of up to 2,048 residues.
4

Similar proteins come from clusters

The ESM Atlas groups proteins into clusters by their SAE features, not by sequence identity. One protein, the representative, stands for each cluster. The similarity search compares your protein’s features with each representative and returns the closest ones, each with a sequence your agent can pass to the other tools.
Cluster details work only for a cluster representative, such as a similarity search hit, and compute nothing. Any other sequence, including many well-known UniProt proteins, returns not_found.
A name can match several UniProt entries. Add the organism, as in “PETase from Ideonella sakaiensis”, or give the UniProt accession. Your assistant can tell you which entry it used.

Read the results

For example, PETase’s strongest feature is feature 11080, labeled “AB hydrolase H-G-x-D motif”, with a label_reliability of high. Its strongest region has start 198 and end 205, which is residues 199 to 206 in UniProt numbering, ending at Asp206, one of PETase’s catalytic residues. Feature labels describe what a feature tends to capture, not an experimental annotation of your protein. ESM Atlas structures are predictions, not experimental structures.

Get more from the ESM Atlas API

The ESM Atlas tools return summaries, so the results stay small enough for your assistant to read. For full data, call the ESM Atlas API, which does not require an API key: Most endpoints identify a protein by its protein_hash instead of its sequence, as the API overview explains.

Sequences

Tools that take a sequence expect a raw amino-acid sequence in one-letter codes.
  • Use the 20 standard amino acids or X, B, U, Z, or O.
  • Letters are case-insensitive, and whitespace before or after the sequence, including line breaks, is removed.
  • Don’t include a FASTA header, or spaces or line breaks inside the sequence.
: and | are also accepted, but they stay in the sequence and change which ESM Atlas record matches, so leave them out of a single protein. Any other character returns invalid_input.

Search UniProt

esm_atlas_search_uniprot searches UniProt and returns protein records with sequences you can pass to the other tools.

Inputs

  • A search that matches nothing returns an empty proteins list, not an error.
  • A direct match on an accession or entry name returns that entry, whatever size is. An accession or entry name that UniProt doesn’t have runs as a text search instead.
  • An accession that UniProt has deleted returns one entry with a null name and sequence.

Results

Resolve an accession

esm_atlas_lookup_accession fetches the sequence for a UniParc or MGnify accession.

Inputs

Other formats, including UniProt accessions such as P42212, return invalid_input; esm_atlas_search_uniprot looks up UniProt accessions.
Looking up an MGnify accession often returns not_found, even for accessions the ESM Atlas returns. MGnify only returns sequences for the representative protein of each cluster in its latest release, and its clusters are different from ESM Atlas clusters. Paste the sequence instead. A similarity search hit already includes its sequence, so there is no need to look up its accession.

Results

An accession the database doesn’t have, or one without a usable amino-acid sequence, returns not_found. A sequence longer than 4,000 residues returns invalid_input.

Get protein details

esm_atlas_get_protein_details returns a protein’s ESM Atlas record and up to ten of its strongest SAE features.

Inputs

If the ESM Atlas has the sequence, the tool returns the stored record. If it doesn’t, the ESM Atlas computes SAE features for sequences of up to 2,048 residues, and features_computed_on_miss is true. A longer sequence that isn’t in the ESM Atlas returns sequence_too_long_for_features. This tool never predicts a structure; to predict and view one, use ui_show_structure with the same sequence, for up to 700 residues.

Results

Each entry in sae_features has:

Find similar protein clusters

esm_atlas_search_similar_protein_clusters compares a sequence’s SAE features with ESM Atlas cluster representatives and returns the closest ones.

Inputs

  • You can get fewer than top_k hits, because the ESM Atlas leaves out matches scoring below 0.5 and withholds hits are restricted by its guardrails .
  • The ESM Atlas can also predict structures for up to six hits that don’t have one yet, which adds time.

Results

Get cluster details

esm_atlas_get_cluster_info summarizes the cluster of a cluster representative.

Inputs

Results

Get SAE feature details

esm_atlas_get_sae_feature_detail explains one of the 16,384 SAE features learned from ESMC.

Inputs

Results

Limits

Errors

See Troubleshooting for details about codes.