Tool Info

Overview

The tool_info tool returns the input schema for a selected dataset and analysis tool combination. Use it to discover supported dimensions, metrics, filters, operators, and required request properties before calling an analysis tool.

Common Use Cases

Use the tool_info tool to answer questions such as:

Use CaseExample
Schema discoveryWhat exact input shape does count require for job_postings?
Metric validationWhich metrics are valid for profiles top?
Tool support checkDoes government_occupations support timeseries?
Contract validationRetrieve the current schema before calling an analysis tool.
Agent guardrailsPrevent invalid metrics, dimensions, or unsupported dataset/tool combinations.
Dynamic UI generationBuild dataset-aware forms or validation rules from JSON Schema.

Supported Datasets

tool_info accepts all validated dataset identifiers for schema lookup.

DatasetSupported
Job PostingYes
ProfileYes

Inputs

The tool accepts the following objects.

InputDescription
datasetOne of job_postings, profiles, or government_occupations.
toolNameOne of count, distribution, estimate, list, top, or timeseries.

tool_info supports analysis tools only. Metadata tools such as glossary and classify are not supported.

Example Request

{
  "dataset": "job_postings",
  "toolName": "count"
}

Outputs

The tool returns schema information for the selected dataset and analysis tool combination.

OutputDescription
messageHuman-readable status message.
result.validInputSchemaJSON Schema for the selected dataset and analysis tool pair.

Unsupported dataset and tool combinations return a structured TOOL_INVALID_COMBINATION error. For additional details, see Errors.

Example Response

{
  "message": "Input schema returned.",
  "result": {
    "validInputSchema": {
      "type": "object",
      "required": ["dataset", "filter", "metrics"],
      "properties": {
        "dataset": {
          "const": "job_postings"
        },
        "filter": {
          "type": "object"
        },
        "metrics": {
          "type": "array"
        }
      }
    }
  }
}


Did this page help you?