可用于便捷访问NCBI的基因组、分类学和生物学数据,提供31个专业工具,涵盖基因组、基因、分类学等9大生物数据操作类别,支持URI直接访问,采用TypeScript实现,具备限流和缓存优化。【此简介由AI生成】
| Files | Last commit | Last update |
|---|---|---|
| 1 year ago | ||
| 8 months ago | ||
| 1 year ago | ||
| 1 year ago | ||
| 1 year ago | ||
| 1 year ago | ||
| 1 year ago |
Translated by AI, submit an issue feedback

非官方 NCBI Datasets MCP 服务器
这是一个模型上下文协议(MCP)服务器,提供对 NCBI Datasets API 的全面访问。该服务器通过 31 个专用工具,实现与 NCBI 海量基因组、分类学和生物学数据的无缝集成。
由 Augmented Nature 开发
功能特点
- 31 个综合工具,涵盖 NCBI Datasets 的所有主要功能
- 9 个组织有序的生物数据操作类别
- 资源模板,支持基于 URI 的直接数据访问
- 完整的 TypeScript 实现,带有完善的错误处理
- 速率限制和缓存机制,确保最佳性能
- 环境变量配置,用于 API 密钥管理
安装说明
npm install
npm run build
配置
环境变量
NCBI_API_KEY(可选):您的NCBI API密钥,用于更高的速率限制和优先访问
MCP配置
添加到您的MCP设置中:
{
"mcpServers": {
"ncbi-datasets-server": {
"command": "node",
"args": ["/path/to/ncbi-datasets-server/build/index.js"],
"env": {
"NCBI_API_KEY": "your_api_key_here"
}
}
}
}
可用工具
🧬 基因组操作
search_genomes- 按生物体、关键词或标准搜索基因组组装get_genome_info- 获取特定基因组组装的详细信息get_genome_summary- 获取基因组组装的汇总统计数据
🧬 基因操作
search_genes- 按符号、名称、生物体或位置搜索基因get_gene_info- 获取特定基因的详细信息get_gene_sequences- 检索特定基因的序列
🏷️ 分类学操作
search_taxonomy- 按生物体名称搜索分类学信息get_taxonomy_info- 获取分类单元的详细分类学信息get_organism_info- 获取生物体特定信息和数据集
🏗️ 组装操作
search_assemblies- 通过详细筛选搜索基因组组装get_assembly_info- 获取组装的详细元数据和统计信息get_assembly_reports- 获取组装质量报告和验证信息download_genome_data- 获取基因组数据文件的下载 URLbatch_assembly_info- 获取多个组装的信息
🦠 病毒操作
search_virus_genomes- 搜索病毒基因组组装get_virus_info- 获取病毒基因组的详细信息
🧪 蛋白质操作
search_proteins- 按名称或功能搜索蛋白质序列get_protein_info- 获取特定蛋白质的详细信息
📝 注释操作
get_genome_annotation- 获取组装的注释信息search_genome_features- 搜索特定的基因组特征
🔬 比较基因组学
compare_genomes- 比较两个或多个基因组组装find_orthologs- 跨生物体查找同源基因
🧬 序列操作
get_sequence_data- 检索基因组/基因/蛋白质的序列数据blast_search- 针对 NCBI 数据库执行 BLAST 搜索
🌳 系统发育操作
get_phylogenetic_tree- 获取生物体的系统发育树数据get_taxonomic_lineage- 获取完整的分类学谱系
📊 统计操作
get_database_stats- 获取 NCBI Datasets 内容的统计信息search_by_bioproject- 通过 BioProject 登录号搜索数据集search_by_biosample- 通过 BioSample 登录号搜索数据集
✅ 质量控制
get_assembly_quality- 获取基因组组装的质量指标validate_sequences- 验证序列数据并检查问题
使用示例
基因组分析
// Search for E. coli genomes
{
"tool": "search_genomes",
"arguments": {
"tax_id": 511145,
"assembly_level": "complete",
"max_results": 10
}
}
// Get detailed genome information
{
"tool": "get_genome_info",
"arguments": {
"accession": "GCF_000005845.2",
"include_annotation": true
}
}
// Get genome summary statistics
{
"tool": "get_genome_summary",
"arguments": {
"accession": "GCF_000005845.2"
}
}
基因研究
// Search for BRCA1 gene
{
"tool": "search_genes",
"arguments": {
"gene_symbol": "BRCA1",
"organism": "Homo sapiens",
"max_results": 5
}
}
// Get detailed gene information
{
"tool": "get_gene_info",
"arguments": {
"gene_id": 672,
"include_sequences": true
}
}
// Get gene sequences
{
"tool": "get_gene_sequences",
"arguments": {
"gene_id": 672,
"sequence_type": "transcript"
}
}
分类学分析
// Search taxonomy by organism name
{
"tool": "search_taxonomy",
"arguments": {
"query": "Escherichia coli",
"max_results": 10
}
}
// Get detailed taxonomic information
{
"tool": "get_taxonomy_info",
"arguments": {
"tax_id": 511145,
"include_lineage": true
}
}
// Get organism information
{
"tool": "get_organism_info",
"arguments": {
"organism": "Escherichia coli"
}
}
组装操作
// Search assemblies with filtering
{
"tool": "search_assemblies",
"arguments": {
"query": "human",
"assembly_level": "chromosome",
"assembly_source": "refseq",
"max_results": 20
}
}
// Get assembly information
{
"tool": "get_assembly_info",
"arguments": {
"assembly_accession": "GCF_000001405.40",
"include_annotation": true
}
}
// Batch assembly lookup
{
"tool": "batch_assembly_info",
"arguments": {
"accessions": ["GCF_000001405.40", "GCF_000005825.2", "GCF_000002305.1"]
}
}
比较基因组学
// Compare multiple genomes
{
"tool": "compare_genomes",
"arguments": {
"accessions": ["GCF_000005845.2", "GCF_000001405.40"],
"comparison_type": "basic_stats",
"include_orthologs": true
}
}
// Find orthologous genes
{
"tool": "find_orthologs",
"arguments": {
"gene_symbol": "BRCA1",
"source_organism": "Homo sapiens",
"target_organisms": ["Mus musculus", "Rattus norvegicus"],
"similarity_threshold": 80
}
}
病毒研究
// Search viral genomes
{
"tool": "search_virus_genomes",
"arguments": {
"virus_name": "SARS-CoV-2",
"host": "Homo sapiens",
"max_results": 50
}
}
// Get viral genome information
{
"tool": "get_virus_info",
"arguments": {
"accession": "NC_045512.2",
"include_proteins": true,
"include_metadata": true
}
}
资源模板
服务器提供资源模板以实现直接数据访问:
ncbi://genome/{accession}- 完整基因组组装信息ncbi://gene/{gene_id}- 带注释的基因信息ncbi://taxonomy/{tax_id}- 分类学分类和谱系ncbi://assembly/{assembly_accession}- 组装元数据和统计信息ncbi://search/{data_type}/{query}- 指定查询的搜索结果
API 速率限制
- 无 API 密钥:每秒 3 个请求
- 有 API 密钥:每秒 10 个请求,且享有优先访问权
要获取 API 密钥,请访问:https://www.ncbi.nlm.nih.gov/account/settings/
错误处理
服务器实现了全面的错误处理机制:
- 网络错误:采用指数退避策略自动重试
- 速率限制:智能请求排队和流量控制
- 无效参数:清晰的验证错误消息
- API 错误:包含上下文的详细错误报告
数据来源
本服务器访问以下来源的数据:
- NCBI Datasets API v2:主要基因组和组装数据
- NCBI Taxonomy:分类学分类和谱系
- NCBI Gene:基因注释和序列
- NCBI Assembly:组装元数据和质量指标
- NCBI BioProject/BioSample:项目和样本信息
许可证
MIT 许可证 - 详情参见 LICENSE 文件。
贡献
欢迎贡献!请随时提交问题、功能请求或拉取请求。
支持
有关以下方面的问题:
- 服务器功能:在本仓库中提交 issue
- NCBI 数据:参考 NCBI Datasets 文档
- API 访问:联系 NCBI 支持以咨询 API 相关问题
Introduction
可用于便捷访问NCBI的基因组、分类学和生物学数据,提供31个专业工具,涵盖基因组、基因、分类学等9大生物数据操作类别,支持URI直接访问,采用TypeScript实现,具备限流和缓存优化。【此简介由AI生成】
Customize your domain