← All tools
Protein Design · Sequence prediction

ProteinMPNN

Protein sequence prediction, to conform with backbone coordinates. Does not take external molecules into account. A useful step after RFDiffusion in a protein design pipeline, and before validation with structure prediction.

A graph neural network designed for protein inverse folding, meaning it predicts the amino acid sequences most likely to fold into a specific 3D protein backbone structure. By interpreting the spatial coordinates and geometric features of a target structure, the model generates sequence candidates. Researchers use ProteinMPNN for applications such as optimizing enzymes, designing novel therapeutics, and improving the stability or solubility of synthetic proteins.

No jobs before this; it will run immediately.

Ready
Choose an example to fill in its settings and input structures.
A label for this run and its results.
A single protein backbone to design or score. Leave chains blank to use every chain. In this form: Upload a PDB or mmCIF, or choose a preset with an included structure. The first model is used for multi-model structures. mmCIF is converted to PDB and requires single-character chain IDs.
Space-separated chain IDs, e.g. A C. Other chains supply fixed sequence and structural context. Blank selects all chains.
Optional sequences for score-only mode. The native sequence is also scored. In this form: Supply one sequence per FASTA record, with designed chains in alphabetical order separated by /. Each chain must match its parsed backbone length.

Model and sampling

Official documentation ↗
48-neighbor models trained with backbone noise of 0.02, 0.10, 0.20 or 0.30 angstroms. CA-only weights are available through v_48_020.
Sequences per temperature in design mode; repeated evaluations in score/probability modes. Must be a multiple of batch size. In this form: This service accepts up to 1,000 samples per target.
Samples processed together. Reduce if GPU memory runs out. Must divide the sample count exactly.
One or more positive temperatures separated by spaces, e.g. 0.1 0.2 0.3. Higher values give more sequence diversity.
Zero chooses a random seed. Set a nonzero seed for reproducible sampling in the same runtime.
Standard deviation in angstroms of Gaussian noise added to backbone coordinates during inference; separate from checkpoint training noise.
Maximum parsed sequence length across all chains. Longer inputs are rejected before running.

Position constraints

Official documentation ↗
Positions whose native amino acids are retained, e.g. {"A": [1, 2, 3], "C": [10]}. Omitted chains are designed in full. In this form: Positions are 1-based indices in each parsed chain, including gaps and insertion-code residues, not PDB residue numbers. Enter the chain dictionary or the upstream dictionary keyed by structure name.
Groups sampled as the same amino acid, e.g. [{"A": [1], "C": [1]}, {"A": [2], "C": [2]}]. In this form: Uses the same 1-based parsed positions. Weighted groups also accept {"A": [[1], [0.5]], "C": [[1], [0.5]]}.

Amino-acid preferences

Official documentation ↗
One-letter amino-acid codes excluded from sampling everywhere, e.g. AC excludes alanine and cysteine. X excludes the unknown residue.
Bias for each amino acid, e.g. {"A": -1.1, "F": 0.7}. Positive values favor an amino acid; negative values discourage it.
Chain-specific exclusions, e.g. {"A": [[[1, 2], "CP"], [[3], "W"]]}. Uses 1-based parsed positions. In this form: Enter a chain dictionary or an upstream dictionary keyed by structure name. Missing chains have no local exclusions.
Chain dictionary of L × 21 numeric bias matrices in alphabet order ACDEFGHIKLMNPQRSTVWYX. L is the parsed chain length. In this form: Upload JSON or provide an object through the API. An upstream dictionary keyed by structure name is also accepted. Missing chains receive zero bias.
Chain dictionaries containing pssm_coef (L), pssm_bias (L × 21 probability distributions), and pssm_log_odds (L × 21). Alphabet: ACDEFGHIKLMNPQRSTVWYX. In this form: Use the output of the official make_pssm_input_dict.py helper, or a chain dictionary. The PSSM presets include converted official inputs.
Global PSSM weight from 0 to 1, multiplied by each position’s pssm_coef. Zero uses ProteinMPNN alone; one with coefficient one uses PSSM alone.
Keep amino acids whose PSSM log odds are greater than this threshold when the log-odds option is enabled.

These local CLI options are not applicable to Bio Web and are omitted from its inputs:

  • out_folder: The service creates a separate output directory for each job and archives the results.
  • path_to_model_weights: The model and soluble/CA-only controls select an installed official checkpoint.
  • jsonl_path: This page accepts one structure per job; folder-based official examples are split into presets per PDB.
  • chain_id_jsonl: pdb_path_chains supplies the designed chains; the other parsed chains are fixed context.
Ready