Workspace
Shows the Proto account you are signed in as and the services connected to it, including Modal and Hugging Face when applicable. Call this first if a tool is unavailable or a connection appears to be misconfigured.
Takes no parameters.
Discover
Lists bioinformatics tools available to you. By default, this shows tools already available in
your workspace. Pass deployed_only=false to see the full catalog, including tools that can be
deployed. Each entry includes its tool_key, category, summary, and compute requirements.
false for the full catalog.Searches tool keys and descriptions by keyword. Results are ranked by relevance and include the
same metadata as list_tools.
false to include deployable tools.Inspect
Returns a tool’s input, configuration, and output schemas, along with whether it is available to you and whether it has an example. Call this before constructing an input: fields are validated strictly, and unknown fields are rejected.
Returns a known-good example input, or null when the tool has no example. Use it as a template
after checking the schema. Pass use_example=true to run_tool to run the example unchanged.
Returns a tool’s provenance: its description, category, citation and DOI, documentation, source code, and links to the underlying method. Use this when reporting results or preparing a citation.
Run
Runs a tool and returns its result. First retrieve the schema and, when available, the example. Calls can take several minutes when a container must start or a model must load.
If a run is still in progress after about 45 seconds, it returns pending with a job_id. The run
continues; use get_run_status to collect its result. If the response never reaches the agent, for
example because the client’s connection timed out first, use list_runs to recover the job_id
rather than starting the run again. Large outputs are returned as stored assets or download links
instead of being placed inline in the conversation.
use_example is true.Deploy and collect
Deploys a tool to your Modal workspace so it can be run. A deployment can take several minutes and incurs build costs on your Modal account, so your agent should ask for approval first. A tool only needs to be deployed once; deploying it again updates the existing deployment.
The call may finish before the build does. Use get_deploy_status to follow its progress rather
than starting another deployment.
Reports the progress of a deployment started through Proto. It is safe to call repeatedly. A
tracked: false response means that no recent deployment is being tracked; use list_tools to
confirm whether the tool is available.
Lists your recent runs, newest first, including runs started through the MCP, the website, or the
SDK. Each entry includes its job_id, tool_key, status, created_at, and completed_at. Use
it to recover the job_id of a run whose result never arrived, then pass that ID to
get_run_status, instead of submitting the run again and paying for the compute twice.
Runs on your own Modal workspace are shown with the status last recorded, which refreshes when the run is collected. Runs started with a Modal token passed in request headers are not recorded and cannot be listed.
pending, running, completed, failed, or cancelled.Collects the result of a run that returned pending. It is safe to call repeatedly while the job
is running. Download links are refreshed each time the completed result is retrieved.
run_tool or list_runs.Fetches a stored output through MCP when a download link cannot be reached. Text is returned as text; other file types are returned as base64. Large assets remain available through their download links rather than being added to the conversation.