Proto is not affiliated with University of Washington. 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
Sequence-specific DNA-binding proteins recognize their target sites through a combination of direct base contacts and indirect shape readout. Predicting the base preference a protein imposes at each position of a bound DNA site is central to engineering transcription factors, characterizing binding specificity, and designing synthetic regulatory elements such as repressors and promoters. NA-MPNN (Kubaney et al., 2025) is a message-passing neural network that represents proteins, DNA, and RNA within a single unified biopolymer graph, framing both RNA sequence design and protein–DNA binding specificity as nucleic-acid inverse-folding problems (recovering likely sequences for a fixed three-dimensional structure). For specificity prediction, the model conditions on a fixed-docked protein–DNA complex and emits per-position nucleotide probabilities over the DNA chains, which this toolkit canonicalizes into a DNA-onlyL x 4 PPM together with the recovered true sequence and chain labels.
Learning Resources
- baker-laboratory/NA-MPNN. Official repository with the training and inference code, installation instructions, and usage examples.
Tools
NA-MPNN Specificity (na-mpnn-specificity)
Predicts the DNA base preference of a bound protein from one or more protein–DNA complex structures. For each input PDB, the tool runs NA-MPNN specificity inference, restricts the output to valid DNA positions, and returns a canonical PPM (L x 4, A,C,G,T order), the recovered true DNA sequence (indices 0..3), per-row masks, and chain labels. Each result is also written to a canonical .npz file whose path is returned in output_npz_path.API Reference
Input: NAMPNNSpecificityInput
Input: NAMPNNSpecificityInput
Config: NAMPNNSpecificityConfig
Config: NAMPNNSpecificityConfig
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: NAMPNNSpecificityOutput
Output: NAMPNNSpecificityOutput
pdb_paths.Applications
This tool is appropriate for scoring and ranking candidate protein–DNA binder designs by their predicted specificity, for comparing the base preference of a designed binder against a target motif inside an optimization loop, and for characterizing the specificity landscape of natural or engineered DNA-binding proteins. The per-position PPM can be compared to a desired motif to drive specificity-based selection.Usage Tips
- The NA-MPNN checkout and checkpoint are provisioned for you. The standalone setup clones a pinned revision of the repository (which ships the specificity checkpoint in-tree) into the managed weights cache, so no repository or checkpoint path is configured. Point
PROTO_NA_MPNN_SPECIFICITY_WEIGHTS_DIRat an existing checkout to reuse it. A run that usesdevice='proto'fails fast because these local resources cannot be staged. predicted_ppmrows are DNA-only and renormalized. Only positions that are both valid and DNA are kept, and each row is renormalized overA,C,G,T, so the returned matrix already excludes protein and masked positions.temperaturecontrols sampling sharpness. Lower values (default0.1) concentrate probability on the most-preferred base; raise it to soften the distribution.output_directoryandkeep_intermediatecontrol artifacts. Leaveoutput_directoryunset to write canonical.npzfiles to a temporary directory, or set it to persist them. Setkeep_intermediate=Trueto retain the raw NA-MPNN output for debugging.
Toolkit Notes
- NA-MPNN runs as an isolated standalone environment that shells out to the upstream NA-MPNN inference CLI; the heavy model dependencies stay out of the main environment.
- The standalone setup clones a pinned NA-MPNN revision (with its in-tree specificity checkpoint) into the managed weights cache. If the clone cannot reach GitHub, the environment setup signals a clean test skip rather than a hard failure.
