Proto is not affiliated with the Dunbrack Lab. This toolkit is open source and builds on the implementation produced by this organization. Product names, logos, and trademarks are the property of their respective owners.
Background
IPSAE (Dunbrack, 2025) is a single program that computes five interface-quality scores for a cofolded protein complex from the structure together with its per-residue pLDDT and pairwise PAE matrix. The primary metric, ipSAE, recomputes an interface pTM-style score from PAE alone while replacing the chain-length-based reference distance with an adaptive reference distance derived from the size of the well-predicted interface. The published benchmark reports that ipSAE separates true and false complexes more efficiently than AlphaFold’s interface pTM, in particular for domain-domain and domain-peptide interactions inside larger constructs that contain disordered or accessory regions. Alongside ipSAE the program computes four additional interface-quality scores that the literature has converged on for cofolded complex assessment. The pDockQ2 score (Zhu et al., 2023) estimates the quality of each interface in a multimer from interface pLDDT and PAE-derived signal. The pDockQ score (Bryant et al., 2022) is an earlier variant that uses interface pLDDT and the logarithm of the number of contacts. The local interaction score (Kim et al., 2024) reports the fraction of interface residues with low mean cross-chain PAE. The interface pTM (iptm_d0chn) reports the original AlphaFold-style interface pTM recomputed from PAE with the chain-length reference distance.
Learning Resources
- DunbrackLab/IPSAE (Dunbrack Lab, Fox Chase Cancer Center). Official repository and the source of the reference scoring script that this toolkit invokes.
Tools
IPSAE Interface Scoring (ipsae-scoring)
Scores a cofolded protein complex by computing ipSAE, pDockQ2, LIS, pDockQ, and interface pTM for a designated binder chain against one or more target chains. The tool takes a Structure with per-residue pLDDT in the B-factor column and the PAE matrix attached at structure.metrics["pae"], runs the IPSAE scoring program, and returns the headline scores together with a full per-chain-pair breakdown.API Reference
Input: IPSAEScoringInput
Input: IPSAEScoringInput
structure.metrics['pae'] as a square list[list[float]].Config: IPSAEScoringConfig
Config: IPSAEScoringConfig
True is coerced to 1 and False to 0.None waits indefinitely.BaseToolOutput.approx_equal), and the seed participates in cache keys. When None, cacheable seed-sensitive tools skip cache until seeded.Output: IPSAEScoringOutput
Output: IPSAEScoringOutput
| Metric | Type | Range | Availability |
|---|---|---|---|
ipsae | float | 0.0 to 1.0 | always |
pdockq2 | float | 0.0 to 1.5 | always |
lis | float | 0.0 to 1.0 | always |
pdockq | float | 0.0 to 1.0 | always |
iptm_d0chn | float | 0.0 to 1.0 | always |
Applications
This tool is appropriate for ranking and filtering cofolded complexes from structure-prediction tools such as AlphaFold 3, Chai-1, Boltz, or Protenix. Representative applications include scoring candidate protein binders from a design pipeline, identifying the most promising poses in a multi-chain prediction ensemble, and any analysis that benefits from multiple complementary interface-quality scores in a single call rather than running several scoring programs in sequence.Usage Tips
- The PAE matrix is required and must be attached at
structure.metrics["pae"]as a squarelist[list[float]]. The dimension should match the total residue count of the structure. The input is rejected when the matrix is missing or not square. - Per-residue pLDDT must be supplied via the B-factor column. Structure predictors in proto-tools return the correct
b_factor_typeautomatically, andStructure.from_file()auto-detects it for AlphaFold DB and ModelArchive files. For manually provided structures from other sources, passb_factor_type=BFactorType.PLDDT(raw 0 to 100) orBFactorType.NORMALIZED_PLDDT(0 to 1) explicitly. The input is rejected whenb_factor_typeis any other value, since pDockQ and pDockQ2 would otherwise be computed incorrectly. - Missing or duplicated chains are rejected. The binder chain must not also appear in
target_chains, and every requested chain must be present in the structure. Single-character chain identifiers are also required because IPSAE reads PDB-format input. Multi-character mmCIF chain labels should be shortened withStructure.to_pdb_with_chain_mapping()before scoring. - The tool implementation does not check that the PAE matrix is aligned with the structure residue by residue. It only confirms the matrix is square and two-dimensional. The caller is responsible for ensuring the PAE rows and columns match the residue order in the structure. A misaligned PAE matrix produces silently meaningless scores rather than an error.
- The top-level scores report the symmetric maximum value for the binder-target interface. The full directional and symmetric breakdown for every chain pair is available on
result.metrics.chain_pair_results. When no symmetric pair matches the binder-target combination, the top-level scores fall back to0.0and a warning is logged. pae_cutoffanddistance_cutoffcontrol the interface definition. Both default to10.0Ã…. Lower values define a tighter interface and reduce the number of residues contributing to each score. Use a tighter cutoff when comparing interfaces of similar overall size or when assessing buried interfaces.- An empty interface returns zeros for every score. When no residues fall within both cutoffs across the binder-target chain pair, every metric is
0.0. Verify the chain identifiers and cutoff values before interpreting an all-zero result as a poor interface.
Toolkit Notes
These apply to every IPSAE tool in this toolkit (ipsae-scoring).
- Outputs are returned as typed metric objects. Each
IPSAEMetricsresult carries the five top-level scores, thechain_pair_resultsbreakdown for every chain pair, and the headlineprimary_metric(ipsae). Results can be exported to JSON through the standard export method.
