> ## Documentation Index
> Fetch the complete documentation index at: https://docs.biohub.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Biohub MCP Server

> Connect ChatGPT, Codex, Claude, or Cursor to the Biohub MCP server to search the ESM Atlas, explain protein SAE features, and view Mol* structures.

Biohub MCP connects your AI assistant to the [ESM Atlas](/learn/guides/esm-atlas) through the [Model Context Protocol](https://modelcontextprotocol.io/).
Your assistant can look up a protein, find proteins with similar ESMC sparse autoencoder (SAE) features, explain what those features mean, and show the structure in an interactive Mol\* viewer.
There is nothing to install, and you don't need a Biohub account or an API key.

<Columns cols={2}>
  <Card title="Quickstart" icon="rocket" href="/biohub-mcp/quickstart">
    Add the server to your client and run a first request in a few minutes.
  </Card>

  <Card title="Connect your client" icon="plug" href="/biohub-mcp/connect-clients">
    Setup steps for ChatGPT, Codex, Claude, Cursor, VS Code, and other clients.
  </Card>

  <Card title="Example prompts" icon="message-square" href="/biohub-mcp/example-prompts">
    Prompts to copy, with the tools they use and what to expect back.
  </Card>

  <Card title="ESM Atlas tools" icon="wrench" href="/biohub-mcp/esm-atlas-tools">
    Inputs, outputs, limits, and errors for every tool.
  </Card>
</Columns>

## What you can do

* Turn a protein name or a UniProt, UniParc, MGnify, or IMG accession into an amino-acid sequence.
* Find ESM Atlas cluster representatives whose SAE feature profiles are closest to your protein, optionally only clusters with no characterized Pfam domains.
* See a protein's strongest SAE features, the residues that drive them, and what each feature means.
* Summarize a cluster: its size, how well characterized it is, its Pfam domains, and its most common phyla.
* View a stored or newly predicted structure, colored by chain or by confidence, with the residues you care about highlighted.

## Connection details

| Setting | Value |
| - | - |
| Server URL | `https://biohub.ai/mcp` |
| Transport | Streamable HTTP |
| Authentication | None. No sign-in or API key. |
| Suggested server name | `biohub` |

<Note>
  Opening the URL in a browser shows `405 Method Not Allowed`.
  That is expected, because MCP clients send POST requests to it.
</Note>

## Tools at a glance

Biohub MCP has seven tools.
All of them are marked read-only: they look things up and compute results, but they create no saved items, IDs, or links for you.

| Tool | What it does |
| - | - |
| `esm_atlas_search_uniprot` | Searches UniProt by name, accession, or fielded query and returns sequences. |
| `esm_atlas_lookup_accession` | Resolves a UniParc, MGnify, or IMG accession to a sequence. |
| `esm_atlas_get_protein_details` | Returns a protein's ESM Atlas record and its ten strongest SAE features. |
| `esm_atlas_search_similar_protein_clusters` | Finds ESM Atlas cluster representatives with similar SAE feature profiles. |
| `esm_atlas_get_cluster_info` | Summarizes a cluster's size, characterization, Pfam domains, taxonomy, and features. |
| `esm_atlas_get_sae_feature_detail` | Explains one of the 16,384 SAE features. |
| `ui_show_protein_structure` | Shows a stored or predicted structure as a PNG preview and, where supported, an interactive Mol\* viewer. |

The structure viewer is an MCP App that supported hosts draw inline.
Your client may show the tools with a prefix, such as `mcp__biohub__esm_atlas_search_uniprot`.

See the [ESM Atlas tools](/biohub-mcp/esm-atlas-tools) and [Structure viewer](/biohub-mcp/structure-viewer) references for the details.

## How it works

You ask a question in your AI client.
The assistant decides which tools to call and passes results from one tool to the next.
For example, a UniProt search returns a sequence, and the similarity search, protein details, and structure viewer all accept that sequence directly.

```mermaid theme={null}
flowchart LR
    You([You]) --> Client[AI client]
    Client -->|Tool call| MCP[Biohub MCP]
    MCP --> Atlas[ESM Atlas]
    MCP --> DBs[UniProt, EMBL-EBI MGnify, JGI IMG]
    MCP -->|Result and viewer| Client
```

When the ESM Atlas has no stored result for a sequence, some tools compute SAE features or predict a structure on the spot, which takes longer.
[Security and privacy](/biohub-mcp/security) explains when that happens and which services receive your queries.

## MCP or REST API?

| Choose | When it fits |
| - | - |
| Biohub MCP | You're working in an AI client and want the assistant to choose and chain the calls for you. |
| [ESM Atlas REST API](/learn/tutorials/atlas/overview) | You're writing code that needs fixed requests, explicit control flow, and direct access to responses. |

The MCP tools and the REST endpoints cover similar ground, but their inputs and outputs differ.
For example, the MCP tools take raw sequences, while several REST endpoints take a protein hash.

| MCP tool | Closest REST endpoint |
| - | - |
| `esm_atlas_search_uniprot` | [Resolve a UniProt ID](/api/protein/atlas/proteins/uniprot) |
| `esm_atlas_lookup_accession` | None |
| `esm_atlas_get_protein_details` | [Get protein](/api/protein/atlas/proteins/get) |
| `esm_atlas_search_similar_protein_clusters` | [Similarity search](/api/protein/atlas/similarity-search) |
| `esm_atlas_get_cluster_info` | [Get cluster](/api/protein/atlas/clusters) |
| `esm_atlas_get_sae_feature_detail` | [Get SAE feature](/api/protein/atlas/features/detail) |
| `ui_show_protein_structure` | [Get protein](/api/protein/atlas/proteins/get) for a stored structure, or [Fold](/api/protein/models/fold) to predict one (needs an API key) |

## Next steps

* Read [Security and privacy](/biohub-mcp/security) before sending sensitive sequences.
* If something doesn't work, see [Troubleshooting](/biohub-mcp/troubleshooting).
* Read about [ESMC](/models/esmc), the model behind the ESM Atlas SAE features.
