SE

setup-tooluniverse

Guides users through installing and configuring ToolUniverse as an MCP server or CLI for AI coding assistance.

Install

mkdir -p .claude/skills/setup-tooluniverse && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/3105" && unzip -o skill.zip -d .claude/skills/setup-tooluniverse && rm skill.zip

Installs to .claude/skills/setup-tooluniverse

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Install and configure ToolUniverse for any use case — MCP server (chat-based), CLI (command line with 9 subcommands), or Python SDK (Coding API with 3 calling patterns). Covers uv/uvx setup, MCP configuration for 12+ AI clients (Cursor, Claude Desktop, Windsurf, VS Code, Codex, Gemini CLI, Trae, Cline, etc.), full CLI reference (tu list/grep/find/info/run/test/status/build/serve), Coding API quickstart, agentic tools, code executor, API key walkthrough, skill installation, and upgrading. Use when user asks how to set up ToolUniverse, which access mode to use (MCP vs CLI vs SDK), configuring MCP servers, using the CLI, troubleshooting installation, upgrading, or mentions installing ToolUniverse or setting up scientific tools. Also triggers for "how do I use ToolUniverse", "what's the best way to access tools", "command line", "tu command", "coding API", "tu build".
876 chars✓ has a “when” triggerlonger than Claude Code's old 250-char listing cap (fine on current versions)
Intermediate

Key capabilities

  • Expose 1,200+ scientific tools via 5 core commands
  • Map user queries to specific databases like PubMed or UniProt
  • Generate MCP server configurations for 12+ AI clients
  • Toggle between CLI, Python SDK, and chat-based MCP modes
  • Automate installation across multiple development environments

How it works

Interprets natural language queries to trigger specific tool execution patterns via a centralized MCP gateway.

Inputs & outputs

You give it
Research query or installation environment details
You get back
Configured MCP server instance or executed scientific data summary

When to use setup-tooluniverse

  • Install ToolUniverse
  • Configure MCP server for Claude
  • Set up scientific data tools

About this skill

Setup ToolUniverse

Guide the user step-by-step through setting up ToolUniverse.

Agent Behavior

  • Detect language from user's first message. Respond in their language; keep commands/URLs in English.
  • Go one step at a time. Ask before proceeding.
  • Use AskQuestion for structured choices.
  • Explain briefly in plain language. Celebrate small wins.
  • When something goes wrong, help troubleshoot before moving on.

Internal Notes (do not show)

ToolUniverse has 1200+ tools. The tooluniverse command enables compact mode automatically, exposing only 5 core MCP tools (list_tools, grep_tools, get_tool_info, execute_tool, find_tools) while keeping all tools accessible via execute_tool.

What is ToolUniverse?

Always explain first, in plain language:

ToolUniverse is free, open-source software connecting to 2,000+ scientific databases (PubMed, UniProt, ChEMBL, FAERS, ClinicalTrials.gov, etc.). Instead of visiting each website, you search from one place. Think of it like a universal remote for scientific databases.

Why AI assistants? The AI reads your question, figures out which databases to search, runs queries, and summarizes results. You just ask your question.

Step 1: Choose How to Use It

Present using AskQuestion:

ModeWhat it meansWho it's for
Chat modeAsk questions to an AI assistant. No coding.Most researchers.
Command lineType short commands in Terminal.Quick tests. Terminal-comfortable users.
Python codeWrite scripts for automated pipelines.Programmers.

Options: "I want to ask questions" → Chat mode | "Quick try" → CLI | "I write Python" → SDK | "I don't know" → Recommend Chat mode

If Chat mode, ask which app (AskQuestion): Cursor, Claude Desktop, VS Code/Copilot, Windsurf, Claude Code, Gemini CLI, Codex, Cline/Trae/Antigravity/OpenCode. "I don't have any" → Recommend Claude Desktop.

Step 2: Install uv

Only prerequisite: uv (manages everything else automatically).

Terminal help (if needed): Mac: Cmd+Space → "Terminal" → Enter. Windows: Win key → "PowerShell" → Enter.

curl -LsSf https://astral.sh/uv/install.sh | sh

(This is a safe, standard command that downloads and installs uv, a small package manager. It's widely used by Python developers. Close and reopen your terminal after it finishes.)

Verify: uv --version

CLI Setup

Make sure Step 2 is done, then try:

uvx --from tooluniverse tu status              # How many tools?
uvx --from tooluniverse tu find 'drug safety'  # Search by topic
uvx --from tooluniverse tu info FAERS_count_death_related_by_drug  # See params
uvx --from tooluniverse tu run FAERS_count_death_related_by_drug '{"medicinalproduct": "metformin"}'

First run takes ~30s (downloads package), then instant. Shortcut: uv tool install tooluniverse → then just use tu directly.

All CLI subcommands

CommandWhat it doesExample
tu statusShow tool count and top categoriestu status
tu listList tools (modes: names, categories, basic, by_category, summary, custom)tu list --mode basic --limit 20
tu findSearch by natural language (keyword scoring, no API key needed)tu find 'protein structure analysis'
tu grepText/regex pattern searchtu grep '^UniProt' --mode regex
tu infoShow tool parameters and schematu info PubMed_search_articles
tu runExecute a tooltu run PubMed_search_articles '{"query": "CRISPR"}'
tu testTest a tool with its example inputstu test UniProt_get_entry_by_accession
tu buildGenerate typed Python wrappers for Coding API (also regenerates the internal lazy-load registry in place — unaffected by --output)tu build --output ./my_tools
tu serveStart MCP stdio server (same as uvx tooluniverse)tu serve

Output flags (most commands except build/serve): --json (pretty) or --raw (compact, pipe-friendly).

Continue to Step 3 (API Keys).

SDK Setup

Install uv first (Step 2). Do not use system pip. On a current Mac (Homebrew Python 3.13/3.14) pip install tooluniverse stops with error: externally-managed-environment (PEP 668), and python3 -m venv can fail at ensurepip. uv avoids both because it downloads and manages its own Python.

uv venv --python 3.12          # own Python + virtualenv, ignores system pip
source .venv/bin/activate      # Windows: .venv\Scripts\activate
uv pip install tooluniverse

uv pip install needs an active virtualenv — run uv venv first, or use uv tool install tooluniverse if you only want the tu command.

For detailed patterns, invoke the tooluniverse-sdk skill.

Optional extras: the base install covers API/database tools. Local ML, cheminformatics, and plotting tools need extras — uv pip install 'tooluniverse[ml]', [visualization], [bioinformatics], or [all]. Run tooluniverse-doctor to see which groups you are missing. Note [all] does not include singlecell, smolagents, client, or build; install those separately.

Coding API — 3 calling patterns

Pattern 1: Direct import (typed, with autocomplete):

from tooluniverse.tools import UniProt_get_entry_by_accession
result = UniProt_get_entry_by_accession(accession="P12345")

Pattern 2: Attribute access (no import needed per tool):

from tooluniverse import ToolUniverse
tu = ToolUniverse()
tu.load_tools()
result = tu.tools.UniProt_get_entry_by_accession(accession="P12345")

Pattern 3: JSON-based (dynamic, for pipelines):

result = tu.run({"name": "UniProt_get_entry_by_accession", "arguments": {"accession": "P12345"}})

Generate typed wrappers: tu build (creates importable Python modules with autocomplete).

Agentic Tools & Code Executor

ToolUniverse also includes 23 AI-powered agentic tools (ScientificTextSummarizer, HypothesisGenerator, ExperimentalDesignScorer, peer-review tools, etc.) and 2 code executor tools (python_code_executor, python_script_runner). These are called like any other tool — via tu.run() or execute_tool(). Agentic tools require an LLM API key (e.g., OPENAI_API_KEY).

Continue to Step 3 (API Keys).

MCP Setup (Chat Mode)

Offer the two low-effort paths first. Editing JSON by hand is the fallback, not the recommendation — a mistyped comma is the single most common setup failure. Only walk through the manual path if neither option below fits.

Path A — let an AI agent do it. If the user already has any agent (Claude, Cursor, Copilot, Gemini, Codex...), they can paste this into it:

Read https://aiscientist.tools/setup.md and set up ToolUniverse for me.

The agent handles config, keys, skills, and validation. No terminal, no JSON.

Path B — Claude Code users: one-liner, no config file at all.

claude plugin marketplace add mims-harvard/ToolUniverse
claude plugin install tooluniverse@tooluniverse

Installs MCP server + 115 skills + slash commands in one step. Then see the tooluniverse-claude-code-plugin skill's "Recommended: turn on auto-update" step so future releases apply without manual claude plugin update.

Manual config (fallback)

Make sure Step 2 is done (uv --version works).

Config file help (if user seems unfamiliar): Config files are plain text that store settings — like a preference list for the app. You don't need to understand the format; just paste exactly what's shown below. Most apps have a Settings button that opens the file for you (see table). If the file is empty, paste the entire block. If it already has content, the agent should help merge it.

Default config (same for most clients):

{
  "mcpServers": {
    "tooluniverse": {
      "command": "uvx",
      "args": ["tooluniverse"],
      "env": { "PYTHONIOENCODING": "utf-8" }
    }
  }
}

Paste safely. Copy the block whole — do not retype it. If the file already has an mcpServers block, add only the "tooluniverse": { ... } entry inside it and put a comma after the previous entry. If the file was empty, paste the whole block. Then validate before restarting the app:

python3 -m json.tool < "<path-to-config>" > /dev/null && echo "JSON OK"

A trailing comma after the last entry, or a missing one between entries, is the usual cause of "MCP server won't start".

args["tooluniverse"] vs ["--refresh", "tooluniverse"]: plain is the default and starts fast from uv's cache, but can stay on a cached older release until you run uv cache clean tooluniverse. Adding --refresh checks PyPI for the newest version on every launch — always current, a few seconds slower to start. Use plain unless the user specifically wants auto-updates.

Config file locations:

ClientFileHow to Access
Cursor~/.cursor/mcp.jsonSettings → MCP → Add new global MCP server
Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonSettings → Developer → Edit Config
Claude Code~/.claude.json or .mcp.jsonclaude mcp add or edit directly (or use plugin — see above)
Windsurf~/.codeium/windsurf/mcp_config.jsonMCP hammer icon → Configure
Clinecline_mcp_settings.jsonCline panel → MCP Servers → Configure
Gemini CLI~/.gemini/settings.jsongemini mcp add or edit directly
Trae.trae/mcp.jsonCtrl+U → AI Management → MCP → Configure

Different formats: VS Code uses "servers" key with "type": "stdio". Codex uses TOML. OpenCode uses "mcp" key. See references/mcp-configs.md for these.

Continue to Step 3 (API Keys).

Step 3: API Keys

Many tools work without keys, but some unlock powerful features. **Ask research interests


Content truncated.

When not to use it

  • When the user task does not involve scientific data analysis
  • When working in an air-gapped environment without internet

Prerequisites

Uv package managerAPI keys for scientific databases

Limitations

  • Requires active internet connectivity for database fetching
  • Performance depends on the specific external database response time
  • Complexity may be high for users unfamiliar with MCP concepts

How it compares

Aggregates thousands of heterogeneous scientific databases into a single, unified interface rather than querying each individually.

Compared to similar skills

setup-tooluniverse side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
setup-tooluniverse (this skill)12moCautionIntermediate
mcp-builder1363moReviewAdvanced
copilot-sdk74moReviewIntermediate
openrouter-function-calling527dReviewIntermediate

Try saying

Example prompts that trigger this skill in your AI assistant.

More by mims-harvard

View all by mims-harvard

tooluniverse-drug-research

mims-harvard

Generates comprehensive drug research reports with compound disambiguation, evidence grading, and mandatory completeness sections. Covers identity, chemistry, pharmacology, targets, clinical trials, safety, pharmacogenomics, and ADMET properties. Use when users ask about drugs, medications, therapeutics, or need drug profiling, safety assessment, or clinical development research.

323

tooluniverse-pharmacovigilance

mims-harvard

Analyze drug safety signals from FDA adverse event reports, label warnings, and pharmacogenomic data. Calculates disproportionality measures (PRR, ROR), identifies serious adverse events, assesses pharmacogenomic risk variants. Use when asked about drug safety, adverse events, post-market surveillance, or risk-benefit assessment.

323

tooluniverse-precision-oncology

mims-harvard

Provide actionable treatment recommendations for cancer patients based on molecular profile. Interprets tumor mutations, identifies FDA-approved therapies, finds resistance mechanisms, matches clinical trials. Use when oncologist asks about treatment options for specific mutations (EGFR, KRAS, BRAF, etc.), therapy resistance, or clinical trial eligibility.

321

tooluniverse-expression-data-retrieval

mims-harvard

Retrieves gene expression and omics datasets from ArrayExpress and BioStudies with gene disambiguation, experiment quality assessment, and structured reports. Creates comprehensive dataset profiles with metadata, sample information, and download links. Use when users need expression data, omics datasets, or mention ArrayExpress (E-MTAB, E-GEOD) or BioStudies (S-BSST) accessions.

217

tooluniverse-literature-deep-research

mims-harvard

Conduct comprehensive literature research with target disambiguation, evidence grading, and structured theme extraction. Creates a detailed report with mandatory completeness checklist, biological model synthesis, and testable hypotheses. For biological targets, resolves official IDs (Ensembl/UniProt), synonyms, naming collisions, and gathers expression/pathway context before literature search. Default deliverable is a report file; for single factoid questions, uses a fast verification mode and may include an inline answer. Use when users need thorough literature reviews, target profiles, or to verify specific claims from the literature.

213

tooluniverse-target-research

mims-harvard

Gather comprehensive biological target intelligence from 9 parallel research paths covering protein info, structure, interactions, pathways, expression, variants, drug interactions, and literature. Features collision-aware searches, evidence grading (T1-T4), explicit Open Targets coverage, and mandatory completeness auditing. Use when users ask about drug targets, proteins, genes, or need target validation, druggability assessment, or comprehensive target profiling.

25

You might also like

mcp-builder

anthropics

Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node/TypeScript (MCP SDK).

136215

copilot-sdk

github

Build agentic applications with GitHub Copilot SDK. Use when embedding AI agents in apps, creating custom tools, implementing streaming responses, managing sessions, connecting to MCP servers, or creating custom agents. Triggers on Copilot SDK, GitHub SDK, agentic app, embed Copilot, programmable agent, MCP server, custom agent.

763

openrouter-function-calling

jeremylongshore

Implement function/tool calling with OpenRouter models. Use when building agents or structured outputs. Trigger with phrases like 'openrouter functions', 'openrouter tools', 'openrouter agent', 'function calling'.

539

agentica-server

parcadei

Agentica server + Claude proxy setup - architecture, startup sequence, debugging

25

mcp-developer

Jeffallan

Use when building MCP servers or clients that connect AI systems with external tools and data sources. Invoke for MCP protocol compliance, TypeScript/Python SDKs, resource providers, tool functions.

16

create-mcp-servers

glittercowboy

Create Model Context Protocol (MCP) servers that expose tools, resources, and prompts to Claude. Use when building custom integrations, APIs, data sources, or any server that Claude should interact with via the MCP protocol. Supports both TypeScript and Python implementations.

15

Search skills

Search the agent skills registry