Skip to main content
Dunbrack Lab
MSKCC
EMBL-EBI
TBI Vienna
Tatta Bio
Proto
IPD
Google DeepMind EMBL-EBI
UT Southwestern St. Jude
Genomic Intelligence
Google DeepMind
Aureka AI Research
UCSF Autosome.org
Arc Institute
USC
EMBL-EBI
NCBI
ByteDance
Steinegger Lab
NCBI
NCBI
Chai Discovery
RCSB
IPD
Meta AI
Arc Institute
UW
Meta AI Biohub
Biohub
RosettaCommons
Illumina
Profluent
UNR UW UQ UCSD
RIMD
Proto
Microsoft Research
Boltz MIT Jameel Clinic Recursion
Arc Institute
Salesforce Research
Google DeepMind
Google DeepMind
Google DeepMind
OPIG
Google DeepMind
Steinegger Lab
IPD
Rutgers University Columbia University
libnano
NCBI
Scripps Research Forli Lab
IPD
Steinegger Lab Söding Lab
Calico
Meta AI Biohub
SIB EMBL-EBI PIR
Biohub
Biohub
NVIDIA Arc Institute UCSF
PDBe EMBL-EBI wwPDB
Broad Institute The Jackson Laboratory Yale University
EMBL-EBI
Dunbrack Lab
MSKCC
EMBL-EBI
TBI Vienna
Tatta Bio
Proto
IPD
Google DeepMind EMBL-EBI
UT Southwestern St. Jude
Genomic Intelligence
Google DeepMind
Aureka AI Research
UCSF Autosome.org
Arc Institute
USC
EMBL-EBI
NCBI
ByteDance
Steinegger Lab
NCBI
NCBI
Chai Discovery
RCSB
IPD
Meta AI
Arc Institute
UW
Meta AI Biohub
Biohub
RosettaCommons
Illumina
Profluent
UNR UW UQ UCSD
RIMD
Proto
Microsoft Research
Boltz MIT Jameel Clinic Recursion
Arc Institute
Salesforce Research
Google DeepMind
Google DeepMind
Google DeepMind
OPIG
Google DeepMind
Steinegger Lab
IPD
Rutgers University Columbia University
libnano
NCBI
Scripps Research Forli Lab
IPD
Steinegger Lab Söding Lab
Calico
Meta AI Biohub
SIB EMBL-EBI PIR
Biohub
Biohub
NVIDIA Arc Institute UCSF
PDBe EMBL-EBI wwPDB
Broad Institute The Jackson Laboratory Yale University
EMBL-EBI
evo-design/proto-tools
License: MITbioRxivModalArc Institute blog
bash

Proto Tools

A lot of computational biology looks like this: find a tool that does what you need, spend half a day getting it to install, spend another day figuring out how to call it, then reformat the output so the next tool can use it. Every tool has its own opinions about Python versions, CUDA, weight paths, and input formats.Proto Tools implements these tools so they all behave the same way. Each one is a Python function with a Pydantic input and output. Fold a protein with AlphaFold3, sample sequences with ProteinMPNN, search with BLAST; the shape of the call is the same, and the first invocation quietly sets up the environment and weights in isolation.Use it on its own, or as the tools layer of the broader Proto framework.

Key Features

A quick tour of what proto-tools handles for you. Each card opens a deeper guide.

Unified Interface

Consistent Python APIs with standardized Pydantic Input/Config/Output models across all tools

Isolated Environments

Each tool gets its own virtual environment; weights and dependencies are fetched and cached on first use

Device Management

Automatic GPU allocation, LRU eviction, and multi-GPU routing

Parallel Execution

Fan a single tool call out across every visible GPU with ToolPool

Tool Catalog

Every tool we implement, at a glance. Select any to open its page.

Get Started

Installation

Set up the package and optional dependencies

Quickstart

Run your first tool in 5 minutes

Concepts

Understand the tool pattern and execution model