Dose Response Tools

Configuration File: dose_response_tools.json Tool Type: Local Tools Count: 3

This page contains all tools defined in the dose_response_tools.json configuration file.

Available Tools

DoseResponse_calculate_ic50 (Type: DoseResponseTool)

Determine the half-maximal inhibitory or effective concentration (IC50/EC50) from paired concentr…

DoseResponse_calculate_ic50 tool specification

Tool Information:

  • Name: DoseResponse_calculate_ic50

  • Type: DoseResponseTool

  • Description: Determine the half-maximal inhibitory or effective concentration (IC50/EC50) from paired concentration-response data by fitting the Hill sigmoidal equation. Requires a minimum of 4 data points that span the dynamic response range. Output includes EC50 with 95% confidence interval, Hill exponent n, top plateau Emax, bottom plateau Emin, R2 goodness-of-fit, and log10(EC50) for convenient pIC50 conversion. Suited to potency ranking in compound screens, structure-activity relationship analysis, and cross-assay comparisons.

Parameters:

  • operation (string) (required) Operation type

  • concentrations (array) (required) Drug concentrations (positive values, e.g., in µM or nM)

  • responses (array) (required) Percent inhibition or effect values at each concentration

Example Usage:

query = {
    "name": "DoseResponse_calculate_ic50",
    "arguments": {
        "operation": "example_value",
        "concentrations": ["item1", "item2"],
        "responses": ["item1", "item2"]
    }
}
result = tu.run(query)

DoseResponse_compare_potency (Type: DoseResponseTool)

Quantify relative potency between two compounds by independently fitting Hill sigmoidal curves to…

DoseResponse_compare_potency tool specification

Tool Information:

  • Name: DoseResponse_compare_potency

  • Type: DoseResponseTool

  • Description: Quantify relative potency between two compounds by independently fitting Hill sigmoidal curves to each concentration-response dataset and computing the EC50 fold-shift (compound B EC50 / compound A EC50). Reports EC50, Hill exponent, and plateau Emax per compound, the potency fold-ratio, and which compound is more potent. Applications include lead optimisation, matched-pair structure-activity analysis, and selectivity profiling.

Parameters:

  • operation (string) (required) Operation type

  • conc_a (array) (required) Concentrations for compound A

  • resp_a (array) (required) Responses for compound A

  • conc_b (array) (required) Concentrations for compound B

  • resp_b (array) (required) Responses for compound B

Example Usage:

query = {
    "name": "DoseResponse_compare_potency",
    "arguments": {
        "operation": "example_value",
        "conc_a": ["item1", "item2"],
        "resp_a": ["item1", "item2"],
        "conc_b": ["item1", "item2"],
        "resp_b": ["item1", "item2"]
    }
}
result = tu.run(query)

DoseResponse_fit_curve (Type: DoseResponseTool)

Nonlinear regression of paired concentration-response measurements to the Hill sigmoidal (4PL) mo…

DoseResponse_fit_curve tool specification

Tool Information:

  • Name: DoseResponse_fit_curve

  • Type: DoseResponseTool

  • Description: Nonlinear regression of paired concentration-response measurements to the Hill sigmoidal (4PL) model: f(x) = Emin + (Emax - Emin) / (1 + (EC50/x)^n). Returns the four fitted parameters (baseline Emin, plateau Emax, midpoint EC50, Hill exponent n) with standard errors, 95% CI for EC50, coefficient of determination R2, and predicted response at each measured concentration. Requires at least 4 positive concentration inputs. Useful for characterising pharmacological potency and assessing assay data quality.

Parameters:

  • operation (string) (required) Operation type

  • concentrations (array) (required) Drug concentrations (must be positive, e.g., [0.001, 0.01, 0.1, 1, 10, 100] in µM). At least 4 points required.

  • responses (array) (required) Observed responses at each concentration (e.g., % inhibition [0-100] or viability [0-100]). Same length as concentrations.

Example Usage:

query = {
    "name": "DoseResponse_fit_curve",
    "arguments": {
        "operation": "example_value",
        "concentrations": ["item1", "item2"],
        "responses": ["item1", "item2"]
    }
}
result = tu.run(query)