mims-harvard avatar

Tooluniverse Custom Tool

This extends ToolUniverse's 1000+ built-in tools with your own custom ones for APIs or computations it doesn't already cover. You get three options: JSON configs for simple REST endpoints (no code), Python classes in your workspace for local use, or full plugin packages you can share via pip. The JSON approach is genuinely simple, just endpoint and parameter schema. Python classes give you control over parsing and state but have different signatures depending on whether you're building workspace tools (keyword args) or plugins (single dict arg). Worth noting that tu test validates return schemas automatically but passes empty arrays, so use test examples that return real data to catch issues.

skills.sh installs
290
GitHub stars
1.8K
last updated
Aug 21, 2026

Install

$ npx -y skills add mims-harvard/tooluniverse --skill tooluniverse-custom-tool --agent claude-code

Installs into .claude/skills of the current project.

Files

Adding Custom Tools to ToolUniverse

When to create a custom tool: Create one if you need to access an API that ToolUniverse doesn't cover, or if you need a specialized data transformation that no existing tool provides. Start with the JSON config approach (simplest — no Python needed); escalate to a Python class only if you need custom response parsing or stateful logic.

Three ways to add tools — pick the one that fits your needs:

ApproachWhen to use
JSON configREST API with standard request/response — no coding needed
Python class (workspace)Custom logic for local/private use only
Plugin packageReusable tools you want to share or install via pip

Option A — Workspace tools (local use)

Tools in .tooluniverse/tools/ are auto-discovered at startup. No installation needed.

mkdir -p .tooluniverse/tools

JSON config

Create .tooluniverse/tools/my_tools.json:

Sponsors

Details

Repository
github.com/mims-harvard/tooluniverse
Categories
Backend & APIs, Python
First seen
Jun 3, 2026

More from mims-harvard/tooluniverse

All 68
1gramiojs avatargramiogramiojs/documentationInvoke for ANY Telegram bot code — `gramio`/`@gramio/*` imports, `new Bot()`, `bot.command`/`bot.callbackQuery`/`bot.on`/`bot.updates.on`, scenes/FSM, inline & 286skills.sh installs
2davila7 avatarbioservicesdavila7/claude-code-templatesPrimary Python tool for 40+ bioinformatics services. Preferred for multi-database workflows: UniProt, KEGG, ChEMBL, PubChem, Reactome, QuickGO. Unified API for 282skills.sh installs
3davila7 avatarrailway-templatesdavila7/claude-code-templatesSearch and deploy services from Railway's template marketplace. Use when user wants to add a service from a template, find templates for a specific use case, or280skills.sh installs
4cinience avataralicloud-platform-aliyun-clicinience/alicloud-skillsAlibaba Cloud generic CLI skill for installing, configuring, and using aliyun CLI to call OpenAPI actions across products. Use when users need command-line oper278skills.sh installs
5patricio0312rev avatarinsomnia-collection-generatorpatricio0312rev/skillsGenerates Insomnia collection export files from Express, Next.js, Fastify, or other API routes. Creates organized workspaces with request groups, environments, 274skills.sh installs
6jezweb avatardjango-cloud-sql-postgresjezweb/claude-skillsDeploy Django on Google App Engine Standard with Cloud SQL PostgreSQL. Covers Unix socket connections, Cloud SQL Auth Proxy for local dev, Gunicorn configuratio272skills.sh installs