Used for making HTTP requests to the UniProt REST API for programmatic access to protein data
Provides containerized deployment of the UniProt MCP server with multi-stage builds and security best practices
Runtime environment required for running the UniProt MCP server with v16 or higher recommended
Programming language used for developing the UniProt MCP server with type safety
Supports exporting protein data in XML format from the UniProt database
Package manager alternative to npm for installing dependencies for the UniProt MCP server
UniProt MCP Server
A comprehensive Model Context Protocol (MCP) server providing advanced access to the UniProt protein database. This server offers 26 specialized bioinformatics tools enabling AI assistants and MCP clients to perform sophisticated protein research, comparative genomics, structural biology analysis, and systems biology investigations directly through UniProt's REST API.
Developed by
Features
Core Protein Analysis (5 tools)
Protein Search: Search the UniProt database by protein name, keywords, or organism
Detailed Protein Info: Retrieve comprehensive protein information including function, structure, and annotations
Gene-based Search: Find proteins by gene name or symbol
Sequence Retrieval: Get amino acid sequences in FASTA or JSON format
Feature Analysis: Access functional domains, active sites, binding sites, and other protein features
Comparative & Evolutionary Analysis (4 tools)
Protein Comparison: Side-by-side comparison of multiple proteins with sequence and feature analysis
Homolog Discovery: Find homologous proteins across different species
Ortholog Identification: Identify orthologous proteins for evolutionary studies
Phylogenetic Analysis: Retrieve evolutionary relationships and phylogenetic data
Structure & Function Analysis (4 tools)
3D Structure Information: Access PDB references and structural data
Advanced Domain Analysis: Enhanced domain analysis with InterPro, Pfam, and SMART annotations
Variant Analysis: Disease-associated variants and mutations
Sequence Composition: Amino acid composition, hydrophobicity, and other sequence properties
Biological Context Analysis (4 tools)
Pathway Integration: Associated biological pathways from KEGG and Reactome
Protein Interactions: Protein-protein interaction networks
Functional Classification: Search by GO terms or functional annotations
Subcellular Localization: Find proteins by subcellular localization
Batch Processing & Advanced Search (3 tools)
Batch Processing: Efficiently process multiple protein accessions
Advanced Search: Complex queries with multiple filters (length, mass, organism, function)
Taxonomic Classification: Search by detailed taxonomic classification
Literature & Cross-References (3 tools)
External Database Links: Links to PDB, EMBL, RefSeq, Ensembl, and other databases
Literature References: Associated publications and citations
Annotation Quality: Quality scores and confidence levels for different annotations
Data Export & Utilities (3 tools)
Specialized Export: Export data in GFF, GenBank, EMBL, and XML formats
Accession Validation: Verify UniProt accession number validity
Taxonomic Information: Detailed taxonomic classification and lineage data
Resource Templates
Direct access to protein data via URI templates for seamless integration
Installation
Prerequisites
Node.js (v16 or higher)
npm or yarn
Setup
Clone the repository:
Install dependencies:
Build the project:
Docker
Building the Docker Image
Build the Docker image:
Running with Docker
Run the container:
For MCP client integration, you can use the container directly:
Docker Compose (Optional)
Create a docker-compose.yml
for easier management:
Run with:
Usage
As an MCP Server
The server is designed to run as an MCP server that communicates via stdio:
Adding to MCP Client Configuration
Add the server to your MCP client configuration (e.g., Claude Desktop):
Available Tools
1. search_proteins
Search the UniProt database for proteins by name, keyword, or organism.
Parameters:
query
(required): Search query (protein name, keyword, or complex search)organism
(optional): Organism name or taxonomy ID to filter resultssize
(optional): Number of results to return (1-500, default: 25)format
(optional): Output format - json, tsv, fasta, xml (default: json)
Example:
2. get_protein_info
Get detailed information for a specific protein by UniProt accession.
Parameters:
accession
(required): UniProt accession number (e.g., P04637)format
(optional): Output format - json, tsv, fasta, xml (default: json)
Example:
3. search_by_gene
Search for proteins by gene name or symbol.
Parameters:
gene
(required): Gene name or symbol (e.g., BRCA1, INS)organism
(optional): Organism name or taxonomy ID to filter resultssize
(optional): Number of results to return (1-500, default: 25)
Example:
4. get_protein_sequence
Get the amino acid sequence for a protein.
Parameters:
accession
(required): UniProt accession numberformat
(optional): Output format - fasta, json (default: fasta)
Example:
5. get_protein_features
Get functional features and domains for a protein.
Parameters:
accession
(required): UniProt accession number
Example:
Resource Templates
The server provides direct access to UniProt data through URI templates:
1. Protein Information
URI:
uniprot://protein/{accession}
Description: Complete protein information for a UniProt accession
Example:
uniprot://protein/P01308
2. Protein Sequence
URI:
uniprot://sequence/{accession}
Description: FASTA format protein sequence
Example:
uniprot://sequence/P01308
3. Search Results
URI:
uniprot://search/{query}
Description: Search results for proteins matching the query
Example:
uniprot://search/insulin
Examples
Basic Protein Search
Search for insulin proteins in humans:
Get Detailed Protein Information
Retrieve comprehensive information about human insulin:
Gene-based Search
Find proteins associated with the BRCA1 gene:
Retrieve Protein Sequence
Get the amino acid sequence for human insulin:
Analyze Protein Features
Get functional domains and features for human insulin:
API Integration
This server integrates with the UniProt REST API for programmatic access to protein data. For more information about UniProt:
UniProt Website: https://www.uniprot.org/
API Documentation: https://www.uniprot.org/help/api
REST API Guide: https://www.uniprot.org/help/api_queries
All API requests include:
User-Agent:
UniProt-MCP-Server/1.0.0
Timeout: 30 seconds
Base URL:
https://rest.uniprot.org
(programmatic access only)
Error Handling
The server includes comprehensive error handling:
Input Validation: All parameters are validated using type guards
API Errors: Network and API errors are caught and returned with descriptive messages
Timeout Handling: Requests timeout after 30 seconds
Graceful Degradation: Partial failures are handled appropriately
Development
Build the Project
Development Mode
Run TypeScript compiler in watch mode:
Project Structure
Dependencies
@modelcontextprotocol/sdk: Core MCP SDK for server implementation
axios: HTTP client for UniProt API requests
typescript: TypeScript compiler for development
License
MIT License
Contributing
Fork the repository
Create a feature branch
Make your changes
Add tests if applicable
Submit a pull request
Support
For issues and questions:
Check the UniProt API documentation
Review the Model Context Protocol specification
Open an issue on the repository
About Augmented Nature
This comprehensive UniProt MCP Server is developed by Augmented Nature, a leading innovator in AI-powered bioinformatics and computational biology solutions. Augmented Nature specializes in creating advanced tools that bridge the gap between artificial intelligence and biological research, enabling researchers to unlock deeper insights from biological data.
Complete Tool Reference
Core Protein Analysis Tools
search_proteins
- Search UniProt database by name, keyword, or organismget_protein_info
- Get detailed protein information by accessionsearch_by_gene
- Find proteins by gene name or symbolget_protein_sequence
- Retrieve amino acid sequencesget_protein_features
- Access functional features and domains
Comparative & Evolutionary Analysis Tools
compare_proteins
- Compare multiple proteins side-by-sideget_protein_homologs
- Find homologous proteins across speciesget_protein_orthologs
- Identify orthologous proteinsget_phylogenetic_info
- Retrieve evolutionary relationships
Structure & Function Analysis Tools
get_protein_structure
- Access 3D structure information from PDBget_protein_domains_detailed
- Enhanced domain analysis (InterPro, Pfam, SMART)get_protein_variants
- Disease-associated variants and mutationsanalyze_sequence_composition
- Amino acid composition analysis
Biological Context Tools
get_protein_pathways
- Associated biological pathways (KEGG, Reactome)get_protein_interactions
- Protein-protein interaction networkssearch_by_function
- Search by GO terms or functional annotationssearch_by_localization
- Find proteins by subcellular localization
Batch Processing & Advanced Search Tools
batch_protein_lookup
- Process multiple accessions efficientlyadvanced_search
- Complex queries with multiple filterssearch_by_taxonomy
- Search by taxonomic classification
Literature & Cross-Reference Tools
get_external_references
- Links to other databases (PDB, EMBL, RefSeq, etc.)get_literature_references
- Associated publications and citationsget_annotation_confidence
- Quality scores for annotations
Data Export & Utility Tools
export_protein_data
- Export in specialized formats (GFF, GenBank, EMBL, XML)validate_accession
- Check accession number validityget_taxonomy_info
- Detailed taxonomic information
Changelog
v1.0.0 - Comprehensive Bioinformatics Platform
Major expansion: Added 21 new specialized tools (total: 26 tools)
Comparative Analysis: Protein comparison, homolog/ortholog identification, phylogenetic analysis
Structural Biology: 3D structure integration, detailed domain analysis, variant analysis
Systems Biology: Pathway integration, protein interactions, functional classification
Advanced Search: Batch processing, complex filtering, taxonomic search
Literature Integration: External database links, citations, annotation confidence
Data Export: Multiple specialized formats (GFF, GenBank, EMBL, XML)
Enhanced Docker Support: Multi-stage builds with security best practices
Comprehensive Documentation: Complete tool reference and examples
Developed by Augmented Nature: Professional bioinformatics platform
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.
Tools
UniProt MCP Server
- Features
- Installation
- Docker
- Usage
- Available Tools
- Resource Templates
- Examples
- API Integration
- Error Handling
- Development
- Dependencies
- License
- Contributing
- Support
- About Augmented Nature
- Complete Tool Reference
- Changelog
Related Resources
Related MCP Servers
- MIT License
- MIT License