AlphaFold MCP Server

AlphaFold MCP Server

🚀 AlphaFold MCP Server

AlphaFold MCP Server 是一个全面的模型上下文协议(MCP)服务器,它通过丰富的工具和资源,为蛋白质结构预测分析提供对 AlphaFold 蛋白质结构数据库的访问途径,助力科研人员更高效地开展相关研究。

🚀 快速开始

此 MCP 服务器能够与 AlphaFold 庞大的蛋白质结构预测集合实现无缝集成,提供了结构检索、可信度分析、批量处理和可视化准备等工具,非常适合从事预测蛋白质结构研究的科研人员、生物信息学家和结构生物学家使用。

✨ 主要特性

🧬 核心结构工具

  • 结构检索:通过 UniProt ID 获取 AlphaFold 预测结果。
  • 多格式下载:支持 PDB、CIF、BCIF 和 JSON 格式。
  • 可用性检查:验证特定蛋白质的预测结果是否存在。

🔍 搜索与发现

  • 结构搜索:按名称、基因或生物体查找蛋白质。
  • 生物体浏览:列出特定物种的所有可用结构。
  • 覆盖统计:获取全面的生物体级统计信息。

📊 可信度与质量分析

  • 逐残基可信度:提供每个氨基酸的详细可信度分数。
  • 区域分析:识别高/低可信度的结构区域。
  • 质量验证:评估整体预测的可靠性。

⚡ 批量处理

  • 批量检索:同时处理多个蛋白质。
  • 批量下载:高效地进行多结构下载。
  • 并行分析:对蛋白质集进行可信度分析。

🔬 比较分析

  • 结构比较:对多个蛋白质进行并排分析。
  • 相似性搜索:查找结构相关的蛋白质。
  • 覆盖比较:分析预测的完整性。

🎨 可视化集成

  • PyMOL 脚本:提供即用型可视化脚本。
  • ChimeraX 集成:以可信度着色的结构查看。
  • 自定义导出格式:提供灵活的数据导出选项。

📦 安装指南

# 克隆或创建服务器目录
npm install

# 构建服务器
npm run build

💻 使用示例

作为 MCP 服务器

添加到您的 MCP 配置中:

{
"mcpServers": {
"alphafold-server": {
"command": "node",
"args": ["/path/to/alphafold-server/build/index.js"]
}
}
}

直接使用

# 启动服务器
npm start

# 或者直接运行
node build/index.js

基础用法

以下是一些基本操作的代码示例:

// 1. 检查结构是否可用
await use_mcp_tool("alphafold-server", "check_availability", {
uniprotId: "P04637",
});

// 2. 获取结构元数据
await use_mcp_tool("alphafold-server", "get_prediction_metadata", {
uniprotId: "P04637",
});

// 3. 分析可信度分数
await use_mcp_tool("alphafold-server", "get_confidence_scores", {
uniprotId: "P04637",
threshold: 70,
});

高级用法

比较研究

// 比较多个相关蛋白质
await use_mcp_tool("alphafold-server", "compare_structures", {
uniprotIds: ["P04637", "P53350", "P63151"],
});

// 批量可信度分析
await use_mcp_tool("alphafold-server", "batch_confidence_analysis", {
uniprotIds: ["P04637", "P53350", "P63151"],
});

可视化准备

// 导出用于 PyMOL 并包含可信度着色
await use_mcp_tool("alphafold-server", "export_for_pymol", {
uniprotId: "P04637",
includeConfidence: true,
});

// 导出用于 ChimeraX
await use_mcp_tool("alphafold-server", "export_for_chimerax", {
uniprotId: "P04637",
includeConfidence: true,
});

全生物体分析

// 获取人类蛋白质统计信息
await use_mcp_tool("alphafold-server", "get_organism_stats", {
organism: "Homo sapiens",
});

// 列出可用结构
await use_mcp_tool("alphafold-server", "list_by_organism", {
organism: "Homo sapiens",
size: 100,
});

📚 详细文档

可用工具

核心结构工具

get_structure

检索特定 UniProt ID 的 AlphaFold 结构预测。 参数

  • uniprotId(必需):UniProt 编号(例如,"P21359", "Q8N726")
  • format(可选):输出格式 - "pdb", "cif", "bcif", 或 "json"(默认:"json")

示例

{
"uniprotId": "P04637",
"format": "json"
}
download_structure

下载指定格式的 AlphaFold 结构文件。 参数

  • uniprotId(必需):UniProt 编号
  • format(可选):文件格式 - "pdb", "cif", 或 "bcif"(默认:"pdb")
check_availability

检查 UniProt ID 的 AlphaFold 结构预测是否可用。 参数

  • uniprotId(必需):要检查的 UniProt 编号

搜索与发现工具

search_structures

按蛋白质名称或基因搜索可用的 AlphaFold 结构。 参数

  • query(必需):搜索词(蛋白质名称、基因名称等)
  • organism(可选):按生物体过滤
  • size(可选):结果数量(1 - 100,默认:25)
list_by_organism

列出特定生物体的所有可用结构。 参数

  • organism(必需):生物体名称(例如,"Homo sapiens", "Escherichia coli")
  • size(可选):结果数量(1 - 100,默认:50)
get_organism_stats

获取生物体的 AlphaFold 覆盖统计信息。 参数

  • organism(必需):生物体名称

可信度与质量工具

get_confidence_scores

获取结构预测的逐残基可信度分数。 参数

  • uniprotId(必需):UniProt 编号
  • threshold(可选):可信度阈值(0 - 100)
analyze_confidence_regions

分析可信度分数分布并识别高/低可信度区域。 参数

  • uniprotId(必需):UniProt 编号
get_prediction_metadata

获取预测的元数据,包括版本、日期和质量指标。 参数

  • uniprotId(必需):UniProt 编号

批量处理工具

batch_structure_info

同时获取多个蛋白质的结构信息。 参数

  • uniprotIds(必需):UniProt 编号数组(最多 50 个)
  • format(可选):输出格式 - "json" 或 "summary"(默认:"json")
batch_download

下载多个结构文件。 参数

  • uniprotIds(必需):UniProt 编号数组(最多 20 个)
  • format(可选):文件格式 - "pdb" 或 "cif"(默认:"pdb")
batch_confidence_analysis

分析多个蛋白质的可信度分数。 参数

  • uniprotIds(必需):UniProt 编号数组(最多 30 个)

比较分析工具

compare_structures

比较多个 AlphaFold 结构进行分析。 参数

  • uniprotIds(必需):要比较的 UniProt 编号数组(2 - 10 个)
find_similar_structures

查找与给定蛋白质相似的 AlphaFold 结构。 参数

  • uniprotId(必需):参考 UniProt 编号
  • organism(可选):按生物体过滤

覆盖与完整性工具

get_coverage_info

获取 AlphaFold 预测中序列覆盖的信息。 参数

  • uniprotId(必需):UniProt 编号
validate_structure_quality

验证并评估 AlphaFold 预测的整体质量。 参数

  • uniprotId(必需):UniProt 编号

导出与集成工具

export_for_pymol

导出用于 PyMOL 可视化的结构数据。 参数

  • uniprotId(必需):UniProt 编号
  • includeConfidence(可选):包含可信度分数着色(默认:true)
export_for_chimerax

导出用于 ChimeraX 可视化的结构数据。 参数

  • uniprotId(必需):UniProt 编号
  • includeConfidence(可选):包含可信度分数着色(默认:true)
get_api_status

检查 AlphaFold API 状态和数据库统计信息。 参数:无

可用资源

资源模板

alphafold://structure/{uniprotId}

MIME 类型application/json 描述:UniProt ID 的完整 AlphaFold 结构预测

alphafold://pdb/{uniprotId}

MIME 类型chemical/x-pdb 描述:UniProt ID 的 PDB 格式结构文件

alphafold://confidence/{uniprotId}

MIME 类型application/json 描述:结构预测的逐残基可信度分数

alphafold://summary/{organism}

MIME 类型application/json 描述:生物体所有可用结构的摘要

API 参考

服务器连接到 https://alphafold.ebi.ac.uk/api/ 的 AlphaFold API,并提供对以下内容的结构化访问:

  • 结构预测:完整的蛋白质结构数据
  • 可信度分数:逐残基可靠性指标
  • 元数据:预测版本、日期和质量信息
  • 交叉引用:指向其他数据库和资源的链接

错误处理

服务器包含全面的错误处理机制,用于处理以下情况:

  • 无效的 UniProt ID
  • 缺失的结构预测
  • API 连接问题
  • 速率限制和超时
  • 格式错误的请求

速率限制

请注意 API 使用:

  • 批量操作限制在合理的大小范围内
  • 大请求会自动分块
  • 内置延迟可防止 API 过载

🔧 技术细节

贡献说明

欢迎贡献代码!请确保:

  • 代码具备 TypeScript 类型安全
  • 有全面的错误处理
  • 为新功能提供文档说明
  • 使用真实的 AlphaFold 数据进行测试

关于

本项目由 Augmented Nature 开发 - augmentednature.ai

Augmented Nature 专注于为科学研究和数据分析创建人工智能驱动的工具和基础设施。

📄 许可证

本项目采用 MIT 许可证 - 详情请参阅 LICENSE 文件。

引用说明

如果您在研究中使用了此 MCP 服务器,请引用以下内容:

  • AlphaFold 数据库:https://alphafold.ebi.ac.uk/
  • 模型上下文协议:https://modelcontextprotocol.io/

如果您在研究或出版物中使用了本项目,请按以下方式引用:

@misc{alphafoldmcp2025,
author = {Moudather Chelbi},
title = {AlphaFold MCP Server},
year = {2025},
howpublished = {https://github.com/Augmented-Nature/AlphaFold-MCP-Server},
note = {Accessed: 2025-06-29}
}

支持与反馈

如果您遇到问题或有疑问,请:

  • 查看 AlphaFold API 文档
  • 查看错误消息以获取调试提示
  • 确保 UniProt ID 有效且最新

注意:本服务器为访问 AlphaFold 数据提供了便捷的接口,但不存储或缓存结构数据。所有数据均直接从官方 AlphaFold API 获取。

  • 0 关注
  • 0 收藏,17 浏览
  • system 提出于 2025-09-22 01:48

相似服务问题

相关AI产品