UniProt MCP Server
by vitamin3615
The UniProt MCP Server allows language models to fetch protein information from the UniProt database. It can be integrated with Claude Desktop and other MCP-compatible AI applications.
Last updated: N/A
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.json
For 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