ADCP MCP
使用AutoDock CrankPep进行环肽构象取样和分析的MCP工具
目录
概述
ADCP MCP提供了使用AutoDock CrankPep(ADCP)进行环肽分析的计算工具。该服务器支持环肽的构象采样、结构预测和批量处理,用于药物发现和肽设计应用。
特性
- 使用蒙特卡罗方法对环肽进行三维构象采样
- 肽库虚拟筛选的批处理
- 具有循环约束的灵活骨干处理
- 含半胱氨酸肽的二硫键支持
- 高通量分析的并行处理
目录结构
./
├── README.md # This file
├── env/ # Conda environment
├── src/
│ └── server.py # MCP server
├── scripts/
│ ├── conformational_sampling.py # Single peptide conformational sampling
│ ├── batch_processing.py # Multiple peptide batch processing
│ └── lib/ # Shared utilities
├── examples/
│ └── data/ # Demo data
│ ├── sequences/ # Sample cyclic peptide sequences
│ │ ├── batch_sequences.txt
│ │ └── cyclic_peptides.smi
│ ├── structures/ # Sample 3D structures
│ │ └── sample_peptide.pdb
│ └── targets/ # Receptor target files
│ └── README_targets.md
├── configs/ # Configuration files
│ ├── conformational_sampling_config.json
│ ├── batch_processing_config.json
│ └── default_config.json
├── jobs/ # Job storage (auto-created)
├── adcp_Linux-x86_64 # ADCP binary
├── ramaprob.data # Required probability data
└── repo/ # Original repository______________________________________________________________________
安装
先决条件
- Conda或Mamba(建议使用曼巴以加快安装速度)
- Python 3.10+
- GCC编译器和make(用于C二进制编译)
- Linux x86_64系统(ADCP二进制要求)
创建环境
根据以下信息 reports/step3_environment.md,以下是经过验证的安装程序:
# Navigate to the MCP directory
cd /mnt/data/done_projects/2026/BioMolMCP/CycPepMCP/tool-mcps/adcp_mcp
# Create conda environment (use mamba if available)
/home/xux/miniforge3/bin/mamba create -p ./env python=3.12 -y
# or: conda create -p ./env python=3.12 -y
# Activate environment
source /home/xux/miniforge3/etc/profile.d/conda.sh
conda activate ./env
# or: mamba activate ./env
# Install Dependencies
pip install --upgrade pip
pip install numpy loguru click pandas tqdm
pip install --force-reinstall --no-cache-dir fastmcp
# Build ADCP binary (if not already built)
cd repo/ADCP
make clean && make
cd ../../
# Copy required files
cp repo/ADCP/adcp_Linux-x86_64 ./
cp repo/ADCP/ramaprob.data ./
cp repo/ADCP/runADCP.py ./______________________________________________________________________
本地使用(脚本)
您可以在没有MCP的情况下直接使用脚本进行本地处理。
可用脚本
| 脚本 | 描述 | 示例 |
|---|---|---|
scripts/conformational_sampling.py | 为单环肽生成构象集成 | 见下文 |
scripts/batch_processing.py | 并行处理多个肽序列 | 见下文 |
脚本示例
构象采样
# Activate environment
conda activate ./env
# Run conformational sampling
python scripts/conformational_sampling.py \
--input GPGPGPGP \
--output results/conformations \
--numsteps 50000 \
--nbruns 10参数:
--input, -i:肽序列(必填)--output, -o:输出目录路径(默认:自动生成)--numsteps, -n:每次运行蒙特卡洛步数(默认值:500000)--nbruns, -N:独立运行次数(默认值:25)--disulfide:启用二硫化物约束--no-cyclic:禁用循环约束
批处理
python scripts/batch_processing.py \
--input examples/data/sequences/batch_sequences.txt \
--output results/batch_output \
--max-workers 4 \
--numsteps 5000参数:
--input, -i:带序列的输入文件(必填)--output, -o:输出目录(默认:自动生成)--max-workers, -w:并行工作者(默认值:4)--numsteps, -n:每个序列的MC步数(默认值:批量为1000)--timeout, -t:每个序列的超时时间(秒)(默认值:300)
______________________________________________________________________
MCP服务器安装
选项1:使用fastmcp(推荐)
# Install MCP server for Claude Code
fastmcp install src/server.py --name adcp-tools选项2:Claude代码的手动安装
# Add MCP server to Claude Code
claude mcp add adcp-tools -- $(pwd)/env/bin/python $(pwd)/src/server.py
# Verify installation
claude mcp list选项3:在settings.json中配置
增添 ~/.claude/settings.json:
{
"mcpServers": {
"adcp-tools": {
"command": "/mnt/data/done_projects/2026/BioMolMCP/CycPepMCP/tool-mcps/adcp_mcp/env/bin/python",
"args": ["/mnt/data/done_projects/2026/BioMolMCP/CycPepMCP/tool-mcps/adcp_mcp/src/server.py"]
}
}
}______________________________________________________________________
使用Claude代码
安装MCP服务器后,您可以直接在Claude Code中使用它。
快速开始
# Start Claude Code
claude示例提示
工具发现
What tools are available from adcp-tools?序列验证
Validate this cyclic peptide sequence: GPGPGPGP构象采样
Submit conformational sampling for cyclic peptide GRGDSP with 10 runs and 50000 steps per run检查作业状态
Check the status of job abc12345 and show me the logs if it's running批处理
Process the sequences in @examples/data/sequences/batch_sequences.txt using batch processing with 2 workers使用@引用
在克劳德代码中,使用 @ 引用文件和目录:
| 参考 | 说明 |
|---|---|
@examples/data/sequences/batch_sequences.txt | 引用序列文件 |
@configs/conformational_sampling_config.json | 引用配置文件 |
@results/ | 参考输出目录 |
______________________________________________________________________
与Gemini CLI一起使用
配置
增添 ~/.gemini/settings.json:
{
"mcpServers": {
"adcp-tools": {
"command": "/mnt/data/done_projects/2026/BioMolMCP/CycPepMCP/tool-mcps/adcp_mcp/env/bin/python",
"args": ["/mnt/data/done_projects/2026/BioMolMCP/CycPepMCP/tool-mcps/adcp_mcp/src/server.py"]
}
}
}示例提示
# Start Gemini CLI
gemini
# Example prompts (same as Claude Code)
> What tools are available?
> Submit conformational sampling for cyclic peptide GPGPGPGP______________________________________________________________________
可用工具
作业管理工具
这些工具管理长时间运行的ADCP操作:
| 工具 | 说明 | 参数 |
|---|---|---|
get_job_status | 检查作业进度和当前状态 | job_id |
get_job_result | 获取已完成的作业结果和输出文件 | job_id |
get_job_log | 查看作业执行日志(带尾部支持) | job_id, tail (默认值:50) |
cancel_job | 取消正在运行的作业 | job_id |
list_jobs | 列出所有作业(带可选状态筛选器) | status (可选) |
提交工具(长时间操作>20分钟)
这些工具为长时间运行的ADCP操作提交作业:
| 工具 | 说明 | 参数 |
|---|---|---|
submit_conformational_sampling | 生成单个肽的构象 | sequence, numsteps, nbruns, cyclic, disulfide, output_dir, job_name |
submit_batch_processing | 并行处理多种肽 | input_file, numsteps, max_workers, cyclic, disulfide, timeout, output_dir, job_name |
实用工具
这些工具提供快速验证和系统状态:
| 工具 | 描述 | 估计。运行时间 |
|---|---|---|
validate_peptide_sequence | 验证ADCP的氨基酸序列 | \<1秒 |
check_adcp_binary | 验证ADCP二进制可用性 | \<1秒 |
get_server_info | 获取服务器功能和状态 | \<1秒 |
______________________________________________________________________
例子
示例1:快速构象采样
目标: 生成环肽的构象
使用脚本:
python scripts/conformational_sampling.py \
--input GPGPGPGP \
--output results/conformations \
--numsteps 10000 \
--nbruns 5使用MCP(克劳德代码):
Submit conformational sampling for cyclic peptide "GPGPGPGP" with 5 runs and 10000 steps per run. Name the job "test_peptide".预期产量:
- 具有构象结构的多个PDB文件
- 带有采样统计信息的JSON元数据
- 包含能源信息的执行日志
示例2:批处理管道
目标: 筛选环肽库
使用脚本:
python scripts/batch_processing.py \
--input examples/data/sequences/batch_sequences.txt \
--output results/library_screen \
--max-workers 2 \
--numsteps 5000使用MCP(克劳德代码):
Process the sequences in @examples/data/sequences/batch_sequences.txt using batch processing.
Use 2 workers and 5000 steps per sequence. Name the job "library_screen".示例3:使用作业管理完成工作流
目标: 提交作业、监控进度并检索结果
使用MCP(克劳德代码):
1. First validate the sequence "GRGDSP"
2. Submit conformational sampling for this sequence with 3 runs
3. Check the job status every few minutes
4. When complete, show me the results______________________________________________________________________
演示数据
这 examples/data/ 目录包含用于测试的示例数据:
| 文件 | 描述 | 与一起使用 |
|---|---|---|
sequences/batch_sequences.txt | 24个样本肽序列 | submit_batch_processing |
sequences/cyclic_peptides.smi | 类似SMILES格式的样本序列 | 手动参考 |
structures/sample_peptide.pdb | 样品肽结构 | 基于结构的操作 |
示例序列文件格式
# Comments start with #
cycpep_001 GPGPGP
cycpep_002 GGPGPG
PGPGPG
ACDEFGHIKL______________________________________________________________________
配置文件
这 configs/ 目录包含配置模板:
| 配置 | 描述 | 参数 |
|---|---|---|
conformational_sampling_config.json | 单肽采样配置 | numsteps、nbruns、约束 |
batch_processing_config.json | 批处理配置 | max_workers、超时、约束 |
default_config.json | 系统默认值 | 验证规则,二进制路径 |
配置示例
{
"sampling": {
"numsteps": 50000,
"nbruns": 10,
"timeout_seconds": 600
},
"constraints": {
"cyclic": true,
"disulfide": false,
"optimization_weights": [1, 0.25, 0.75, 0.0]
},
"validation": {
"min_sequence_length": 6,
"max_sequence_length": 20
}
}______________________________________________________________________
故障排除
环境问题
问题: 未找到环境
# Recreate environment
mamba create -p ./env python=3.12 -y
conda activate ./env
pip install numpy loguru click pandas tqdm fastmcp问题: 未找到ADCP二进制文件
# Check binary exists
ls -la adcp_Linux-x86_64
# If missing, rebuild from source
cd repo/ADCP && make && cp adcp_Linux-x86_64 ../../问题: 导入错误
# Verify installation
python -c "from src.server import mcp; print('Server OK')"
python -c "import numpy, fastmcp; print('Environment OK')"MCP问题
问题: 在Claude代码中找不到服务器
# Check MCP registration
claude mcp list
# Re-add if needed
claude mcp remove adcp-tools
claude mcp add adcp-tools -- $(pwd)/env/bin/python $(pwd)/src/server.py问题: 无效序列错误
Ensure your sequence contains only valid amino acids (ACDEFGHIKLMNPQRSTVWY)
and is between 6-20 amino acids long.问题: 工具不工作
# Test server directly
python -c "
from src.server import mcp
print(list(mcp.list_tools().keys()))
"工作问题
问题: 作业挂起
# Check job directory
ls -la jobs/
# View job log
python -c "
from src.jobs.manager import job_manager
print(job_manager.get_job_log('JOB_ID', tail=20))
"问题: 任务失败
Use get_job_log with job_id "JOB_ID" and tail 100 to see error details问题: 运行时间长
ADCP conformational sampling typically takes 20-60 minutes.
For testing, use fewer steps: numsteps=1000, nbruns=3______________________________________________________________________
发展
运行测试
# Activate environment
conda activate ./env
# Run integration tests
python tests/run_integration_tests.py
# Test individual scripts
python scripts/conformational_sampling.py --input GPGPGPGP --dry-run
python scripts/batch_processing.py --input examples/data/sequences/batch_sequences.txt --dry-run正在启动开发服务器
# Run MCP server in dev mode
fastmcp dev src/server.py
# Test with MCP client
python -c "
from fastmcp import FastMCP
from src.server import mcp
print(mcp.list_tools())
"性能调优
| 用例 | 推荐参数 |
|---|---|
| 快速测试 | numsteps=1000, nbruns=3 |
| 发展 | numsteps=10000, nbruns=5 |
| 生产 | numsteps=500000, nbruns=25 |
| 高吞吐量 | numsteps=5000, max_workers=cpu_cores |
______________________________________________________________________
许可证
ADCP在GNU LGPL v2.0开源许可证下可用。 MCP集成代码用于教育和研究目的。
积分
基于 AutoDock CrankPep(ADCP) 原始存储库:
