ESMfold MCP服务器
通过Docker使用ESMFold预测蛋白质结构
用于ESMFold蛋白质分析的MCP(模型上下文协议)服务器,具有5个核心工具:
- 从序列或FASTA文件中提取ESM-2蛋白包埋
- 提交大规模嵌入提取作业
- 同时批量处理多个FASTA文件
- 监控和检索后台作业结果
- 访问服务器信息和可用型号
Docker快速入门
方法1:从GitHub中提取预构建映像
最快的开始方式。每次发布时,预构建的Docker镜像都会自动发布到GitHub容器注册表。
# Pull the latest image
docker pull ghcr.io/macromnex/esmfold_mcp:latest
# Register with Claude Code (runs as current user to avoid permission issues)
claude mcp add esmfold -- docker run -i --rm --user `id -u`:`id -g` --gpus all --ipc=host -v `pwd`:`pwd` ghcr.io/macromnex/esmfold_mcp:latest注: 从项目目录运行。 ` pwd ` 展开到当前工作目录。
要求:
- 支持GPU的Docker(
nvidia-docker或带有NVIDIA运行时的Docker) - 已安装克劳德代码
就是这样!ESMfold MCP服务器现在可以在Claude Code中使用。
______________________________________________________________________
方法2:在本地构建Docker镜像
自己构建映像并将其安装到Claude Code中。适用于自定义或离线环境。
# Clone the repository
git clone https://github.com/MacromNex/esmfold_mcp.git
cd esmfold_mcp
# Build the Docker image
docker build -t esmfold_mcp:latest .
# Register with Claude Code (runs as current user to avoid permission issues)
claude mcp add esmfold -- docker run -i --rm --user `id -u`:`id -g` --gpus all --ipc=host -v `pwd`:`pwd` esmfold_mcp:latest注: 从项目目录运行。 ` pwd ` 展开到当前工作目录。
要求:
- 支持GPU的Docker
- 已安装克劳德代码
- Git(克隆存储库)
关于Docker标志:
-i--Claude Code的交互模式--rm--退出后自动移除容器- `
--userid -u:id -g` --以当前用户身份运行容器,因此输出文件归您所有(不是root) --gpus all--授予对所有可用GPU的访问权限--ipc=host--使用主机IPC命名空间以获得更好的性能-v--装载您的项目目录,以便容器可以访问您的数据
______________________________________________________________________
验证安装
添加MCP服务器后,您可以验证它是否正常工作:
# List registered MCP servers
claude mcp list
# You should see 'esmfold' in the output在Claude Code中,您现在可以使用所有5个ESMfold工具:
extract_protein_embeddingssubmit_protein_embeddingssubmit_batch_protein_embeddingsget_job_statusget_job_result
______________________________________________________________________
后续步骤
- 详细文件:参见 detail.md 有关以下内容的全面指南:
- 可用的MCP工具和参数 - 本地Python环境设置(Docker的替代方案) - ESM-2选型指南 - 示例工作流和用例 - 输出格式选项(NPZ、JSON)
______________________________________________________________________
使用示例
注册后,您可以直接在Claude Code中使用ESMfold工具。以下是一些常见的工作流程:
示例1:从FASTA中提取嵌入
I have protein sequences in /path/to/proteins.fasta. Can you extract ESM-2 embeddings using extract_protein_embeddings with the esm2_t33_650M_UR50D model and save the embeddings to /path/to/embeddings/?示例2:大规模嵌入提取
I have a large dataset of 500 protein sequences in /path/to/large_dataset.fasta. Can you submit a batch embedding extraction job using submit_protein_embeddings with the esm2_t36_3B_UR50D model, then monitor the job until completion and retrieve the results?示例3:突变嵌入分析
I have variant sequences in /path/to/variants.fasta for a mutational study. Can you extract embeddings for all variants using extract_protein_embeddings and save to /path/to/variant_embeddings/ so I can compare them?______________________________________________________________________
故障排除
找不到Docker?
docker --version # Install Docker if missingGPU无法访问?
- 确保安装了NVIDIA Docker运行时
- 核对
docker run --gpus all ubuntu nvidia-smi
未找到克劳德代码?
# Install Claude Code
npm install -g @anthropic-ai/claude-code______________________________________________________________________
许可证
基于元人工智能研究(ESMFold/ESM-2)
