synth_recommend
Recommends the optimal synthetic control method for your dataset using outcome, time, and unit columns. Provides actionable guidance for causal analysis.
Instructions
Quickly recommend the best SCM method for the given data.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| time | Yes | Time period column. | |
| unit | Yes | Unit identifier column. | |
| detail | No | Payload depth: 'minimal' (~150 tokens) for sub-step calls where only the point estimate is needed; 'standard' (~1K tokens) for diagnostics + coefficient table; 'agent' (~2K tokens, default) adds violations / next_steps / suggested_functions so the LLM can plan its next call without another round-trip. | agent |
| outcome | Yes | Outcome variable column name. | |
| as_handle | No | If true, cache the fitted result on the server and return result_id + result_uri alongside the JSON payload so a subsequent tools/call can chain without re-running. | |
| data_path | Yes | Absolute path or URL to a data file. Supported: .csv / .tsv / .txt (delimited), .parquet / .pq, .feather / .arrow, .xlsx / .xls, .dta (Stata), .json / .jsonl. Schemes: file://, s3://, gs://, https://. | |
| result_id | No | Optional handle to a previously-fitted result (returned by an earlier call when as_handle=true). Tools that operate on a fitted object accept this in place of re-supplying data_path + columns. | |
| data_columns | No | Optional column projection. Parquet/Feather/Stata loaders honour this for fast partial reads. | |
| treated_unit | No | Identifier of the treated unit. | |
| data_sample_n | No | Optional uniform random subsample size (seed=0, deterministic) — useful on huge panels. | |
| treatment_time | No | First treatment period (inclusive). |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||