NCBI Gene MCP Client
🧬 MCP client for fetching gene and protein metadata from NCBI Entrez API
This project provides a Model Context Protocol (MCP) client that interfaces with the NCBI Entrez API to fetch detailed information about genes and proteins. It's designed to be used both as a standalone command-line tool and as an MCP server for integration with MCP-compatible clients.
🚀 Features
- Gene Search: Search for genes using flexible queries
- Gene Information: Fetch detailed gene metadata by NCBI Gene ID
- Protein Information: Fetch protein details by NCBI Protein ID
- Symbol Search: Search genes by symbol with optional organism filtering
- Rate Limiting: Built-in respect for NCBI API rate limits
- MCP Server: JSON-RPC server for MCP protocol integration
- CLI Interface: Easy-to-use command-line interface
📦 Installation
From Source (Development)
From PyPI (when available)
🔧 Usage
Command Line Interface
After installation, you can use the CLI commands:
Demo (Quick Start)
Search for genes
Get gene information by ID
Search by gene symbol
Get protein information
With NCBI credentials (recommended)
Python API
MCP Server
Run as an MCP server for integration with MCP-compatible clients:
The MCP server provides the following tools:
- search_genes: Search for genes using a query
- fetch_gene_info: Get detailed gene information by ID
- fetch_protein_info: Get protein information by ID
- search_by_gene_symbol: Search genes by symbol with optional organism filter
🧪 Examples
Example 1: Basic Gene Search
Example 2: Disease Gene Search
Example 3: Cross-species Gene Comparison
📊 Data Models
GeneInfo
SearchResult
⚙️ Configuration
NCBI API Guidelines
It's recommended to provide your email address when using the NCBI API:
For higher rate limits, you can also provide an API key:
Rate Limiting
The client automatically handles NCBI's rate limiting requirements:
- Without API key: 3 requests per second
- With API key: 10 requests per second
🧪 Testing
Run the test suite:
🔍 Development
Setting up for development
Project Structure
📝 NCBI Resources
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
👨💻 Author
Mohammad Najeeb
📧 mona00002@uni-saarland.de
🤝 Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Features
- Feature 1: Description of feature 1
- Feature 2: Description of feature 2
- Feature 3: Description of feature 3
- MCP Integration: Full Model Context Protocol server implementation
API Methods
Core Methods
method1()
: Description of method1method2()
: Description of method2method3()
: Description of method3
Configuration
The package uses a configuration class for settings:
MCP Server Configuration
To use the MCP server with an MCP client, configure it as follows:
The server will automatically handle:
- JSON-RPC communication
- Tool discovery and invocation
- Error handling and reporting
Development
Setup Development Environment
Project Structure
License
MIT License - see LICENSE file for details.
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests
- Run the test suite
- Submit a pull request
Support
For issues and questions, please use the GitHub issue tracker.
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.
MCP server that interfaces with the NCBI Entrez API to fetch detailed information about genes and proteins, enabling gene searches, gene/protein metadata retrieval, and symbol searching with organism filtering.
- 🚀 Features
- 📦 Installation
- 🔧 Usage
- 🧪 Examples
- 📊 Data Models
- ⚙️ Configuration
- 🧪 Testing
- 🔍 Development
- 📝 NCBI Resources
- 📄 License
- 👨💻 Author
- 🤝 Contributing
- Features
- API Methods
- MCP Server Configuration
- Development
- License
- Contributing
- Support
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityAn MCP server that provides access to PubMed articles through the Entrez API.Last updated -2112PythonMIT License
- -securityFlicense-qualityAn MCP server that integrates with SerpApi to retrieve search results from multiple search engines including Google, Bing, Yahoo, and others, enabling fast access to both live and archived search data.Last updated -10Python
- AsecurityAlicenseAqualityAn MCP server that allows users to efficiently search and reference user-configured documents through document listing, grep searching, semantic searching with OpenAI Embeddings, and full document retrieval.Last updated -43PythonMIT License
- AsecurityAlicenseAqualityA comprehensive Model Context Protocol (MCP) server that provides access to the Ensembl REST API for genomic data, comparative genomics, and biological annotations.Last updated -191JavaScriptMIT License