Dose-Response Analysis (ToolUniverse Claude Skill)
A ToolUniverse agent skill that fits the four-parameter logistic (Hill) model to paired concentration and response data and reports potency with an explicit quality verdict.
| Type | Claude Skill (one of ToolUniverse’s pre-built agent skills) |
| Supplier | Zitnik Lab, Harvard Medical School |
| Availability | GA — part of the ToolUniverse skills collection (skills/tooluniverse-dose-response/) |
| Pricing | Free / OSS (Apache-2.0); computation is local to the ToolUniverse server — no external API required |
| Capabilities | Read-only — drives ToolUniverse tool calls; no data writes |
| Verified | works · 2026-08-06 |
| Security | cleared · 2026-08-06 — ToolUniverse Apache-2.0, purely local computation, no external calls |
How to install
This skill calls ToolUniverse tools, so the ToolUniverse MCP server must be installed first (see the ToolUniverse page). Simplest registration:
claude mcp add --transport stdio tooluniverse -- uvx tooluniverse
Then add the skills:
- Claude Code — install the whole skill collection (the skill resolves as
tooluniverse-dose-response):npx skills add mims-harvard/ToolUniverse - Manual / other agents — copy just this skill directory into your skills folder:
git clone https://github.com/mims-harvard/ToolUniverse cp -r ToolUniverse/skills/tooluniverse-dose-response ~/.claude/skills/(replace
~/.claude/skills/with your agent’s skills directory if you are not using Claude Code/Desktop.)
The skill sets disable-model-invocation: true upstream, so invoke it explicitly (e.g. ask Claude to “use the dose-response skill”) rather than relying on automatic dispatch.
What it does
Runs a four-phase curve-fitting workflow over two ToolUniverse tools — DoseResponse_calculate_ic50 for a single curve and DoseResponse_compare_potency for a head-to-head of two compounds:
- Data preparation — put all concentrations on one linear scale (not log), drop zero-concentration points, optionally normalize responses to percent-of-control, and require at least four points spanning both the upper and lower plateaus.
- Curve fitting — fit the 4PL/Hill sigmoidal model, returning IC50 or EC50, Hill slope, Emax, Emin, r², and confidence intervals.
- Parameter interpretation — potency reads off IC50/EC50 (lower is more potent); Hill slopes above 1.5 or below 0.5 are flagged for scrutiny; Emax and Emin carry the efficacy and baseline.
- Quality gatekeeping — curves without a visible plateau are reported as approximate; biphasic or non-monotonic data is rejected from 4PL analysis outright; a potency comparison is only endorsed when both curves reach r² ≥ 0.95 with concordant Hill slopes.
Fit quality below r² = 0.90 triggers manual inspection before any potency number is reported, and IC50 values are always emitted with their concentration units.
Primary use cases: enzyme and cell-viability assay readouts, screening-hit potency ranking, agonist/antagonist pharmacology.
Notes
It is a reasoning layer over ToolUniverse; without the MCP server registered, the tool calls fail. Scope is deliberately narrow — the skill declines image-derived dose-response (that is tooluniverse-image-analysis upstream) and survival or general regression modelling (tooluniverse-statistical-modeling).
Useful downstream of the Drug Synergy skill, which needs single-agent potency values before it can score a combination. For general-purpose curve fitting outside pharmacology, statsmodels and scikit-learn cover the same math without the assay-specific guardrails. ToolUniverse ships ~68 such skills; other workflows are catalogued separately.
Sources
Installed this tool?
Share feedback — install path, OS, errors, workarounds. The form opens with this tool pre-selected and a link back to this page.