setup-scanvi-remote-tool

Deploys and validates the scANVI single-cell annotation model as a ToolUniverse remote MCP tool.

1.7k|254|Updated Mar 3, 2025
One-click install
npx skills add https://github.com/mims-harvard/ToolUniverse --skill setup-scanvi-remote-tool
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: setup-scanvi-remote-tool
Source: https://github.com/mims-harvard/ToolUniverse/tree/main/skills/setup-scanvi-remote-tool
Command: npx skills add https://github.com/mims-harvard/ToolUniverse --skill setup-scanvi-remote-tool

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires fastmcp, pyyaml, tuplatform-connect.

What problem does it solve?

Setting up the scANVI single-cell annotation model as a shareable remote tool involves many error-prone steps: isolated Python environments, GPU configuration, credential handling, loopback MCP endpoints, and relaying through ToolUniverse Connect. This Skill walks you through the entire deployment, validation, and troubleshooting workflow.

Core Features & Use Cases

  • Environment Setup: Creates an isolated Python 3.12 virtual environment, installs scANVI requirements, and runs a standard-library preflight contract check before downloading large dependencies.
  • Local Validation: Starts the Streamable HTTP MCP endpoint on loopback (port 8027) and verifies tool discovery for run_scanvi_annotate with a bounded example call.
  • Secure Sharing: Uses tu remote login with browser device authorization and tu remote share scanvi to relay the tool through ToolUniverse Connect without copying keys.
  • Use Case: A bioinformatics researcher wants to expose their scANVI cell-type annotation model to collaborators via the ToolUniverse Platform. This Skill guides them from a clean repository checkout to a validated, privately shared remote tool with GPU tuning and concurrency guidance.

Quick Start

Ask the agent to set up and validate the scANVI remote tool from the ToolUniverse repository root, starting with the preflight check and ending with a verified run_scanvi_annotate call.

Frequently Asked Questions about setup-scanvi-remote-tool

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up scANVI as a remote tool in ToolUniverse?

Run the preflight script from the repository root, create an isolated Python 3.12 virtual environment, install the scANVI requirements, then start the server with python -m tooluniverse.remote.scanvi.scanvi_tool. Verify discovery of run_scanvi_annotate on the loopback endpoint at port 8027.

How do I share a scANVI remote tool through ToolUniverse Connect?

Run tu remote login once per machine to complete browser device authorization, then run tu remote share scanvi. The command runs preflights, starts the loopback endpoint, validates discovery, and keeps the relay in the foreground without exposing any keys.

Does the scANVI remote tool require a GPU?

A GPU is recommended for training workloads, while CPU is only suitable for tiny tests. The Skill advises starting with one worker and measuring cold start, warm calls, and parallel levels before increasing concurrency.

Why does the scANVI remote server return 401 or 403 errors?

A 401 or 403 occurs when binding to a non-loopback address without a matching TOOLUNIVERSE_API_TOKEN bearer credential. The recommended fix is to bind to loopback and share through the relay instead of exposing the port directly.

What are the limitations of the current scANVI remote tool validation?

Public publication, cross-user isolation, representative accuracy, broad concurrency, and recovery remain untested. Only authenticated private Platform import and owner testing passed, with a 120-second timeout and remote max concurrency of 1.