Used as the runtime environment for the MCP server, enabling the execution of TypeScript/JavaScript code for genomic data querying
Used as the programming language for implementing the MCP server, providing type safety for genomic data structures and API interactions
🧬 Ensembl API MCP Server
A full-featured Model Context Protocol (MCP) server that exposes Ensembl’s REST API. Built using the TypeScript MCP SDK
- Comprehensive coverage – 10 tools map to functional areas instead of 100 + individual endpoints, yet still expose nearly the whole API.
- Production-ready – TypeScript throughout, robust error handling, and a tidy API-client layer.
- Biologist-friendly – grouped by biological task (genes, variants, compara…), not by low-level REST paths.
Listed on:
Use cases:
- 🧬 Gene information – fetch details by ID or symbol
- 🔍 Gene search – scan genes across any species
- 🧬 Sequence retrieval – pull DNA for any genomic region
- 🔬 Variant data – explore variants and their annotations
- 📊 Transcript info – inspect transcripts and isoforms
- 🌍 Multi-species – every species in Ensembl, right here
- 🔗 Cross-references – hop to external databases in one call
- ⚡ Rate-limited – built-in throttling keeps you within Ensembl limits
Installation
Choose your preferred installation method:
Option 1: Via Smithery
- Visit Smithery - Ensembl MCP Server. The most common platform options include:
Check the MCP's smithery link for additional platform options.
Option 2: Via Glama
Install directly through Glama:
- Visit Glama - Ensembl MCP Server
- Follow the one-click installation instructions for your MCP client
Option 3: Local Development Setup
For development or custom setups:
- Clone and install dependencies:
- Configure Claude Desktop manually:Edit your config file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%/Claude/claude_desktop_config.json
Add this server configuration:
- macOS:
- Restart Claude Desktop - The Ensembl tools will appear in your available tools
Development Setup
Contributing
We'd love your help! Here's how to get started:
Quick Contact
- Email the dev: effie@effie.bio
Development Workflow
- Fork the repository
- Clone your fork:
- Install dependencies:
- Run tests to make sure everything works:
- Start development server:
- Make your changes and test thoroughly
- Submit a pull request
Available Scripts
npm run dev
- Development with hot reloadnpm run start
- Run the servernpm test
- Run all testsnpm run build
- Compile TypeScript (optional)npm run start:prod
- Run compiled version
The ten tools (with endpoints)
1 · ensembl_feature_overlap
Find genes, transcripts, or regulatory elements that overlap a region or another feature.
Typical asks: “Which genes sit in chr17:43-44 Mb?” – “What overlaps BRCA1?”
2 · ensembl_regulatory
Regulatory features, binding matrices and related annotations.
Use cases: TF-binding sites, regulatory annotation.
3 · ensembl_protein_features
Protein-level domains and functional sites.
Use cases: protein domains, signal peptides, catalytic residues.
4 · ensembl_meta
Server metadata, species lists, release info, and diagnostics.
Typical asks: “Which assemblies do you have for human?” – server health checks.
5 · ensembl_lookup
Translate IDs ↔ symbols, pull xrefs, recode variants.
Use cases: “What is BRCA1’s Ensembl ID?” – cross-reference UniProt.
6 · ensembl_sequence
Retrieve DNA, RNA or protein sequences.
Use cases: gene FASTA, transcript cDNA, genomic regions.
7 · ensembl_mapping
Coordinate conversion (genome ↔ cDNA/CDS/protein) and assembly lift-over.
Use cases: map CDS to GRCh38, convert protein to genome coords.
8 · ensembl_compara
Comparative genomics—homology, gene trees, alignments.
Use cases: find orthologs, build phylogenies, pull species alignments.
9 · ensembl_variation
Variant lookup, VEP consequences, LD, phenotype mapping.
Use cases: VEP predictions, LD blocks, phenotype associations.
10 · ensembl_ontotax
Ontology term search and NCBI taxonomy traversal.
Use cases: GO term look-up, phenotype ontology, taxonomic classification.
Installing via Smithery
To install ensembl-mcp-server for Claude Desktop automatically via Smithery:
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
A Model Context Protocol server providing LLMs with access to the Ensembl genomics database, enabling AI assistants to query gene information, sequences, variants, and other genomic data across multiple species.
Related MCP Servers
- -securityFlicense-qualityA Model Context Protocol server that enables LLMs to interact with Elasticsearch clusters, allowing them to manage indices and execute search queries using natural language.Last updated -1JavaScript
- -securityAlicense-qualityA Model Context Protocol server that enables LLMs to interact directly with MongoDB databases, allowing users to query collections, inspect schemas, and manage data through natural language.Last updated -340TypeScriptMIT License
- -securityFlicense-qualityA Model Context Protocol server that provides AI assistants with structured access to your Logseq knowledge graph, enabling retrieval, searching, analysis, and creation of content within your personal knowledge base.Last updated -19TypeScript
- -securityAlicense-qualityA Model Context Protocol server that enables LLMs to interact directly with MongoDB databases, allowing users to query collections, inspect schemas, and manage data through natural language.Last updated -340MIT License