AlphaFold MCP Server 是一个全面的模型上下文协议(MCP)服务器,它通过丰富的工具和资源,为蛋白质结构预测分析提供对 AlphaFold 蛋白质结构数据库的访问。该服务器可帮助研究人员、生物信息学家和结构生物学家更高效地处理和分析预测的蛋白质结构。
本 MCP 服务器能够与 AlphaFold 大量的蛋白质结构预测数据进行无缝集成,提供结构检索、置信度分析、批量处理和可视化准备等工具,非常适合处理预测蛋白质结构的研究人员、生物信息学家和结构生物学家使用。
# 克隆或创建服务器目录
npm install
# 构建服务器
npm run build
将以下内容添加到你的 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}
application/jsonalphafold://pdb/{uniprotId}
chemical/x-pdbalphafold://confidence/{uniprotId}
application/jsonalphafold://summary/{organism}
application/json该服务器连接到 https://alphafold.ebi.ac.uk/api/ 的 AlphaFold API,并提供对以下内容的结构化访问:
该服务器包含全面的错误处理机制,用于处理以下情况:
请注意 API 使用:
该服务器由 Augmented Nature 开发,在开发过程中注重 TypeScript 的类型安全,包含全面的错误处理机制,为新功能提供文档,并使用真实的 AlphaFold 数据进行测试。
本项目采用 MIT 许可证,详情请参阅 LICENSE 文件。
如果您在研究中使用了此 MCP 服务器,请引用以下内容:
如果您在研究或出版物中使用了本项目,请按以下方式引用:
@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 数据,但不存储或缓存结构数据。所有数据均直接从官方 AlphaFold API 获取。