高性能MCP
使用MCTS强化学习进行环肽计算分析的MCP工具
目录
概述
HighPlay MCP通过蒙特卡洛树搜索(MCTS)强化学习为环肽设计和分析提供了全面的计算工具。该MCP服务器能够设计与特定靶蛋白结合的新型环肽,分析现有的肽-蛋白相互作用,并训练用于肽优化的神经网络。
特性
- 环肽设计:基于MCTS的靶向肽设计优化
- 分子性质分析:计算结合分数、理化性质和药物相似性
- 结构-活动关系:改进结合的突变建议
- 神经网络训练:强化学习的政策价值网络
- 批处理:高通量筛选和分析能力
目录结构
./
├── README.md # This file
├── env/ # Conda environment (Python 3.10, MCP)
├── env_py39/ # Legacy environment (Python 3.9, HighPlay)
├── src/
│ ├── server.py # MCP server
│ └── jobs/ # Job management system
├── scripts/
│ ├── analyze_peptide.py # Peptide-protein interaction analysis
│ ├── train_mcts.py # MCTS policy-value network training
│ ├── design_peptide.py # MCTS-based peptide design
│ └── lib/ # Shared utilities
├── examples/
│ └── data/ # Demo data
│ └── sequences/ # Sample peptide-protein complexes
├── configs/ # Configuration files
│ ├── analyze_peptide_config.json
│ ├── train_mcts_config.json
│ ├── design_peptide_config.json
│ └── default_config.json
└── repo/ # Original HighPlay repository______________________________________________________________________
安装
快速设置
运行自动安装脚本:
./quick_setup.sh这将创建两个环境(主MCP和遗留Python 3.9)并自动安装所有依赖项。
手动设置(高级)
对于手动安装或自定义,请执行以下步骤。
先决条件
- Conda或Mamba(建议使用曼巴以加快安装速度)
- Python 3.10+
- 4GB+RAM(建议8GB+用于设计优化)
- RDKit(自动安装)
创建环境
请按照以下双环境设置进行操作 reports/step3_environment.md。完整的工作流程是:
# Navigate to the MCP directory
cd /home/xux/Desktop/CycPepMCP/CycPepMCP/tool-mcps/highplay_mcp
# Determine package manager (prefer mamba over conda)
if command -v mamba &> /dev/null; then
PKG_MGR="mamba"
else
PKG_MGR="conda"
fi
echo "Using package manager: $PKG_MGR"
# Create main MCP environment
$PKG_MGR create -p ./env python=3.10 pip -y
# Create legacy environment for advanced features (optional)
$PKG_MGR create -p ./env_py39 python=3.9 pip -y
# Activate main environment
$PKG_MGR activate ./env
# Install MCP dependencies
pip install loguru click pandas numpy tqdm
pip install --force-reinstall --no-cache-dir fastmcp
# Install core scientific packages
pip install biopython scipy matplotlib PyYAML requests
# Install RDKit (recommended for molecular property calculations)
$PKG_MGR install -c conda-forge rdkit -y
# Optional: Install legacy environment dependencies
$PKG_MGR activate ./env_py39
pip install numpy==1.23.5 pandas==1.5.3 biopython==1.79 scipy==1.10.1 matplotlib==3.7.1 PyYAML==6.0 tqdm==4.65.0 requests==2.28.2______________________________________________________________________
本地使用(脚本)
您可以在没有MCP的情况下直接使用脚本进行本地处理。
可用脚本
| 脚本 | 描述 | 示例 |
|---|---|---|
scripts/analyze_peptide.py | 使用结合指标和突变建议分析环肽蛋白相互作用 | 见下文 |
scripts/train_mcts.py | 培训和评估MCTS策略价值网络以优化肽 | 见下文 |
scripts/design_peptide.py | 使用MCTS强化学习优化设计环肽 | 见下文 |
脚本示例
分析肽蛋白相互作用
# Activate environment
mamba activate ./env
# Analyze specific PDB complex from demo data
python scripts/analyze_peptide.py \
--input examples/data/sequences/target.csv \
--pdb-id 6seo \
--output results/6seo_analysis.csv \
--suggest-mutations
# Analyze custom peptide-protein pair
python scripts/analyze_peptide.py \
--peptide-seq "XVPLRARNLPPSFFTEPX" \
--receptor-seq "GPRSVASSKLWMLEFSAFLEQQQDPDTYNKHLFVHIGQSSPSYSDPYLEAVDIRQIYDKFPEKKGGLKDLFERGPSNAFFLVKFWADLNTNIEDEGSSFYGVSSQYESPENMIITCSTKVCSFGKQVVEXVETEYARYENGHYSYRIHRSPLCEYMINFIHKLKHLPEKYMMNSVLENFTILQVVTNRDTQETLLCIAYVFEVSASEHGAQHHIYRLVKE" \
--output results/custom_analysis.csv参数:
--input, -i:包含肽蛋白数据的CSV文件(可选)--pdb-id:要分析的输入文件中的PDB ID--peptide-seq:直接肽序列输入--receptor-seq:直接受体序列输入--suggest-mutations:生成突变建议以改进结合--output, -o:输出文件路径(默认值:results/)
培养MCTS政策价值网络
# Generate training data
python scripts/train_mcts.py \
--mode generate \
--peptide-length 16 \
--num-samples 1000 \
--output training_data/
# Train neural network
python scripts/train_mcts.py \
--mode train \
--peptide-length 16 \
--epochs 100 \
--batch-size 32 \
--learning-rate 0.001 \
--output models/
# Evaluate trained model
python scripts/train_mcts.py \
--mode evaluate \
--model-file models/policy_value_net.pkl \
--output evaluation/设计环肽
# Design peptide for target protein from demo data
python scripts/design_peptide.py \
--input examples/data/sequences/target.csv \
--target 6seo \
--peptide-length 16 \
--iterations 300 \
--output results/design_6seo/
# Design with custom target
python scripts/design_peptide.py \
--receptor-seq "GPRSVASS..." \
--interface-residues "40,41,42,43,46" \
--peptide-length 12 \
--iterations 200 \
--output results/custom_design/______________________________________________________________________
MCP服务器安装
选项1:使用fastmcp(推荐)
# Install MCP server for Claude Code
fastmcp install src/server.py --name cycpep-tools选项2:Claude代码的手动安装
# Add MCP server to Claude Code
claude mcp add cycpep-tools -- $(pwd)/env/bin/python $(pwd)/src/server.py
# Verify installation
claude mcp list选项3:在settings.json中配置
增添 ~/.claude/settings.json:
{
"mcpServers": {
"cycpep-tools": {
"command": "/home/xux/Desktop/CycPepMCP/CycPepMCP/tool-mcps/highplay_mcp/env/bin/python",
"args": ["/home/xux/Desktop/CycPepMCP/CycPepMCP/tool-mcps/highplay_mcp/src/server.py"]
}
}
}______________________________________________________________________
使用Claude代码
安装MCP服务器后,您可以直接在Claude Code中使用它。
快速开始
# Start Claude Code
claude示例提示
工具发现
What tools are available from cycpep-tools?属性分析(快速)
Analyze the cyclic peptide XVPLRARNLPPSFFTEPX binding to protein 6seo with mutation suggestions结构预测(提交API)
Design a 16-residue cyclic peptide that binds to protein 6seo using 300 MCTS optimization iterations检查作业状态
Check the status of job abc12345 and show me the logs if it failed批处理
Train an MCTS policy-value network for 16-residue peptides with 100 epochs and batch size 32使用@引用
在克劳德代码中,使用 @ 引用文件和目录:
| 参考 | 说明 |
|---|---|
@examples/data/sequences/target.csv | 参考演示肽数据 |
@configs/analyze_peptide_config.json | 参考分析配置 |
@results/ | 参考输出目录 |
______________________________________________________________________
与Gemini CLI一起使用
配置
增添 ~/.gemini/settings.json:
{
"mcpServers": {
"cycpep-tools": {
"command": "/home/xux/Desktop/CycPepMCP/CycPepMCP/tool-mcps/highplay_mcp/env/bin/python",
"args": ["/home/xux/Desktop/CycPepMCP/CycPepMCP/tool-mcps/highplay_mcp/src/server.py"]
}
}
}示例提示
# Start Gemini CLI
gemini
# Example prompts (same as Claude Code)
> What cyclic peptide design tools are available?
> Analyze peptide KSLYKIKPRHDSGIKAKISMKT for binding properties______________________________________________________________________
可用工具
快速操作(同步API)
这些工具会立即返回结果(\10分钟):
| 工具 | 说明 | 参数 |
|---|---|---|
submit_mcts_training | 培养MCTS政策价值网络 | peptide_length, epochs, batch_size, learning_rate, job_name |
submit_peptide_design | 利用MCTS优化设计肽 | input_file, target_id, receptor_seq, peptide_length, iterations |
submit_batch_peptide_analysis | 批量分析多种肽 | input_file, suggest_mutations, job_name |
作业管理工具
| 工具 | 说明 |
|---|---|
get_job_status | 检查作业进度 |
get_job_result | 完成后获取结果 |
get_job_log | 查看执行日志 |
cancel_job | 取消正在运行的作业 |
list_jobs | 列出所有作业 |
______________________________________________________________________
例子
示例1:快速属性分析
目标: 分析已知环肽的结合特性
使用脚本:
python scripts/analyze_peptide.py \
--input examples/data/sequences/target.csv \
--pdb-id 6seo \
--suggest-mutations \
--output results/6seo_analysis.csv使用MCP(克劳德代码):
Analyze the cyclic peptide from PDB entry 6seo in the demo data. Include mutation suggestions for improved binding.预期产量:
- 绑定得分:0.493
- plDDT置信度:79.0
- 总体信心:0.612
- 10突变建议
- 理化性质
示例2:MCTS肽设计
目标: 设计一种新型环肽靶向蛋白6seo
使用脚本:
python scripts/design_peptide.py \
--input examples/data/sequences/target.csv \
--target 6seo \
--peptide-length 16 \
--iterations 300 \
--output results/design_6seo/使用MCP(克劳德代码):
Design a 16-residue cyclic peptide that binds to protein 6seo using MCTS optimization with 300 iterations.
Monitor the job progress and show me the final optimized peptide sequence when complete.示例3:神经网络训练管道
目标: 训练肽优化的策略价值网络
使用MCP(克劳德代码):
I want to train an MCTS policy-value network for cyclic peptide design:
1. First generate 5000 training samples for 16-residue peptides
2. Train the network with 100 epochs and batch size 32
3. Evaluate the trained model and show me the performance metrics
Start with the training data generation.示例4:虚拟筛选流程
目标: 筛选多种肽的药物相似性和结合
使用MCP(克劳德代码):
I have these three cyclic peptides I want to analyze for drug potential:
1. PYVPVHFDASV (from 1ssc)
2. KSLYKIKPRHDSGIKAKISMKT (from 3r7g)
3. XVPLRARNLPPSFFTEPX (from 6seo)
Analyze each one using the demo data and tell me which has the best binding properties and molecular characteristics.______________________________________________________________________
演示数据
这 examples/data/ 目录包含用于测试的示例数据:
| 文件 | 描述 | 与一起使用 |
|---|---|---|
sequences/target.csv | 肽蛋白复合物样本 | 所有分析和设计工具 |
目标数据内容
- 1sc:11个残基环肽(PYVPVHFDASV)与受体结合
- 3r7g:22个残基的环肽(KSLYKIKPRHDSGIKAKIMKT)与受体结合
- 6搜索引擎优化:与受体结合的18个残基环肽(XVPLRARNLPPSFFTEPX)
______________________________________________________________________
配置文件
这 configs/ 目录包含配置模板:
| 配置 | 描述 | 参数 |
|---|---|---|
analyze_peptide_config.json | 肽分析配置 | 评分权重、突变设置 |
train_mcts_config.json | MCTS训练配置 | 网络架构、超参数 |
design_peptide_config.json | 肽设计配置 | MCTS设置、优化参数 |
default_config.json | 共享默认设置 | 验证规则、约束 |
配置示例
{
"analysis": {
"simulate_binding_scores": true,
"score_range": {"min": 0.3, "max": 0.9}
},
"mutations": {
"max_suggestions": 10,
"min_improvement": 0.01
},
"validation": {
"min_length": 8,
"max_length": 50
}
}______________________________________________________________________
故障排除
环境问题
问题: 未找到环境
# Recreate environment
mamba create -p ./env python=3.10 pip -y
mamba activate ./env
pip install loguru click pandas numpy tqdm fastmcp
mamba install -c conda-forge rdkit -y问题: RDKit导入错误
# Install RDKit from conda-forge
mamba install -c conda-forge rdkit -y问题: FastMCP导入错误
# Reinstall FastMCP
pip install --force-reinstall --no-cache-dir fastmcpMCP问题
问题: 在Claude代码中找不到服务器
# Check MCP registration
claude mcp list
# Re-add if needed
claude mcp remove cycpep-tools
claude mcp add cycpep-tools -- $(pwd)/env/bin/python $(pwd)/src/server.py问题: 无效肽序列错误
Ensure your peptide sequence uses standard amino acid codes (A-Z).
For cyclic peptides, use the format like "XVPLRARNLPPSFFTEPX" where X represents cyclization points.问题: 工具不工作
# 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
cat jobs//job.log问题: 任务失败
Use get_job_log with job_id "" and tail 100 to see error details问题: 训练时失忆
# Reduce batch size and number of samples
python scripts/train_mcts.py --mode train --batch-size 16 --num-samples 500______________________________________________________________________
发展
运行测试
# Activate environment
mamba activate ./env
# Run integration tests
python tests/integration_test.py
# Test specific script
python scripts/analyze_peptide.py --help
python scripts/design_peptide.py --input examples/data/sequences/target.csv --target 6seo --iterations 5正在启动开发服务器
# Run MCP server in dev mode
fastmcp dev src/server.py性能调优
为了在大规模设计中获得更好的性能:
- 使用GPU加速 (env_py39中需要PyTorch+CUDA)
- 增加迭代次数 为了更好的优化(500-1000次迭代)
- 启用结构预测 为了获得更准确的评分
- 并行作业执行 用于批量处理
______________________________________________________________________
算法概述
MCTS强化学习
- 蒙特卡洛树搜索:使用树搜索探索肽序列空间
- 政策价值网络:神经网络引导搜索到最优序列
- 首次展示:模拟优化路径评估序列质量
- 反向传播:结果更新搜索树以改进探索
环肽限制
- 自行车化:强制执行适当的环闭合(通常是二硫键)
- 长度约束:支持8-50个残基的肽
- 氨基酸多样性:使用所有20种标准氨基酸
- 物理化学性质:平衡疏水性、电荷和尺寸
评分功能
- 结合亲和力:模拟蛋白肽相互作用强度
- 结构性信心:类似plDDT的结构质量评分
- 类药性:口服生物利用度的分子特性
- 可制造性:序列复杂性和稳定性
______________________________________________________________________
许可证
该项目基于HighPlay知识库,利用MCTS强化学习进行环肽设计。
积分
基于 HighPlay -环肽设计的MCTS强化学习
