UniProt MCP Server
Fetch protein information from the UniProt database.
UniProt MCP Server
An MCP (Model Context Protocol) server that allows language models to fetch protein information from the UniProt database. This server can be integrated with Claude Desktop and other MCP-compatible AI applications.
Features
- Search UniProt: Search for proteins by name, gene, or other criteria
- Get Protein Details: Retrieve detailed information about a protein
- Get Protein Sequences: Fetch amino acid sequences
- Get Protein Functions: Retrieve functional annotations including GO terms
- Get Protein Structures: Find related PDB structures
Installation
-
Clone this repository:
git clone https://github.com/yourusername/uniprot-mcp-server.git cd uniprot-mcp-server -
Create a virtual environment (optional but recommended):
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate -
Install dependencies:
pip install -r requirements.txt
Local Setup with Claude Desktop
-
Make the server script executable:
chmod +x server.py -
Configure Claude Desktop to use this MCP server:
For macOS/Linux:
code ~/Library/Application\ Support/Claude/claude_desktop_config.jsonFor Windows:
code $env:AppData\Claude\claude_desktop_config.json -
Add the following configuration (update the path to match your actual file location):
{ "mcpServers": { "uniprot": { "command": "python", "args": [ "/ABSOLUTE/PATH/TO/uniprot-mcp-server/server.py" ] } } } -
Restart Claude Desktop
Usage Examples
Once set up with Claude Desktop, you can ask questions like:
- "Find proteins related to Alzheimer's disease"
- "Get the sequence for protein P05067 (Amyloid-beta precursor protein)"
- "What are the functions of the TP53 protein?"
- "Are there any known 3D structures for BRCA1 protein?"
Development
To run the server directly for testing:
python server.py
Testing Utilities
This project includes two testing utilities to verify functionality:
1. Server Health Check
Verifies that the MCP server starts correctly without errors:
python server_health_check.py
2. UniProt API Test
Tests connectivity with the UniProt API and verifies that all API calls work as expected:
python test_server.py
Run these tests before using the server to ensure everything is properly configured.
License
MIT
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Related Servers
MCP Simple PubMed
Access PubMed articles through the Entrez API.
QuickBooks Online by CData
A read-only MCP server for querying live QuickBooks Online data. Requires a separate CData JDBC Driver for QuickBooks Online.
CIViC MCP Server
A server for querying the CIViC API, converting GraphQL responses into queryable SQLite tables using Cloudflare Workers.
RentCast
Access property data, valuations, and market statistics using the RentCast API.
HubDB MCP Server by CData
A read-only MCP server by CData that enables LLMs to query live data from HubDB.
Alliance of Genome Resources (JS)
A high-performance JavaScript server for the Alliance of Genome Resources (AGR) MCP.
Stellar MCP
Interact with the Stellar blockchain, manage accounts, and execute smart contracts on Stellar Classic and Soroban.
Supabase
Interact with Supabase databases, query tables, and generate TypeScript types.
MySQL Server Pro
A MySQL server with CRUD operations, database anomaly analysis, and support for SSE and STDIO.
GraphRAG
Query a hybrid graph (Neo4j) and vector (Qdrant) database for powerful semantic and graph-based document retrieval.