UniProt MCP Server

UniProt MCP 服务器
全面的模型上下文协议 (MCP) 服务器,提供对 UniProt 蛋白质数据库的高级访问。该服务器提供 26 种专用生物信息学工具,使 AI 助手和 MCP 客户端能够直接通过 UniProt 的 REST API 进行复杂的蛋白质研究、比较基因组学、结构生物学分析和系统生物学研究。
由增强自然开发
特征
核心蛋白质分析(5 种工具)
蛋白质搜索:通过蛋白质名称、关键词或生物体搜索 UniProt 数据库
详细蛋白质信息:检索全面的蛋白质信息,包括功能、结构和注释
基于基因的搜索:通过基因名称或符号查找蛋白质
序列检索:获取 FASTA 或 JSON 格式的氨基酸序列
特征分析:访问功能域、活性位点、结合位点和其他蛋白质特征
比较与进化分析(4 种工具)
蛋白质比较:并排比较多种蛋白质,并进行序列和特征分析
同源物发现:寻找不同物种间的同源蛋白质
直系同源物鉴定:鉴定用于进化研究的直系同源蛋白
系统发育分析:检索进化关系和系统发育数据
结构与功能分析(4 种工具)
3D 结构信息:访问 PDB 参考和结构数据
高级域分析:使用 InterPro、Pfam 和 SMART 注释增强域分析
变异分析:疾病相关变异和突变
序列组成:氨基酸组成、疏水性和其他序列特性
生物学背景分析(4 种工具)
通路整合:来自 KEGG 和 Reactome 的相关生物通路
蛋白质相互作用:蛋白质-蛋白质相互作用网络
功能分类:通过 GO 术语或功能注释进行搜索
亚细胞定位:通过亚细胞定位查找蛋白质
批处理和高级搜索(3 种工具)
批量处理:高效处理多个蛋白质样本
高级搜索:具有多个过滤器的复杂查询(长度、质量、生物体、功能)
分类学分类:按详细分类法搜索
文献与交叉引用(3 种工具)
外部数据库链接:链接到 PDB、EMBL、RefSeq、Ensembl 和其他数据库
参考文献:相关出版物和引文
注释质量:不同注释的质量分数和置信度
数据导出和实用程序(3 个工具)
专业导出:以 GFF、GenBank、EMBL 和 XML 格式导出数据
接入验证:验证 UniProt 接入号的有效性
分类信息:详细的分类和谱系数据
资源模板
通过 URI 模板直接访问蛋白质数据,实现无缝集成
Related MCP server: MISP-MCP-SERVER
安装
先决条件
Node.js(v16 或更高版本)
npm 或 yarn
设置
克隆存储库:
git clone <repository-url>
cd uniprot-server安装依赖项:
npm install构建项目:
npm run buildDocker
构建 Docker 镜像
构建 Docker 镜像:
docker build -t uniprot-mcp-server .使用 Docker 运行
运行容器:
docker run -i uniprot-mcp-server对于 MCP 客户端集成,您可以直接使用容器:
{
"mcpServers": {
"uniprot": {
"command": "docker",
"args": ["run", "-i", "uniprot-mcp-server"],
"env": {}
}
}
}Docker Compose(可选)
创建一个docker-compose.yml以便于管理:
version: "3.8"
services:
uniprot-mcp:
build: .
image: uniprot-mcp-server
stdin_open: true
tty: true运行:
docker-compose up用法
作为 MCP 服务器
该服务器设计为作为通过 stdio 进行通信的 MCP 服务器运行:
npm start添加至 MCP 客户端配置
将服务器添加到您的 MCP 客户端配置(例如,Claude Desktop):
{
"mcpServers": {
"uniprot": {
"command": "node",
"args": ["/path/to/uniprot-server/build/index.js"],
"env": {}
}
}
}可用工具
1. 搜索蛋白质
按名称、关键字或生物体搜索 UniProt 数据库中的蛋白质。
参数:
query(必填):搜索查询(蛋白质名称、关键字或复杂搜索)organism(可选):用于过滤结果的生物体名称或分类 IDsize(可选):返回的结果数(1-500,默认值:25)format(可选):输出格式 - json、tsv、fasta、xml(默认值:json)
例子:
{
"query": "insulin",
"organism": "human",
"size": 5
}2. 获取蛋白质信息
通过 UniProt 登录获取特定蛋白质的详细信息。
参数:
accession(必填):UniProt 登录号(例如,P04637)format(可选):输出格式 - json、tsv、fasta、xml(默认值:json)
例子:
{
"accession": "P01308",
"format": "json"
}3. 按基因搜索
通过基因名称或符号搜索蛋白质。
参数:
gene(必填):基因名称或符号(例如,BRCA1、INS)organism(可选):用于过滤结果的生物体名称或分类 IDsize(可选):返回的结果数(1-500,默认值:25)
例子:
{
"gene": "BRCA1",
"organism": "human"
}4. 获取蛋白质序列
获取蛋白质的氨基酸序列。
参数:
accession(必填):UniProt 接入号format(可选):输出格式 - fasta、json(默认值:fasta)
例子:
{
"accession": "P01308",
"format": "fasta"
}5. 获取蛋白质特征
获取蛋白质的功能特征和结构域。
参数:
accession(必填):UniProt 接入号
例子:
{
"accession": "P01308"
}资源模板
服务器通过 URI 模板提供对 UniProt 数据的直接访问:
1. 蛋白质信息
URI :
uniprot://protein/{accession}描述:UniProt 数据库的完整蛋白质信息
例如:
uniprot://protein/P01308
2. 蛋白质序列
URI :
uniprot://sequence/{accession}描述:FASTA格式的蛋白质序列
例如:
uniprot://sequence/P01308
3.搜索结果
URI :
uniprot://search/{query}描述:与查询匹配的蛋白质的搜索结果
例如:
uniprot://search/insulin
示例
基本蛋白质搜索
在人类中寻找胰岛素蛋白:
// Tool call
{
"tool": "search_proteins",
"arguments": {
"query": "insulin",
"organism": "human",
"size": 10
}
}获取详细的蛋白质信息
检索有关人类胰岛素的综合信息:
// Tool call
{
"tool": "get_protein_info",
"arguments": {
"accession": "P01308"
}
}基于基因的搜索
查找与 BRCA1 基因相关的蛋白质:
// Tool call
{
"tool": "search_by_gene",
"arguments": {
"gene": "BRCA1",
"organism": "human"
}
}检索蛋白质序列
获取人类胰岛素的氨基酸序列:
// Tool call
{
"tool": "get_protein_sequence",
"arguments": {
"accession": "P01308",
"format": "fasta"
}
}分析蛋白质特征
获取人类胰岛素的功能域和特征:
// Tool call
{
"tool": "get_protein_features",
"arguments": {
"accession": "P01308"
}
}API 集成
该服务器集成了 UniProt REST API,可通过编程方式访问蛋白质数据。有关 UniProt 的更多信息,请访问:
UniProt网站: https://www.uniprot.org/
API 文档: https://www.uniprot.org/help/api
REST API 指南: https://www.uniprot.org/help/api\_queries
所有 API 请求包括:
用户代理:
UniProt-MCP-Server/1.0.0超时:30秒
基本网址:
https://rest.uniprot.org(仅限编程访问)
错误处理
该服务器包括全面的错误处理:
输入验证:所有参数都使用类型保护进行验证
API 错误:捕获网络和 API 错误并返回描述性消息
超时处理:30秒后请求超时
优雅降级:部分故障得到适当处理
发展
构建项目
npm run build开发模式
在监视模式下运行 TypeScript 编译器:
npm run dev项目结构
uniprot-server/
├── src/
│ └── index.ts # Main server implementation
├── build/ # Compiled JavaScript output
├── package.json # Node.js dependencies and scripts
├── tsconfig.json # TypeScript configuration
└── README.md # This file依赖项
@modelcontextprotocol/sdk :用于服务器实现的核心 MCP SDK
axios :UniProt API 请求的 HTTP 客户端
typescript :用于开发的 TypeScript 编译器
执照
MIT 许可证
贡献
分叉存储库
创建功能分支
进行更改
如果适用,添加测试
提交拉取请求
支持
对于问题和疑问:
在存储库上打开一个问题
关于增强自然
这款功能全面的 UniProt MCP 服务器由**Augmented Nature**开发,该公司是人工智能驱动的生物信息学和计算生物学解决方案领域的领先创新者。Augmented Nature 专注于开发先进的工具,弥合人工智能与生物学研究之间的差距,使研究人员能够从生物数据中获得更深入的洞察。
完整工具参考
核心蛋白质分析工具
search_proteins- 按名称、关键字或生物体搜索 UniProt 数据库get_protein_info- 通过访问获取详细的蛋白质信息search_by_gene- 通过基因名称或符号查找蛋白质get_protein_sequence- 检索氨基酸序列get_protein_features- 访问功能特征和域
比较与进化分析工具
compare_proteins- 并排比较多种蛋白质get_protein_homologs- 查找跨物种的同源蛋白质get_protein_orthologs- 识别直系同源蛋白get_phylogenetic_info- 检索进化关系
结构和功能分析工具
get_protein_structure- 从 PDB 获取 3D 结构信息get_protein_domains_detailed- 增强域分析(InterPro、Pfam、SMART)get_protein_variants- 疾病相关变异和突变analyze_sequence_composition- 氨基酸组成分析
生物学背景工具
get_protein_pathways- 相关生物途径(KEGG、Reactome)get_protein_interactions- 蛋白质-蛋白质相互作用网络search_by_function- 通过 GO 术语或功能注释进行搜索search_by_localization- 通过亚细胞定位查找蛋白质
批处理和高级搜索工具
batch_protein_lookup- 高效处理多个蛋白质advanced_search- 具有多个过滤器的复杂查询search_by_taxonomy- 按分类法搜索
文献与交叉引用工具
get_external_references- 链接到其他数据库(PDB、EMBL、RefSeq 等)get_literature_references- 相关出版物和引文get_annotation_confidence- 注释的质量分数
数据导出和实用工具
export_protein_data- 以专门的格式导出(GFF、GenBank、EMBL、XML)validate_accession接入号有效性get_taxonomy_info- 详细的分类信息
变更日志
v1.0.0 - 综合生物信息学平台
主要扩展:增加了 21 种新的专用工具(总计:26 种工具)
比较分析:蛋白质比较、同源物/直系同源物鉴定、系统发育分析
结构生物学:3D结构整合、详细域分析、变体分析
系统生物学:通路整合、蛋白质相互作用、功能分类
高级搜索:批处理、复杂过滤、分类搜索
文献整合:外部数据库链接、引文、注释置信度
数据导出:多种专用格式(GFF、GenBank、EMBL、XML)
增强的 Docker 支持:采用安全最佳实践的多阶段构建
全面的文档:完整的工具参考和示例
由 Augmented Nature 开发:专业生物信息学平台
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Augmented-Nature/Augmented-Nature-UniProt-MCP-Server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server