propose_dataset_ingestion
Generate review-ready idempotent SQL for ingesting a dataset with its manifest and file map, so a human can validate before applying.
Instructions
Propone el SQL de alta de un dataset real ya organizado con su
dataset.yaml y su mapa files (decisión 46, cierra el ciclo que la
decisión 44 dejó preparado: manifiesto real -> lector real -> SQL).
dataset_dir es una ruta LOCAL en la máquina donde corre este
servidor MCP (la misma que ya aloja la biblioteca de datos, sección
23) -- nunca una ruta remota ni relativa a este proceso.
Solo funciona si el format del manifiesto ya es una de las cuatro
etiquetas de backend/ingestion/datasets/formats.py::SUPPORTED_FORMATS
(nunca unsupported_pending_adapter, que necesita su propio
adaptador nuevo primero, ver docs/protocolo-ingesta-ia.md) y si su
mapa files cubre todos los roles que ese formato necesita.
NUNCA toca la base de datos real ni la conexión con ella: solo
genera y devuelve el SQL de alta (idempotente, ON CONFLICT DO UPDATE, mismo estilo que todos los scripts/register_*.py) para
que una persona lo revise antes de aplicarlo -- ninguna
automatización de este protocolo sustituye esa revisión humana
(decisión 17). study_id/study_name son opcionales pero, si se da
uno, hace falta el otro: sin ellos, el atlas se da de alta sin
enlazar ningún estudio (nunca uno inventado).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| study_id | No | ||
| study_doi | No | ||
| study_name | No | ||
| study_year | No | ||
| dataset_dir | Yes | ||
| study_authors | No | ||
| study_journal | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| sql | Yes | ||
| format | Yes | ||
| dataset_id | Yes | ||
| dataset_dir | Yes | ||
| region_count | Yes | ||
| network_count | Yes | ||
| coordinate_count | Yes | ||
| membership_count | Yes |