
FreeBindCraft
Design de novo protein binders for target surfaces using structure-guided sequence generation.
Input
FreeBindCraft webserver overview
FreeBindCraft designs protein binders for a selected target structure. This separate tool uses the independently maintained FreeBindCraft fork without PyRosetta. It uses AlphaFold2 and ProteinMPNN for design, OpenMM relaxation and FASPR side-chain packing, then ranks accepted designs by i_pTM or ipSAE.
ProteinIQ also offers BindCraft, which uses restrained minimization without side-chain repacking. Both hosted tools omit Rosetta/PyRosetta due to licensing. Projects that require Rosetta relaxation, energies, or filtering should contact sales to discuss licensing and requirements. Neither hosted method establishes equivalence to the published Rosetta-inclusive pipeline.
See the BindCraft online guide, including FreeBindCraft alternatives for the workflow, a PD-L1 input exercise, and interpretation.
Pricing
The standard quote reserves 5,400 credits for two hours on an A100 80 GB GPU. The rate is 45 credits per minute; actual billable runtime is settled after the run and unused reserved credits are returned. The exact quote appears before submission. Full diagnostic artifacts do not change the standard compute reservation. Design count, target size, binder length, and iteration settings can change runtime but do not change the standard compute reservation.
Inputs
| Input | Accepted value |
|---|---|
| Target protein | One .pdb or .ent structure, up to 50 MB, or a PDB fetched from RCSB. |
| Target chains | One chain ID or a comma-separated list such as A,B. |
| Hotspot residues | Optional residue numbers, ranges, or chain-qualified selectors such as 56, A15, or A1-10. |
Settings
The tables show defaults for the default design protocol. Choosing another protocol or advanced preset updates the affected controls to that preset's values, including peptide lengths of 8 to 25 residues. Your subsequent edits are used exactly as entered, including false, zero and values that match the default protocol.
Leave quality thresholds blank to use the selected filter preset. Entering a threshold replaces the corresponding native filters. With preset overrides enabled, custom advanced and filter JSON takes precedence over individual controls; protected execution settings cannot be overridden. advanced.json and filters.json record the effective settings.
Core settings
| Parameter | Type | Default | Description |
|---|---|---|---|
design_protocol | enum | default | Default is recommended for miniprotein binders. Beta-sheet promotes beta-sheeted proteins and usually needs more sampling. Peptide uses the source peptide presets and peptide filters. Choices: default, beta_sheet, peptide. |
rank_by | enum | i_pTM | FreeBindCraft ranks accepted designs by i_pTM by default. ipSAE is an optional AlphaFold interface confidence measure. Choices: i_pTM, ipSAE. |
num_designs | integer | 1 | Number of final binder designs to generate. More designs = longer runtime. Range: 1 to 100. |
length_min | integer | 40 | Minimum number of residues in the designed binder. Range: 8 to 100. Peptide default: 8. |
length_max | integer | 80 | Maximum number of residues in the designed binder. Range: 8 to 300. Peptide default: 25. Must be at least the minimum binder length. |
target_chains | string | A | Chain ID(s) from the target PDB to design binders against. Use comma for multiple chains (e.g., A,B). |
hotspot_residues | string | optional | Specific residues, ranges, or whole chains to focus binding. Unchained numbers use the first selected target chain. Leave empty for automatic selection. |
Protocol and model controls
| Parameter | Type | Default | Description |
|---|---|---|---|
prediction_protocol | enum | default | Default performs single-sequence binder prediction. Hard target uses initial guess to improve difficult complex prediction, with possible bias. Choices: default, hardtarget. |
interface_protocol | enum | alphafold2 | AlphaFold2 generates the interface by default. MPNN uses soluble ProteinMPNN to optimize the interface. Choices: alphafold2, mpnn. |
template_protocol | enum | default | Default allows limited target flexibility. Flexible masks template sequence for more backbone and sidechain flexibility. Choices: default, flexible. |
filter_type | enum | auto | Filter preset for design acceptance. Auto uses peptide filters for peptide design and default filters otherwise. Choices: auto, default_filters, relaxed_filters, peptide_filters, peptide_relaxed_filters, no_filters. |
design_algorithm | enum | auto | Select the preset algorithm with auto or explicitly choose an optimization schedule. Choices: auto, 4stage, 3stage, 2stage, greedy, mcmc. |
use_multimer | boolean | true | Use AlphaFold2-multimer for better interface prediction. Recommended for most cases. |
sample_models | boolean | true | Randomly sample AlphaFold2 parameter sets during design, as recommended by FreeBindCraft to reduce overfitting. |
Quality thresholds
| Parameter | Type | Default | Description |
|---|---|---|---|
plddt_threshold | number | preset | Minimum accepted pLDDT shown on the familiar 0-100 scale. FreeBindCraft applies this internally as a normalized 0-1 filter threshold to the Average/1/2 pLDDT checks. Range: 50 to 95. |
ptm_threshold | number | preset | Minimum accepted pTM threshold. FreeBindCraft uses normalized 0-1 values internally and applies this to the Average/1/2 pTM filters. Range: 0.3 to 0.9. |
i_ptm_threshold | number | preset | Minimum accepted interface pTM threshold. FreeBindCraft uses normalized 0-1 values internally and applies this to the Average/1/2 i_pTM filters. Range: 0.3 to 0.9. |
i_pae_threshold | number | preset | Maximum accepted interface pAE threshold for Average/1/2 i_pAE filters. Lower is stricter. Range: 0.1 to 0.8. |
binder_rmsd_threshold | number | preset | Maximum binder-alone RMSD threshold for Average/1-5 Binder_RMSD filters. Lower is stricter. Range: 1 to 8. |
include_unaccepted | boolean | true | With full diagnostic artifacts enabled, also display evaluated designs that did not pass the configured FreeBindCraft filters. These are exploratory candidates, not accepted FreeBindCraft designs. |
Preset overrides
| Parameter | Type | Default | Description |
|---|---|---|---|
preset_options | boolean | false | Override the FreeBindCraft advanced and filter JSON presets directly. |
advanced_preset | enum | default_4stage_multimer | FreeBindCraft advanced JSON preset. Leave preset overrides off to let binder mode choose the matching preset automatically. Choices: default_4stage_multimer, default_4stage_multimer_flexible, default_4stage_multimer_hardtarget, default_4stage_multimer_flexible_hardtarget, default_4stage_multimer_mpnn, default_4stage_multimer_mpnn_flexible, default_4stage_multimer_mpnn_hardtarget, default_4stage_multimer_mpnn_flexible_hardtarget, betasheet_4stage_multimer, betasheet_4stage_multimer_flexible, betasheet_4stage_multimer_hardtarget, betasheet_4stage_multimer_flexible_hardtarget, betasheet_4stage_multimer_mpnn, betasheet_4stage_multimer_mpnn_flexible, betasheet_4stage_multimer_mpnn_hardtarget, betasheet_4stage_multimer_mpnn_flexible_hardtarget, peptide_3stage_multimer, peptide_3stage_multimer_flexible, peptide_3stage_multimer_mpnn, peptide_3stage_multimer_mpnn_flexible. |
filter_preset | enum | default_filters | FreeBindCraft filter JSON preset. Leave preset overrides off to let binder mode choose the matching preset automatically. Choices: default_filters, relaxed_filters, peptide_filters, peptide_relaxed_filters, no_filters. |
custom_advanced_json | string | optional | Custom advanced JSON object; takes precedence over individual controls. Execution paths and protected controls cannot be overridden. |
custom_filters_json | string | optional | Custom filters may use computed FreeBindCraft metrics, including Average_ipSAE and 1_ipSAE through 5_ipSAE. Rosetta energy, packing, and hydrogen-bond values are placeholders and cannot be used as measured filter criteria. |
Runtime controls
| Parameter | Type | Default | Description |
|---|---|---|---|
gpu_tier | enum | a100_80gb | FreeBindCraft runs on A100 80 GB for this deployment. Choices: a100_80gb. |
max_trajectories | integer | 0 | Maximum hallucination trajectories before stopping. Use 0 for default behavior with only the runtime cap. Range: 0 to 10000. |
enable_rejection_check | boolean | true | Stop early if the accepted-design rate stays below the configured acceptance rate after monitoring starts. |
acceptance_rate | number | 0.01 | Minimum fraction of trajectories expected to yield accepted designs once rejection monitoring starts. Range: 0 to 0.5. |
start_monitoring | integer | 600 | Trajectory count before acceptance-rate monitoring can stop the run. Range: 1 to 5000. |
Template options
| Parameter | Type | Default | Description |
|---|---|---|---|
predict_initial_guess | boolean | false | Bias prediction with binder atom positions; use cautiously when redesigns fail validation. |
predict_bigbang | boolean | false | Bias atom initialization for large target/design systems. Useful for larger complexes. |
rm_template_seq_design | boolean | false | Remove target template sequence during binder design. |
rm_template_seq_predict | boolean | false | Remove target template sequence during validation prediction. |
rm_template_sc_design | boolean | false | Remove target sidechains from the design template. |
rm_template_sc_predict | boolean | false | Remove target sidechains from the validation prediction template. |
ProteinMPNN options
| Parameter | Type | Default | Description |
|---|---|---|---|
mpnn_fix_interface | boolean | true | Keep the interface generated by the trajectory fixed during ProteinMPNN redesign. |
num_seqs | integer | 20 | Number of ProteinMPNN sequences sampled per accepted trajectory. Higher values cost more. Range: 1 to 200. |
max_mpnn_sequences | integer | 2 | Maximum passing MPNN redesigns saved for each trajectory. Higher values can produce more outputs and more validation work. Range: 1 to 10. |
sampling_temp | number | 0.1 | ProteinMPNN sampling temperature. Higher values sample more diverse sequences. Range: 0 to 1. |
backbone_noise | number | 0 | Backbone noise used during ProteinMPNN sampling. Range: 0 to 0.05. |
mpnn_weights | enum | soluble | ProteinMPNN weights used by FreeBindCraft. Choices: soluble, original. |
omit_AAs | string | C | Comma-separated amino acids to avoid; cysteine is omitted by default. |
force_reject_AA | boolean | false | Force rejection when a design contains any amino acids listed in omit_AAs. |
Design bias and loss weights
| Parameter | Type | Default | Description |
|---|---|---|---|
weights_helicity | number | -0.3 | Helicity loss weight; negative values favor beta sheets and positive values favor helices. Range: -3 to 1. |
random_helicity | boolean | false | Sample a random helicity weight per trajectory instead of using the fixed value. |
use_i_ptm_loss | boolean | true | Use interface pTM as an optimization loss. |
weights_iptm | number | 0.05 | Weight for the interface pTM optimization loss. Range: 0 to 1. |
use_rg_loss | boolean | true | Use compactness loss for the binder. |
weights_rg | number | 0.3 | Weight for the radius-of-gyration loss. Range: 0 to 2. |
use_termini_distance_loss | boolean | false | Try to minimize distance between the binder N- and C-termini. Useful for grafting. |
weights_termini_loss | number | 0.1 | Weight for the N/C-terminus distance loss. Range: 0 to 2. |
Iterations and recycles
| Parameter | Type | Default | Description |
|---|---|---|---|
soft_iterations | integer | 75 | Iterations that optimize continuous amino-acid preferences. Range: 0 to 500. |
temporary_iterations | integer | 45 | Iterations that optimize softened amino-acid probabilities. Range: 0 to 500. |
hard_iterations | integer | 5 | Iterations using discrete amino-acid choices. Range: 0 to 200. |
greedy_iterations | integer | 15 | Iterations that test sequence mutations to reduce the design loss. Range: 0 to 500. |
greedy_percentage | number | 1 | Percentage of binder positions mutated during a greedy step. Range: 0 to 20. |
num_recycles_design | integer | 1 | AlphaFold recycles during design. Higher values cost more. Range: 1 to 12. |
num_recycles_validation | integer | 3 | AlphaFold recycles during validation. Higher values cost more. Range: 1 to 12. |
optimise_beta | boolean | true | Apply extra optimization when a beta-sheet trajectory is detected. |
optimise_beta_extra_soft | integer | 0 | Additional soft iterations for beta-sheet optimization. Range: 0 to 300. |
optimise_beta_extra_temp | integer | 0 | Additional temporary iterations for beta-sheet optimization. Range: 0 to 300. |
optimise_beta_recycles_design | integer | 3 | AlphaFold recycles during beta-sheet design optimization. Range: 1 to 12. |
optimise_beta_recycles_valid | integer | 3 | AlphaFold recycles during beta-sheet validation. Range: 1 to 12. |
Contact and confidence weights
| Parameter | Type | Default | Description |
|---|---|---|---|
weights_plddt | number | 0.1 | Weight for local confidence in the designed binder. Range: 0 to 2. |
weights_pae_intra | number | 0.4 | Weight for predicted aligned error within the binder. Range: 0 to 2. |
weights_pae_inter | number | 0.1 | Weight for predicted aligned error between target and binder. Range: 0 to 2. |
weights_con_intra | number | 1 | Weight for contacts within the binder. Range: 0 to 5. |
weights_con_inter | number | 1 | Weight for contacts between target and binder. Range: 0 to 5. |
intra_contact_distance | number | 14 | Within-binder contact distance cutoff in angstroms. Range: 4 to 30. |
inter_contact_distance | number | 20 | Target-binder contact distance cutoff in angstroms. Range: 4 to 40. |
intra_contact_number | number | 2 | Desired contacts per residue within the binder. Range: 1 to 8. |
inter_contact_number | number | 2 | Desired contacts per residue between target and binder. Range: 1 to 8. |
Full diagnostic artifacts
| Parameter | Type | Default | Description |
|---|---|---|---|
artifact_options | boolean | false | Return full trajectory animations, plots, rejected PDBs, and optional archive outputs. This can substantially increase the number and size of downloaded files. Leave off for compact accepted-design and CSV diagnostic outputs. |
save_design_animations | boolean | true | Save design animations when full diagnostics are enabled. |
save_design_trajectory_plots | boolean | true | Save trajectory plots when full diagnostics are enabled. |
save_trajectory_pickle | boolean | false | Save trajectory arrays as pickle files; can use substantial storage. |
save_mpnn_fasta | boolean | false | Save ProteinMPNN sequences as FASTA files in full diagnostics. |
zip_animations | boolean | true | Archive animation files when full diagnostics are enabled. |
zip_plots | boolean | true | Archive plot files when full diagnostics are enabled. |
remove_unrelaxed_trajectory | boolean | true | Remove unrelaxed trajectory PDBs after scoring. |
remove_unrelaxed_complex | boolean | true | Remove unrelaxed complex PDBs after scoring. |
remove_binder_monomer | boolean | true | Remove binder-alone PDBs after scoring. |
Outputs
| Output | Meaning |
|---|---|
| Ranked complex PDBs | Accepted binder-target structures in the source ranking order. |
| Design CSV files | final_design_stats.csv, mpnn_design_stats.csv, and trajectory_stats.csv retain the original source columns and values. |
| Rejection record | failure_csv.csv records filter failures. |
| Run files | freebindcraft.log and the resolved settings.json, filters.json, and advanced.json remain downloadable. Plots, animations, FASTA files, and diagnostic structures are included when full diagnostic artifacts are enabled. |
Reading the results
Average_i_pTM is the default ranking metric; Average_ipSAE can be selected instead. pLDDT, pTM, PAE, interface geometry, SASA, and structure files are available when the source computes them. FreeBindCraft uses exposed-area weighting for surface hydrophobicity, including glycine in its hydrophobic residue set. Its binder RMSD uses C-alpha atoms and may truncate unequal residue lists.
The source writes fixed compatibility values for Rosetta energy, packing, and hydrogen-bond fields. These include dG, binder energy, PackStat, hydrogen-bond counts and percentages, and dG/dSASA. ProteinIQ omits those fields from displayed measurements and custom filter controls, but keeps the original CSV files for audit. The source default filters treat those fields as passing; an accepted design has not passed an independent Rosetta energy or hydrogen-bond assessment.
If shape complementarity, SASA, FASPR packing, or OpenMM relaxation falls back to a substitute value or structure, ProteinIQ marks the run failed and keeps its diagnostic record and any previously written accepted structures and sequences. Partial outputs do not mean the run completed successfully. The fork has not established experimental equivalence to PyRosetta-inclusive BindCraft. Treat computational candidates as hypotheses for further evaluation.
Related tools

BindCraft
Design de novo protein binders for target surfaces using structure-guided sequence generation.

EvoPro
Genetic algorithm-based protein binder optimization using AlphaFold2 and ProteinMPNN

PepMLM
Target sequence-conditioned peptide binder design using masked language modeling

BoltzGen
Design protein, peptide, and nanobody binders against protein or small-molecule targets.

mBER
Design VHH nanobody binders using structure-guided modeling.

PepMimic
Peptide binder design through binding interface mimicry with a latent diffusion model

Proteina-Complexa
Generate protein binder candidates with Proteina-Complexa binder design settings.

BoltzMol-1
Small-molecule design against a protein target from purchasable chemical space.

BoltzProt-1
Protein, peptide, nanobody and antibody binder design.

ESMFold2 Binder Design
Design minibinders and antibody scFvs against a protein target.