Install
$ agentstack add skill-internscience-molclaw-molclaw-prolif-tool ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
ProLIF Multi-Scenario Analysis Toolkit
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.
> [!IMPORTANT] > Tool Priority: For single-structure interaction analysis (one complex, one pose), > use molclaw-interaction-visualizer (local script) as the primary tool instead of > prolif_pdb. ProLIF remains the primary tool for: > - prolif_docking — batch docking pose fingerprint comparison > - prolif_md — MD trajectory interaction dynamics > - prolif_protein_protein — protein-protein trajectory interface profiling > > These capabilities are NOT available in interaction-visualizer.
> [!NOTE] > Local files are not directly accessible by the server. Please upload them to the server using molclaw-file-transfer before execution. > For PDB file inputs, it is recommended to preprocess them using molclaw-pdbfixer before execution.
Usage
1. MD Trajectory Fingerprinting
The description of tool prolif_md.
Compute ProLIF fingerprints for an MD trajectory and return standardized summary metrics.
Args:
topology_path (str): Path to the topology file (e.g., .psf, .pdb, .prmtop).
trajectory_path (str): Path to the trajectory file to analyze.
ligand_selection (str): Selection string identifying ligand atoms.
protein_selection (str): Selection string for protein atoms. Default: 'protein'.
interactions (List[str]|None): Optional interaction types to compute (e.g., Hydrophobic, HBDonor).
count (bool): If True, compute interaction counts instead of fingerprints. Default: False.
vicinity_cutoff (float|None): Optional distance cutoff for vicinity interactions.
params_json (str|None): Optional JSON parameter file path for ProLIF interaction settings.
start (int|None): Optional start frame index.
stop (int|None): Optional stop frame index (exclusive).
step (int|None): Optional frame stride.
residues (List[str]|None): Optional explicit residue list to include.
all_residues (bool): If True, include all residues in analysis. Default: False.
Return:
status (str): 'success' or 'error'.
msg (str): Human-readable summary or error message.
command (str): The executed command label ('md').
output_dir (str|None): Run-specific directory under tool_result/prolif_result.
output_file (str|None): Path to the generated CSV file.
n_frames (int|None): Number of processed frames.
n_interactions (int|None): Number of interaction columns in output.
frequent_interactions (List[dict]|None): High-frequency interactions (>30%) with keys 'interaction' and 'frequency'.
result_summary (dict|None): Full summary dictionary from the wrapper.
How to use tool prolif_md :
response = await client.session.call_tool(
"prolif_md",
arguments={
"topology_path": "relative/path/to/system.prmtop",
"trajectory_path": "relative/path/to/md_prod.nc",
"ligand_selection": "resname LIG",
"protein_selection": "protein",
"interactions": ["Hydrophobic", "HBDonor"],
"start": 0,
"stop": 100,
"step": 2
}
)
result = client.parse_result(response)
key_output = result["output_file"]
Example parameter sets
# 1) Main mode
{
"topology_path": "relative/path/to/system.prmtop",
"trajectory_path": "relative/path/to/md_prod.nc",
"ligand_selection": "resname LIG",
"protein_selection": "protein",
"interactions": ["Hydrophobic", "HBDonor", "HBAcceptor"],
"start": 0,
"stop": 100,
"step": 2
}
# 2) Variant mode
{
"topology_path": "relative/path/to/system.prmtop",
"trajectory_path": "relative/path/to/md_prod.nc",
"ligand_selection": "resname LIG",
"count": True,
"all_residues": True,
"vicinity_cutoff": 4.5,
"params_json": "relative/path/to/prolif_params.json"
}
2. Docking Pose Fingerprinting
The description of tool prolif_docking.
Summarize docking poses with ProLIF and return a CSV of interaction fingerprints plus summary metrics.
Args:
protein_path (str): Path to the receptor protein structure.
ligand_paths (List[str]): List of ligand pose files.
ligand_format (str): Ligand format identifier (e.g., 'sdf', 'mol2', 'pdbqt').
template_smiles (str|None): Optional template SMILES; required when ligand_format is 'pdbqt'.
interactions (List[str]|None): Optional interaction types to compute.
count (bool): If True, compute interaction counts instead of fingerprints. Default: False.
vicinity_cutoff (float|None): Optional distance cutoff for vicinity interactions.
params_json (str|None): Optional JSON parameter file path for ProLIF interaction settings.
Return:
status (str): 'success' or 'error'.
msg (str): Human-readable summary or error message.
command (str): The executed command label ('docking').
output_dir (str|None): Run-specific directory under tool_result/prolif_result.
output_file (str|None): Path to the produced CSV summary file.
n_frames (int|None): Number of processed frames where applicable.
n_interactions (int|None): Number of interaction columns in output.
frequent_interactions (List[dict]|None): High-frequency interactions (>30%) with keys 'interaction' and 'frequency'.
result_summary (dict|None): Full summary dictionary from the wrapper.
How to use tool prolif_docking :
response = await client.session.call_tool(
"prolif_docking",
arguments={
"protein_path": "relative/path/to/receptor.pdb",
"ligand_paths": [
"relative/path/to/pose1.sdf",
"relative/path/to/pose2.sdf"
],
"ligand_format": "sdf",
"interactions": ["Hydrophobic", "HBDonor"]
}
)
result = client.parse_result(response)
key_output = result["output_file"]
Example parameter sets
# 1) Main mode
{
"protein_path": "relative/path/to/receptor.pdb",
"ligand_paths": [
"relative/path/to/docking_poses.sdf"
],
"ligand_format": "sdf"
}
# 2) Variant mode
{
"protein_path": "relative/path/to/receptor.pdb",
"ligand_paths": [
"relative/path/to/pose1.pdbqt",
"relative/path/to/pose2.pdbqt"
],
"ligand_format": "pdbqt",
"template_smiles": "CCO",
"count": True,
"vicinity_cutoff": 4.0
}
3. Single-Structure PDB Fingerprinting
The description of tool prolif_pdb.
Analyze a single complex structure and return ProLIF interaction fingerprints or counts with summary metrics.
Args:
structure_path (str): Path to the complex structure file (commonly PDB).
ligand_selection (str): Selection string identifying ligand atoms.
protein_selection (str): Selection string for protein atoms. Default: 'protein'.
interactions (List[str]|None): Optional interaction types to compute.
count (bool): If True, compute interaction counts instead of fingerprints. Default: False.
vicinity_cutoff (float|None): Optional distance cutoff for vicinity interactions.
params_json (str|None): Optional JSON parameter file path for ProLIF interaction settings.
Return:
status (str): 'success' or 'error'.
msg (str): Human-readable summary or error message.
command (str): The executed command label ('pdb').
output_dir (str|None): Run-specific directory under tool_result/prolif_result.
output_file (str|None): Path to the produced CSV file.
n_frames (int|None): Number of processed frames (typically 1 for static structures).
n_interactions (int|None): Number of interaction columns in output.
frequent_interactions (List[dict]|None): High-frequency interactions (>30%) with keys 'interaction' and 'frequency'.
result_summary (dict|None): Full summary dictionary from the wrapper.
How to use tool prolif_pdb :
response = await client.session.call_tool(
"prolif_pdb",
arguments={
"structure_path": "relative/path/to/complex.pdb",
"ligand_selection": "resname LIG",
"protein_selection": "protein",
"interactions": ["Hydrophobic", "HBAcceptor"]
}
)
result = client.parse_result(response)
key_output = result["output_file"]
Example parameter sets
# 1) Main mode
{
"structure_path": "relative/path/to/complex.pdb",
"ligand_selection": "resname LIG",
"protein_selection": "protein",
"interactions": ["Hydrophobic", "HBDonor"]
}
# 2) Variant mode
{
"structure_path": "relative/path/to/complex.pdb",
"ligand_selection": "resname LIG",
"count": True,
"params_json": "relative/path/to/prolif_override.json"
}
4. Protein-Protein Interface Fingerprinting
The description of tool prolifproteinprotein.
Analyze a protein-protein trajectory and return interaction fingerprints or counts with summary metrics.
Args:
topology_path (str): Path to the system topology file.
trajectory_path (str): Path to the trajectory file.
selection_a (str): Selection string for partner A.
selection_b (str): Selection string for partner B.
interactions (List[str]|None): Optional interaction types to compute.
count (bool): If True, compute interaction counts instead of fingerprints. Default: False.
vicinity_cutoff (float|None): Optional distance cutoff for vicinity interactions.
params_json (str|None): Optional JSON parameter file path for ProLIF interaction settings.
start (int|None): Optional start frame index.
stop (int|None): Optional stop frame index (exclusive).
step (int|None): Optional frame stride.
Return:
status (str): 'success' or 'error'.
msg (str): Human-readable summary or error message.
command (str): The executed command label ('protein-protein').
output_dir (str|None): Run-specific directory under tool_result/prolif_result.
output_file (str|None): Path to the generated CSV file.
n_frames (int|None): Number of processed frames.
n_interactions (int|None): Number of interaction columns in output.
frequent_interactions (List[dict]|None): High-frequency interactions (>30%) with keys 'interaction' and 'frequency'.
result_summary (dict|None): Full summary dictionary from the wrapper.
How to use tool prolifproteinprotein :
response = await client.session.call_tool(
"prolif_protein_protein",
arguments={
"topology_path": "relative/path/to/system.prmtop",
"trajectory_path": "relative/path/to/md.nc",
"selection_a": "segid A",
"selection_b": "segid B",
"start": 0,
"step": 10
}
)
result = client.parse_result(response)
key_output = result["output_file"]
Example parameter sets
# 1) Main mode
{
"topology_path": "relative/path/to/system.prmtop",
"trajectory_path": "relative/path/to/md.nc",
"selection_a": "segid A",
"selection_b": "segid B",
"start": 0,
"step": 10
}
# 2) Variant mode
{
"topology_path": "relative/path/to/system.prmtop",
"trajectory_path": "relative/path/to/md.nc",
"selection_a": "protein and chainid A",
"selection_b": "protein and chainid B",
"count": True,
"vicinity_cutoff": 3.5,
"stop": 200
}
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: InternScience
- Source: InternScience/MolClaw
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.