{"slug":"alterlab-proteinmpnn","title":"alterlab-proteinmpnn","summary":"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 inve","platform":"Claude","tags":[],"authorName":"LLM Mart","authorSlug":"llm-mart","score":0,"source":"github","price":null,"verified":false,"createdAt":"2026-09-23T18:56:56.245831Z","repo":{"url":"https://github.com/AlterLab-IEU/AlterLab-Academic-Skills","stars":68,"forks":13,"license":"MIT","updatedAt":"2026-09-23T13:42:59Z"},"bodyHtml":"<hr>\n<h2>name: alterlab-proteinmpnn\ndescription: 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.\nlicense: MIT\nallowed-tools: Read Write Edit Bash(python:<em>) Bash(uv:</em>)\ncompatibility: \"Runs <code>protein_mpnn_run.py</code> from <code>dauparas/ProteinMPNN</code> (PyTorch) under <code>uv run python</code>. The model is small — it runs on CPU and does not require a GPU (a GPU only speeds large batches). Network weights ship with the repo (no download/account). Input is a backbone PDB; output is a FASTA of designed sequences with scores.\"\nmetadata:\nskill-author: AlterLab\nversion: \"1.1.0\"\nlast_updated: \"2026-09-23\"</h2>\n<h1>ProteinMPNN (fixed-backbone sequence design)</h1>\n<h2>Overview</h2>\n<p><strong>ProteinMPNN</strong> (Dauparas et al., <em>Science</em> 2022; <code>dauparas/ProteinMPNN</code>) solves the\n<strong>inverse-folding</strong> problem: given a protein <strong>backbone</strong> (a 3D structure with no or a\nplaceholder sequence), it designs amino-acid <strong>sequences predicted to fold to that\nbackbone</strong>. It is fast, robust, runs on CPU, and is the standard \"sequence\" step between\nbackbone generation (<code>alterlab-rfdiffusion</code>) and structure validation\n(<code>alterlab-alphafold</code>).</p>\n<h2>When to Use This Skill</h2>\n<p>Use this skill when the user wants to:</p>\n<ul>\n<li><strong>Inverse-fold</strong> a backbone PDB into one or more candidate sequences.</li>\n<li><strong>Redesign</strong> only selected positions while fixing the rest (partial design).</li>\n<li>Enforce <strong>symmetry</strong> by tying residues/chains so homo-oligomers get identical sequences.</li>\n<li>Bias the amino-acid composition (e.g. avoid cysteines) or use the <strong>soluble</strong> model.</li>\n<li>Produce the sequence step of a <strong>design → fold → score</strong> loop.</li>\n</ul>\n<h3>Does NOT Trigger</h3>\n<table>\n<thead>\n<tr>\n<th>Scenario</th>\n<th>Use instead</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Design a pocket/interface <strong>with a ligand, metal, or nucleic acid</strong> present</td>\n<td><code>alterlab-ligandmpnn</code></td>\n</tr>\n<tr>\n<td><strong>Generate</strong> a new backbone (no starting structure)</td>\n<td><code>alterlab-rfdiffusion</code></td>\n</tr>\n<tr>\n<td>Refold a designed sequence to check it (validation)</td>\n<td><code>alterlab-alphafold</code></td>\n</tr>\n<tr>\n<td>Generative multimodal (sequence+structure+function) design</td>\n<td><code>alterlab-esm</code></td>\n</tr>\n</tbody>\n</table>\n<h2>Core Capabilities</h2>\n<h3>1. Basic inverse folding</h3>\n<pre><code># Parse the PDB(s), then design sequences (dauparas/ProteinMPNN), from the repo\n# root. HS points at the repo's helper_scripts directory.\nHS=./helper_scripts\npython \"$HS\"/parse_multiple_chains.py --input_path=pdbs/ --output_path=parsed.jsonl\npython protein_mpnn_run.py \\\n  --jsonl_path parsed.jsonl --out_folder out/ \\\n  --num_seq_per_target 8 --sampling_temp \"0.1\" --seed 37\n\n# Single structure, no parsing step:\npython protein_mpnn_run.py --pdb_path backbone.pdb --pdb_path_chains A \\\n  --out_folder out/ --num_seq_per_target 8 --sampling_temp \"0.1\"\n</code></pre>\n<p>Lower <code>--sampling_temp</code> (e.g. 0.1) gives conservative, high-confidence designs; higher\ntemperatures increase diversity. Output FASTA headers carry the model <strong>score</strong> (lower =\nbetter) and sequence recovery.</p>\n<h3>2. Fixed positions and chains</h3>\n<p>Supply a fixed-positions spec (JSONL from <code>make_fixed_positions_dict.py</code>, in the repo's\n<code>helper_scripts</code> directory alongside the parser above) to keep catalytic/known residues while\nredesigning the rest, and <code>assign_fixed_chains.py</code> from the same directory to design only some\nchains. Add <code>--use_soluble_model</code> to load the soluble-only weights, and\n<code>--ca_only</code> for CA-only backbones (it switches to the CA model set).</p>\n<h3>3. Symmetry / tied positions</h3>\n<p>Tie positions across chains so a homo-oligomer receives one sequence applied symmetrically —\nessential for symmetric <code>alterlab-rfdiffusion</code> outputs.</p>\n<h3>4. Design → fold → score loop</h3>\n<p>The canonical de-novo pipeline:</p>\n<ol>\n<li><strong>Generate</strong> a backbone with <code>alterlab-rfdiffusion</code>.</li>\n<li><strong>Design</strong> sequences for it here (ProteinMPNN), sampling several per backbone.</li>\n<li><strong>Score</strong> by refolding each with <code>alterlab-alphafold</code> and accepting only self-consistent\ndesigns (returns to the target backbone with high pLDDT, low PAE).</li>\n</ol>\n<h2>Resources</h2>\n<ul>\n<li><code>references/proteinmpnn_usage.md</code> — install/pinning, helper-script inputs (fixed positions,\ntied chains, bias), the soluble model, temperature guidance, and loop integration. Loaded on\ndemand.</li>\n</ul>\n<p>Part of the AlterLab Academic Skills suite.</p>\n","files":[{"path":"evals/evals.json","sizeBytes":3020,"isText":true},{"path":"references/proteinmpnn_usage.md","sizeBytes":3031,"isText":true},{"path":"SKILL.md","sizeBytes":4801,"isText":true}],"reviewScore":null,"reviewSummary":null,"trust":{"provenance":"trusted-source-unreviewed","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow.","bodySource":null},"bodyLocked":false,"purchaseUrl":null,"sourceUrl":null,"report":{"provenance":"trusted-source-unreviewed","screen":{"ran":true,"outcome":"clean","suspicious":0,"notes":0,"hiddenCharacters":false},"virusScan":{"engine":"clamav","status":"clean","scannedAt":"2026-09-23T18:57:42.616891Z","sha256":"932E5CEDEEE0E0235A3E75B8367BA6A54B75C093172F8E68C046F1E5B55C0967","sizeBytes":5018},"review":null,"source":{"repositoryUrl":"https://github.com/AlterLab-IEU/AlterLab-Academic-Skills","path":"skills/bioinformatics/alterlab-proteinmpnn","license":"MIT","commit":"e4836c08a20da195a11f30f203a8cf23ec30aa95","subtreeSha":"3B30B720A22E1F1C5F6FE4BF23AE89DDA2CBD0BB00DC03054278B09BF7510476","lastSyncedAt":"2026-09-23T18:56:52.297238Z"},"reviewedAt":"2026-09-23T18:59:10.402029Z","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow."},"install":[{"target":"skills-cli","command":"npx skills add https://github.com/AlterLab-IEU/AlterLab-Academic-Skills/tree/main/skills/bioinformatics/alterlab-proteinmpnn"},{"target":"claude-code","command":"claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install alterlab-ieu-alterlab-academic-skills@llmmart"},{"target":"git","command":"git clone https://github.com/AlterLab-IEU/AlterLab-Academic-Skills.git"}]}