Alterlab proteinmpnn
Skill AlterLab-IEU/AlterLab-Academic-Skills/skills/bioinformatics/alterlab-proteinmpnn
Design protein sequences for a fixed backbone with ProteinMPNN (Dauparas 2022) — message-passing inverse folding that outputs sequences predicted to fold to a given structure, with fixed positions, tied/symmetric chains, amino-acid bias, and a soluble-model variant. Use when inverse-folding a backbone PDB into sequences, redesigning selected positions, imposing symmetry across chains, or generating the sequence step of a design→fold→score loop. For pocket/interface design WITH a bound ligand, metal, or nucleic acid prefer alterlab-ligandmpnn; to GENERATE a new backbone prefer alterlab-rfdiffusion; to refold and validate a design prefer alterlab-alphafold; for generative multimodal design prefer alterlab-esm. Part of the AlterLab Academic Skills suite.From its SKILL.md
npx -y skills add AlterLab-IEU/AlterLab-Academic-Skills --skill alterlab-proteinmpnnAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- runs commandsInstructs the agent to run 2 commands, including `python parse_multiple_chains.py --input_path=pdbs/ --output_path=parsed.jsonl` and 1 more.
What its file declares
Copied from the file, not written here
The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
4.3 KB, 790 tokens by cl100k_base, as published. Nobody here has run it
ProteinMPNN (fixed-backbone sequence design)
Overview
ProteinMPNN (Dauparas et al., Science 2022; dauparas/ProteinMPNN) solves the
inverse-folding problem: given a protein backbone (a 3D structure with no or a
placeholder sequence), it designs amino-acid sequences predicted to fold to that
backbone. It is fast, robust, runs on CPU, and is the standard "sequence" step between
backbone generation (alterlab-rfdiffusion) and structure validation
(alterlab-alphafold).
When to Use This Skill
Use this skill when the user wants to:
- Inverse-fold a backbone PDB into one or more candidate sequences.
- Redesign only selected positions while fixing the rest (partial design).
- Enforce symmetry by tying residues/chains so homo-oligomers get identical sequences.
- Bias the amino-acid composition (e.g. avoid cysteines) or use the soluble model.
- Produce the sequence step of a design → fold → score loop.
Does NOT Trigger
| Scenario | Use instead |
|---|---|
| Design a pocket/interface with a ligand, metal, or nucleic acid present | alterlab-ligandmpnn |
| Generate a new backbone (no starting structure) | alterlab-rfdiffusion |
| Refold a designed sequence to check it (validation) | alterlab-alphafold |
| Generative multimodal (sequence+structure+function) design | alterlab-esm |
Core Capabilities
1. Basic inverse folding
# Parse the PDB, then design sequences (dauparas/ProteinMPNN CLI — TODO(verify) flags/version).
# The parser lives in the repo's helper_scripts directory; run it by name:
python parse_multiple_chains.py --input_path=pdbs/ --output_path=parsed.jsonl
python protein_mpnn_run.py \
--jsonl_path parsed.jsonl --out_folder out/ \
--num_seq_per_target 8 --sampling_temp "0.1"
Lower --sampling_temp (e.g. 0.1) gives conservative, high-confidence designs; higher
temperatures increase diversity. Output FASTA headers carry the model score (lower =
better) and sequence recovery.
2. Fixed positions and chains
Supply a fixed-positions spec (JSONL from the helper scripts) to keep catalytic/known
residues while redesigning the rest, and a chain spec to design only some chains. Verify the
exact helper-script names against your checkout (TODO(verify)).
3. Symmetry / tied positions
Tie positions across chains so a homo-oligomer receives one sequence applied symmetrically —
essential for symmetric alterlab-rfdiffusion outputs.
4. Design → fold → score loop
The canonical de-novo pipeline:
- Generate a backbone with
alterlab-rfdiffusion. - Design sequences for it here (ProteinMPNN), sampling several per backbone.
- Score by refolding each with
alterlab-alphafoldand accepting only self-consistent designs (returns to the target backbone with high pLDDT, low PAE).
Resources
references/proteinmpnn_usage.md— install/pinning, helper-script inputs (fixed positions, tied chains, bias), the soluble model, temperature guidance, and loop integration. Loaded on demand.
Part of the AlterLab Academic Skills suite.
What ships with it: 2 files
5.1 KB alongside SKILL.md
evals/
- evals.json2.9 KB
references/
- proteinmpnn_usage.md2.2 KB
Gives 0 of the 12 instructions most design frontend skills give in 790 tokens
Counted across 1,179 of the 2,086 authors here whose files we hold, read 2026-09-06
- Commit to a bold aesthetic directionin 31 of 1179, across 24 files
- Prefer component composition over inheritancein 28 of 1179, across 14 files
- Animate only transform and opacity propertiesin 27 of 1179, across 22 files
- Memoize expensive computations with useMemoin 26 of 1179, across 13 files
- Use semantic HTML elementsin 24 of 1179, across 23 files
- Virtualize long lists for performancein 21 of 1179, across 10 files
- Use CSS variables for design tokensin 20 of 1179, across 14 files
- Implement loading, empty, and error statesin 20 of 1179
- Lazy load heavy components with Suspensein 19 of 1179, across 8 files
- Respect prefers-reduced-motion media queriesin 18 of 1179, across 10 files
- Prioritize CSS-only animations for HTMLin 18 of 1179, across 16 files
- Use compound components for related UI elementsin 18 of 1179, across 7 files
Said here and by no other author read
- Parse PDB files into JSONL format
- Run protein_mpnn_run.py for sequence design
- Use lower sampling temperature for high confidence
- Supply fixed positions spec for partial design
- Tie positions across chains for symmetric designs
- Integrate into design fold score loop
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.