Protein-Protein MM/PBSA Workflow (Execution-Ready)
SkillFiles & storageExecution-ready protein-protein MM/GB(PB)SA workflow with MCP-exposed tool names, strict file validation, and failure guards.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Protein-Protein MM/PBSA Workflow (Execution-Ready) skill
What this skill tells your AI
The instructions your AI receives, as published by internscience/molclaw in skills/L1_tools/molclaw-protein-protein-mmpbsa/SKILL.md and read by ahel’s review.
Note:
- Local files are not directly accessible by the server. Please upload them to the server using
molclaw-file-transferbefore execution. - For PDB file inputs, it is recommended to preprocess them using
molclaw-pdbfixerbefore execution. - Please refer to skill
molclaw-scp-serverto complete tool invocation.
This skill guides agents through the protein-protein MM/GB(PB)SA pipeline with enforced MCP handoffs, file validation, and optional analysis.
Canonical Toolchain & References
- Step 1 —
fix_pdb(reference_fix_pdb.md): repair the protein-protein complex and emit a cleaned PDB. - Step 2 —
prepare_protein_md(reference_prepare_protein_md.md): build the protein-only MD workspace with the requested MD duration. - Step 3 —
gmx_mmpbsa_propro(reference_gmx_mmpbsa_propro.md): compute GB/PB binding energies inside the prepared workspace. - Optional Step 4 —
analyze_mmpbsa(reference_analyze_mmpbsa.md): aggregate the CSV/plot outputs into a final report.
SCP Tool Names (must use)
fix_pdbprepare_protein_mdgmx_mmpbsa_proproanalyze_mmpbsa(optional)
Entry / Data Handover
Pre-flight checks
- Confirm the raw protein-protein complex PDB and associated restraints are accessible before calling
fix_pdb. - Decide whether
enable_analysiswill turn on Step 4 ahead ofgmx_mmpbsa_propro. - Keep
dry_run=Falsefor any production-grade binding energy request; use dry run only during validation loops. - Prefer a validated quick profile first (
md_time=20,nvt_time=1,npt_time=1) to avoid long blocking runs, then scale up only if needed.
Data Handover Contract
fix_pdb.output_file→prepare_protein_md.protein_pdbprepare_protein_md.run_dir→gmx_mmpbsa_propro.work_dir- Optional analysis consumes the MM/GBSA result workspace:
gmx_mmpbsa_propro.output_dir→analyze_mmpbsa.work_dir gmx_mmpbsa_propro.output_files(e.g.,gb_result_csv,pb_result_csv) are the canonical GB/PB summaries for downstream reporting.
Never request users to provide intermediate GROMACS artifacts (em.gro, md.xtc, md.tpr, topol.top); those files are generated inside the SCP-managed workspace.
Step-by-step Execution Details
Step 1: fix_pdb
- Entry checks
- Verify the complex PDB and supporting files are reachable and correspond to the intended chains.
- Disable
dry_runwhen producing deliverable energies, toggleadd_hydrogensper structural requirements.
- Success criteria
status == "success"andoutput_filecontains a non-empty path.atom_count,residue_count, andchain_countprovide diagnostics for downstream validation.- On failure, return
msgand abort before Step 2.
Step 2: prepare_protein_md
- Entry checks
- Accept
protein_pdb = fix_pdb.output_fileas input. full_md=Trueis enforced for this workflow, andtemperature,nvt_time, andnpt_timemust align with resource limits.
- Accept
- Success criteria
status == "success"andrun_dircontains the expected MD workspace.- Ensure the required files (
em.gro,md.xtc,md.tpr,topol.top) exist insiderun_dirbefore Step 3. fileslists the produced artifacts for troubleshooting.
Step 3: gmx_mmpbsa_propro
- Entry checks
work_diris the validatedprepare_protein_md.run_dirand still contains the MD artifacts.- Default to
method="gb"for quick runs ormethod="both"when PB outputs are also desired. - Keep
skip_mmpbsa=Falseunless agents explicitly plan to build indexes only.
- Success criteria
statusis"success"or"partial_success"; keep the latter when one method fails.output_files.gb_result_csvand/oroutput_files.pb_result_csvcapture the FINAL_RESULTS.* summary.metricsaggregates the binding energies parsed from GB/PB outputs.
Step 4: analyze_mmpbsa (optional)
- Entry checks
enable_analysismust be true andwork_dirmust point to agmx_mmpbsa_propro.output_dirthat houses themmgbsa/mmpbsadirectories.- Use
work_dir = gmx_mmpbsa_propro.output_dirinstead of the MD preparation directory.
- Success criteria
status == "success"andreportslists CSV/PNG/MD artifacts produced underoutput_dir.detected_modeclarifies whether dual, PB-only, or GB-only data were compiled.
- Fallback behavior
- If analysis fails, keep Step 3 outputs as the workflow deliverable, log the analyzer
msg, and reportmissing_filesin the summary. - Retry
gmx_mmpbsa_proprowith the missing method before rerunning the analyzer if a branch is absent.
- If analysis fails, keep Step 3 outputs as the workflow deliverable, log the analyzer
Agent Flow
fix_pdb.output_filefeedsprepare_protein_md.protein_pdb.prepare_protein_md.run_diris the canonicalgmx_mmpbsa_propro.work_dir.gmx_mmpbsa_propro.output_diris the canonicalanalyze_mmpbsa.work_dir.gmx_mmpbsa_propro.output_files.gb_result_csv/pb_result_csvare the verified binding energy CSVs; both should be reported whenmethod="both".- Optional
analyze_mmpbsa.output_dircontains the final plots/tables enumerated inreports/files, anddetected_mode/missing_filesexplain data coverage.
Recommended Sequential Calling
# Step 1: fix_pdb
r1 = client.parse_result(await client.session.call_tool(
"fix_pdb",
arguments={
"input_path": "protein_protein_complex.pdb",
"add_hydrogens": True,
"ph": 7.0,
"remove_heterogens": False,
"remove_water": False,
"replace_nonstandard": False,
"add_missing_residues": False,
"dry_run": False,
},
))
fixed_pdb = r1["output_file"]
# Step 2: prepare_protein_md
r2 = client.parse_result(await client.session.call_tool(
"prepare_protein_md",
arguments={
"protein_pdb": fixed_pdb,
"full_md": True,
"md_time": 20.0,
"temperature": 300.0,
"nvt_time": 1.0,
"npt_time": 1.0,
},
))
md_work_dir = r2["run_dir"]
# Validate required files before MM/PBSA
required_files = ["em.gro", "md.xtc", "md.tpr", "topol.top"]
# Agents should verify these exist under md_work_dir and return an error if missing
# Step 3: gmx_mmpbsa_propro
r3 = client.parse_result(await client.session.call_tool(
"gmx_mmpbsa_propro",
arguments={
"work_dir": md_work_dir,
"method": "gb",
"nproc": 64,
"skip_mmpbsa": False,
"dry_run": False,
},
))
# Step 4: analyze_mmpbsa (optional)
if enable_analysis:
r4 = client.parse_result(await client.session.call_tool(
"analyze_mmpbsa",
arguments={
"work_dir": r3["output_dir"],
},
))
Practical Parameter Sets
- GB-only production run (mirrors the CLI validation command)
fix_pdb:{"input_path": "protein_protein_complex.pdb", "add_hydrogens": True, "dry_run": False}
prepare_protein_md:{"protein_pdb": "protein_protein_complex_fixed.pdb", "full_md": True, "md_time": 20.0, "temperature": 300.0, "nvt_time": 1.0, "npt_time": 1.0}gmx_mmpbsa_propro:{"work_dir": "Protein_MD_01", "method": "gb", "nproc": 64, "skip_mmpbsa": False}- Optional
analyze_mmpbsa:{"work_dir": "gmx_mmpbsa_propro_result_dir"}
- Dual-method variant (driven by the dual-mode CLI command)
fix_pdb: same as above
prepare_protein_md:{"protein_pdb": "protein_protein_complex_fixed.pdb", "full_md": True, "md_time": 50.0, "temperature": 300.0, "nvt_time": 1.0, "npt_time": 1.0}gmx_mmpbsa_propro:{"work_dir": "Protein_MD_02", "method": "both", "nproc": 64, "skip_mmpbsa": False}- Optional
analyze_mmpbsa:{"work_dir": "gmx_mmpbsa_propro_result_dir"}
Agent Safety Checklist
- Enforce
full_md=Trueand realistic MD times before invoking the MM/PBSA stage. - Confirm
em.gro,md.xtc,md.tpr, andtopol.topexist under therun_dir; abort with missing-file names if any are absent. - Surface
partial_successexplicitly whenmethod="both"runs complete only one branch. - Do not propagate
dry_run=Trueoutputs to end users. - If the optional analyzer fails, keep
gmx_mmpbsa_proproresults as the canonical output and append the analyzermsg/missing_filesto the summary. - Do not wait indefinitely for long MD stages: report progress between steps and offer a quick-profile rerun when runtime exceeds expected limits.
- Avoid repeated filesystem polling loops; if required files are missing after one check, fail fast and surface missing filenames.
Signals
- GitHub stars
- 33
- Forks
- 3
- Last commit
- Aug 2026
Advanced
- Catalog kind
- skill
- Gateway key
molclaw-protein-protein-mmpbsa- Source
- github.com/internscience/molclaw