Skip to main content
The Open-Source Infrastructure Layer for Biology
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