VEPmcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@VEPmcpAnnotate variant rs56116432 using VEP"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
VEPmcp
VEPmcp is a Model Context Protocol (MCP) server for the Ensembl Variant Effect Predictor (VEP) API. It enables annotation and effect prediction of genetic variants, with full support for batch and single queries, and is designed for seamless integration with MCP-compatible clients (e.g., Claude Desktop, VS Code MCP extension).
Features
Annotate variants using Ensembl VEP (HGVS, variant ID, or genomic region)
Batch and single variant support
Retrieve available species, consequence types, and assembly info
Fast, robust, and rate-limited HTTP client
JSON-RPC 2.0 over stdio for easy integration with AI tools and editors
Related MCP server: Ensembl MCP Server
Installation
pip install -e .
# or via pypi
pip install VEPmcpUsage
Command Line
VEPmcp --help
VEPmcp --test-connection # Test Ensembl API connectivity
VEPmcp --test-mode # Run server in test mode with sample requestsAs an MCP Server
Run the server (for use with MCP clients):
VEPmcpThe server communicates via stdio using JSON-RPC 2.0.
Supported Tools
vep_hgvs_single/vep_hgvs_batch: Annotate by HGVS notationvep_id_single/vep_id_batch: Annotate by variant ID (e.g., rsID)vep_region_single/vep_region_batch: Annotate by genomic regionget_vep_species: List available speciesget_consequence_types: List consequence typesget_assembly_info: Get assembly info for a species
Example MCP Client Configurations
Claude Desktop
{
"mcp_servers": {
"vepmcp": {
"command": "VEPmcp",
"args": [],
"env": {}
}
}
}VS Code MCP Extension
{
"mcp.servers": {
"vepmcp": {
"command": "VEPmcp",
"args": [],
"env": {},
"cwd": "${workspaceFolder}"
}
}
}Example Usage
Prompt your MCP client with:
"Annotate the variant rs56116432 in humans using VEP"Testing
VEPmcp --test-connection— check API connectivityVEPmcp --test-mode— run server in test modepython run_tests.py --mode all --verbose— run all unit/integration testspython run_tests.py --mode ci— run CI pipeline (linting + type checking + unit tests)
Continuous Integration
This project uses GitHub Actions for automated testing on every pull request. The CI pipeline includes:
Linting with Ruff
Type checking with MyPy
Unit and integration tests across Python 3.9-3.13
Security scanning
Code coverage reporting
Troubleshooting
Ensure VEPmcp is installed and in your PATH
Check internet connectivity for Ensembl API access
Use
--verbosefor detailed logs
Development
pip install -e .[dev]
python run_tests.py --mode ci # Run linting, type checking, and unit tests
python run_tests.py --mode all --verbose # Run all tests including integrationLocal Testing Commands
# Linting and formatting
python run_tests.py --mode lint
# Type checking
python run_tests.py --mode type
# Unit tests only
python run_tests.py --mode unit --verbose
# Integration tests (requires internet)
python run_tests.py --mode integration --verboseLicense
MIT License — see LICENSE
Contributing
Fork and branch
Make changes and add tests
Run the test suite
Submit a pull request
Support
For issues and questions, use the GitHub issue tracker.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/not-a-feature/VEPmcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server