CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

tooluniverse-sdk

Build AI scientist systems with the ToolUniverse Python SDK for scientific research. Covers the 3 calling patterns (`tu.run` portable dict API, `tu.tools.X` function API, direct class instantiation), tool loading, batch execution, MCP server integration, and embedding-based tool search. Use for SDK programming, custom tool composition, benchmarking pipelines, and integrating ToolUniverse into research workflows.

Quality

87%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

The canonical home for this skill is tooluniverse-sdk in mims-harvard/ToolUniverse

SKILL.md
Quality
Evals
Security

Quality

Content

78%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A dense, highly executable SDK skill that adds genuine non-obvious knowledge (error-return semantics, caching gotchas, tool-name case sensitivity) rather than generic explanation. Its main weaknesses are the dangling REFERENCE.md link — the only progressive-disclosure pointer — and result validation not being woven into the batch/pipeline workflow examples.

Suggestions

Add the missing REFERENCE.md to the bundle (or remove the link): 'See [REFERENCE.md](REFERENCE.md) for detailed guides' currently points to a file that does not exist, so all promised detailed guides are unreachable.

Integrate validation into the batch workflows: show iterating run_batch results and checking each entry for status == "error" before treating it as data, mirroring the single-call pattern in Error Handling.

Tighten the Error Handling prose: the returned-not-raised semantics are stated three times; one lead sentence plus the code example conveys the same behavior in fewer tokens.

DimensionReasoningScore

Conciseness

The body is lean and code-dominated with no explanations of concepts Claude already knows; every section adds SDK-specific knowledge. However, the Error Handling prose states the returned-not-raised semantics three times in different forms ("A failed call returns its error; it does not raise", "never reach the caller", "Wrapping a call in except ToolValidationError catches nothing and the error is then used as if it were data"), which could be trimmed to one sentence plus the code example.

4 / 5

Actionability

Fully executable, copy-paste-ready guidance throughout: install commands, env vars, a complete Quick Start with real tool names ("tu.tools.UniProt_get_entry_by_accession(accession=\"P05067\")"), batch execution, and a concrete error-check pattern with real field names (status, error_details, next_steps, retriable). It is not a 4 because the examples are complete and cover the common cases (find, execute via both APIs, batch, configure, handle errors).

5 / 5

Workflow Clarity

Clear sequence with an explicit prerequisite ("tu.load_tools() # REQUIRED before any tool call"), a 5-point checklist in Critical Notes, and a full feedback loop in Error Handling (check status == "error", inspect retriable and next_steps, fix by checking required params). It is not a 5 because the batch and pipeline examples never integrate result validation — run_batch results are used without checking each entry for errors, and the error-check pattern is shown only for a single call in a separate section. The batch-operation cap of 3 does not apply since a validation/recovery loop is explicitly present.

4 / 5

Progressive Disclosure

Sections are well organized and the single external reference is clearly signaled ("See [REFERENCE.md](REFERENCE.md) for detailed guides"), but REFERENCE.md does not exist in the bundle — there are no references/, scripts/, or assets/ directories and SKILL.md is the only file, so the sole pointer to detailed material is dangling. It is not a 4 because a broken reference is more than a minor organization gap, and not a 2 because the body itself is well structured and non-monolithic.

3 / 5

Total

16

/

20

Passed

Description

92%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description: third-person voice, concrete capability list, explicit 'Use for...' trigger guidance, and a distinct niche anchored to a specific named SDK. The only minor gap is trigger synonym coverage beyond the SDK's own vocabulary.

DimensionReasoningScore

Specificity

Lists multiple specific concrete actions with comprehensive coverage: "Covers the 3 calling patterns (`tu.run` portable dict API, `tu.tools.X` function API, direct class instantiation), tool loading, batch execution, MCP server integration, and embedding-based tool search". It is not a 4 because the capability list spans the SDK's full surface with no obvious coverage gaps.

5 / 5

Completeness

Explicitly answers both questions: the 'what' is "Build AI scientist systems with the ToolUniverse Python SDK... Covers the 3 calling patterns... batch execution, MCP server integration, and embedding-based tool search" and the 'when' is the explicit trigger clause "Use for SDK programming, custom tool composition, benchmarking pipelines, and integrating ToolUniverse into research workflows". It is not a 4 because the 'when' is already explicit and concrete, not merely implied or generic.

5 / 5

Trigger Term Quality

Good natural keyword coverage: "SDK programming", "custom tool composition", "benchmarking pipelines", "integrating ToolUniverse into research workflows", "MCP server integration" are phrases users of this SDK would naturally say. It is not a 5 because common synonyms and variations (e.g., scientific tool search, bioinformatics tools/APIs, tool calling) are missing; not a 3 because coverage goes well beyond the domain name.

4 / 5

Distinctiveness Conflict Risk

The description is anchored to a named SDK ("ToolUniverse Python SDK", "tu.run portable dict API", "embedding-based tool search"), giving it a clear niche with distinct triggers and minimal conflict risk with other skills. It is not a 4 because the named-tool anchoring makes it far more distinguishable than the 'closely related skills' overlap typical of a 4.

5 / 5

Total

19

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

relative_links

Relative link issues: 1 missing

Warning

Total

15

/

16

Passed

Repository

mims-harvard/ToolUniverse

Path

plugins/tooluniverse/skills/tooluniverse-sdk/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.