用户可通过该项目便捷访问 UniProt 蛋白质数据库,进行蛋白质研究、比较基因组学等分析。它提供26个专业生物信息学工具,支持AI助手和MCP客户端直接调用,功能涵盖蛋白质搜索、序列检索、结构分析等。【此简介由AI生成】
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 1 年前 | ||
| 1 年前 | ||
| 8 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 |
非官方 UniProt MCP 服务器
一个全面的模型上下文协议(MCP)服务器,提供对 UniProt 蛋白质数据库的高级访问。该服务器提供 26 种专业生物信息学工具,使 AI 助手和 MCP 客户端能够直接通过 UniProt 的 REST API 进行复杂的蛋白质研究、比较基因组学、结构生物学分析和系统生物学研究。
由 Augmented Nature 开发
功能
核心蛋白质分析(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 模板直接访问蛋白质数据,实现无缝集成
安装
先决条件
- Node.js(v16 或更高版本)
- npm 或 yarn
设置
- 克隆仓库:
git clone <repository-url>
cd uniprot-server
- 安装依赖项:
npm install
- 构建项目:
npm run build
Docker
构建 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. search_proteins
通过名称、关键词或生物体在 UniProt 数据库中搜索蛋白质。
参数:
query(必填):搜索查询(蛋白质名称、关键词或复杂搜索)organism(可选):用于筛选结果的生物体名称或分类学 IDsize(可选):返回结果数量(1-500,默认值:25)format(可选):输出格式 - json、tsv、fasta、xml(默认值:json)
示例:
{
"query": "insulin",
"organism": "human",
"size": 5
}
2. get_protein_info
通过 UniProt 登录号获取特定蛋白质的详细信息。
参数:
accession(必填):UniProt 登录号(例如:P04637)format(可选):输出格式 - json、tsv、fasta、xml(默认:json)
示例:
{
"accession": "P01308",
"format": "json"
}
3. search_by_gene
通过基因名称或基因符号搜索蛋白质。
参数:
gene(必填):基因名称或基因符号(例如:BRCA1、INS)organism(可选):用于筛选结果的生物体名称或分类学IDsize(可选):返回结果数量(1-500,默认值:25)
示例:
{
"gene": "BRCA1",
"organism": "human"
}
4. get_protein_sequence
获取蛋白质的氨基酸序列。
参数:
accession(必填):UniProt 登录号format(可选):输出格式 - fasta、json(默认:fasta)
示例:
{
"accession": "P01308",
"format": "fasta"
}
5. get_protein_features
获取蛋白质的功能特征和结构域。
参数:
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 请求均包含:
- User-Agent:
UniProt-MCP-Server/1.0.0 - 超时时间:30 秒
- 基础 URL:
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 许可证
贡献指南
- Fork 本仓库
- 创建功能分支
- 进行修改
- 如适用,添加测试
- 提交拉取请求
支持
有关问题和疑问:
- 查阅 UniProt API 文档
- 查看 模型上下文协议规范
- 在仓库上提交 issue
关于 Augmented Nature
这款全面的 UniProt MCP Server 由 Augmented Nature 开发,该公司是 AI 驱动的生物信息学和计算生物学解决方案领域的领先创新者。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开发:专业生物信息学平台
引用
如果您在研究或出版物中使用本项目,请按以下方式引用:
author = {Moudather Chelbi},
title = {UniProt MCP Server},
year = {2025},
howpublished = {https://github.com/Augmented-Nature/Augmented-Nature-UniProt-MCP-Server/},
note = {Accessed: 2025-06-29}