ToolUniverse: Democratizing AI scientists
Democratizing AI scientists using ToolUniverse
📦 Install Package | 🛠️ Install Skills (Claude Code, Cursor, Codex CLI)
uv pip install tooluniverse
npx skills add mims-harvard/ToolUniverse
We are currently looking for partners. If you’re interested, please reach out to Shanghua Gao.
ToolUniverse is an ecosystem for creating AI scientist systems from any open or closed large language model (LLM). Powered by AI-Tool Interaction Protocol, it standardizes how LLMs identify and call tools, integrating more than 1000 machine learning models, datasets, APIs, and scientific packages for data analysis, knowledge retrieval, and experimental design.
→ Complete Tool List: Available Tools
→ Check our website for direct tool usage: AIScientist.Tools
🤖 Building AI Scientists with ToolUniverse in 5 minutes
Click the image above to watch the ToolUniverse demonstration
(Also in Bilibili)
- Overview: Create AI scientists from any LLM
- Claude Desktop Integration: Native MCP integration with Claude Desktop App
- Claude Code Integration: AI scientist development in Claude Code environment
- Gemini CLI Integration: Command-line scientific research with Google Gemini
- Qwen Code Integration: AI scientist workflows in Qwen Code environment
- GPT Codex CLI Integration: Terminal-based research with OpenAI Codex
- ChatGPT API Integration: Programmatic research with ChatGPT function calling
🔬 What is ToolUniverse?
AI scientists are emerging computational systems that serve as collaborative partners in discovery. However, these systems remain difficult to build because they are bespoke, tied to rigid workflows, and lack shared environments that unify tools, data, and analysts into a common ecosystem.
ToolUniverse addresses this challenge by providing a standardized ecosystem that transforms any AI model into a powerful research scientist. By abstracting capabilities behind a unified interface, ToolUniverse wraps around any AI model (LLM, AI agent, or large reasoning model) and enables users to create and refine entirely custom AI scientists without additional training or finetuning.
Key Features:
- AI-Tool Interaction Protocol: Standardized interface governing how AI scientists issue tool requests and receive results
- Universal AI Model Support: Works with any LLM, AI agent, or large reasoning model (GPT5, Claude, Gemini, Qwen, Deepseek, open models)
- OpenRouter Integration: Access 100+ models from OpenAI, Anthropic, Google, Qwen, and more through a single API
- Easy to Load & Find & Call Tool (WebService, PythonAPI, MCP): Maps natural-language descriptions to tool specifications and executes tools with structured results
- Tool Composition & Scientific Workflows: Chains tools for sequential or parallel execution in self-directed scientific workflows
- Continuous Expansion: New tools can be easily registered locally or remotely without additional configuration
- Multi-Agent Tool Creation & Optimization: Multi-agent powered tool construction and iterative tool optimization
🚀 Quick Start
# 1. Install ToolUniverse
pip install tooluniverse
# 2. Load tooluniverse
from tooluniverse import ToolUniverse
tu = ToolUniverse()
tu.load_tools() # Load 1000+ scientific tools
# Your AI scientist can reason, experiment, and collaborate in discovery using the AI-tool interaction protocol.
# 3. Use Find Tool operation to discover relevant tools
tools = tu.run({
"name": "Tool_Finder_Keyword",
"arguments": {"description": "disease target associations", "limit": 10}
})
# 4. Use Call Tool operation to execute selected tool
result = tu.run({
"name": "OpenTargets_get_associated_targets_by_disease_efoId",
"arguments": {"efoId": "EFO_0000537"} # hypertension
})
→ Complete Quick Start Tutorial: Quick Start Tutorial Getting Started Tutorial
📦 Installation
Installation (uv)
uv pip install tooluniverse
→ Complete Installation Tutorial: Installation Tutorial
🔧 Usage & Integration
ToolUniverse supports multiple integration methods for different use cases:
Python SDK Integration
from tooluniverse import ToolUniverse
# Initialize and load tools
tu = ToolUniverse()
tu.load_tools()
# Find relevant tools
tools = tu.run({
"name": "Tool_Finder_Keyword", # Tool_Finder (Embedding model, GPU required), Tool_Finder_LLM (LLM-based model)
"arguments": {"description": "protein structure prediction", "limit": 10}
})
# Execute tools
result = tu.run({
"name": "UniProt_get_function_by_accession",
"arguments": {"accession": "P05067"}
})
→ Complete Tutorials: Installation Tutorial
MCP Support
# run one command to launch the tooluniverse smcp server
tooluniverse-smcp
Quick Setup for Claude Code:
pip install tooluniverse
claude mcp add --transport stdio tooluniverse -- tooluniverse-smcp-stdio --compact-mode
→ Complete Tutorial: MCP Support
MCPB Support
The Model Context Protocol Bundle (MCPB) wraps ToolUniverse as a standalone executable MCP server. This bundle is designed to work seamlessly with Claude Desktop and other MCPB-aware clients without complex environment setup.
🌐 HTTP API - Remote Access
Deploy ToolUniverse on a separate server and access all 49+ methods remotely with minimal client dependencies!
Server (with full ToolUniverse):
pip install tooluniverse
tooluniverse-http-api --host 0.0.0.0 --port 8080
Client (only needs requests + pydantic):
pip install tooluniverse[client] # Minimal installation
from tooluniverse import ToolUniverseClient
client = ToolUniverseClient("http://your-server:8080")
# Use exactly like local ToolUniverse!
client.load_tools(tool_type=['uniprot', 'ChEMBL', 'opentarget'])
result = client.run_one_function({
"name": "UniProt_get_entry_by_accession",
"arguments": {"accession": "P05067"}
})
Key Features:
- ✅ Auto-updating: New methods work automatically (zero maintenance!)
- ✅ Minimal client: Only
requests+pydanticrequired - ✅ Full API access: All ToolUniverse methods available remotely
- ✅ Stateful server: Maintains loaded tools across requests
→ Complete Guide: HTTP API Documentation
🚀 AI Scientists Projects Powered by ToolUniverse
Building your own project with ToolUniverse? We'd love to feature it here! Submit your project via GitHub Pull Request or contact us.
TxAgent: AI Agent for Therapeutic Reasoning [Project] [Paper] [PiPy] [Github] [HuggingFace]
TxAgent is an AI agent for therapeutic reasoning that leverages ToolUniverse's comprehensive scientific tool ecosystem to solve complex therapeutic reasoning tasks.
Hypercholesterolemia Drug Discovery [Tutorial] [Code]
🤝 Contribution and Community
We are actively looking for core contributors for ToolUniverse! Please join our Slack Channel or reach out to Shanghua Gao/Marinka Zitnik.
Get Involved:
- Report Issues: GitHub Issues
- Join Discussions: Slack Channel
- Contact: Reach out to Shanghua Gao/Marinka Zitnik
- Contribute: See our Contributing Tutorial
Leaders
Contributors
- Shanghua Gao
- Richard Zhu
- Pengwei Sui
- Zhenglun Kong
- Sufian Aldogom
- Yepeng Huang
- Ayush Noori
- Reza Shamji
- Krishna Parvataneni
- Theodoros Tsiligkaridis
- Marinka Zitnik
📚 Documentation
Our comprehensive documentation covers everything from quick start to advanced workflows:
🚀 Getting Started
- Quick Start Tutorial: 5-minute setup and first query
- Installation: Complete installation options
- Getting Started: Step-by-step tutorial
- AI-Tool Protocol: Understanding the interaction protocol
📖 User Guides
- Loading Tools: Complete Tutorial to loading tools
- Tool Discovery: Find tools by keyword, LLM, and embedding search
- Tool Caller: Primary execution engine
- Tool Composition: Chain tools into workflows
- Scientific Workflows: Real-world research scenarios
- MCP Support: Model Context Protocol integration
- Logging: Comprehensive logging configuration
🛠️ Advanced Features
- Hooks System: Intelligent output processing
- Hook Configuration: Configure hooks for different outputs
- File Save Hook: Save tool outputs to files
- Summarization Hook: Summarize tool outputs
- Server Stdio Hooks: Server communication hooks
- Expert Feedback: Human-in-the-loop consultation
- Agentic Tools: AI-powered tool development
- Case Study: End-to-end drug discovery workflow
- Tool Optimization: Optimize tool descriptions for better performance
🔧 Expanding ToolUniverse
- Architecture: System architecture overview
- Local Tool Registration: Create custom tools
- Remote Tool Registration: Integrate external services
- Contributing Tools: Complete contribution guide
- Adding Tools Tutorial: Step-by-step tool addition guide
- MCP Tool Registration: Register tools via MCP
📚 API Reference
- API Directory: Complete module listing
- Core Modules: Main ToolUniverse class and utilities
- Tool Classes: Base tool classes and implementations
- Compose Scripts: Tool composition utilities
- MCP Integration: Model Context Protocol support
→ Browse All Documentation: ToolUniverse Documentation
Citation
@article{gao2025democratizingaiscientistsusing,
title={Democratizing AI scientists using ToolUniverse},
author={Shanghua Gao and Richard Zhu and Pengwei Sui and Zhenglun Kong and Sufian Aldogom and Yepeng Huang and Ayush Noori and Reza Shamji and Krishna Parvataneni and Theodoros Tsiligkaridis and Marinka Zitnik},
year={2025},
eprint={2509.23426},
archivePrefix={arXiv},
primaryClass={cs.AI},
url={https://arxiv.org/abs/2509.23426},
}
@article{gao2025txagent,
title={TxAgent: An AI Agent for Therapeutic Reasoning Across a Universe of Tools},
author={Shanghua Gao and Richard Zhu and Zhenglun Kong and Ayush Noori and Xiaorui Su and Curtis Ginder and Theodoros Tsiligkaridis and Marinka Zitnik},
year={2025},
eprint={2503.10970},
archivePrefix={arXiv},
primaryClass={cs.AI},
url={https://arxiv.org/abs/2503.10970},
}
Democratizing AI agents for science with ToolUniverse.