> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kameleoon.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Herramientas para experimentos

> Herramientas MCP para crear, configurar, ejecutar y consultar experimentos web.

Las herramientas de experimentos cubren el ciclo de vida de los experimentos web. Su asistente puede crear una prueba, escribir el código de cada variación, definir el reparto de tráfico y los objetivos, iniciar la prueba y revisar su salud y sus resultados.

## Herramientas

| Herramienta | Descripción | Prompt de ejemplo |
| - | - | - |
| `experiment_list` | Busque experimentos por nombre o ID, o liste solo los que tienen un estado concreto, como los que están running. Devuelve resúmenes paginados (id, nombre, estado y etiquetas). | "List running experiments on site `d1alzzxd7k`." |
| `experiment_get` | Recupere la configuración completa de un experimento: variaciones, reparto de tráfico, objetivos y targeting. | "Show the configuration for experiment `149640`." |
| `experiment_code_get` | Obtenga el JavaScript, el CSS y el JSON personalizado sin procesar de una variación, además del JavaScript y el CSS comunes del experimento. | "Pull the code for variation 1 of experiment `149640`." |
| `experiment_results_get` | Obtenga los resultados estadísticos de cada objetivo asociado: tasas de conversión por variación, significancia, intervalos de confianza y el ganador. De forma opcional, divida los resultados con `breakdown`, filtrelos con `filters`, `dateFrom` y `dateTo`, y elija `statisticalMethod`, `conversionType` y `referenceVariationId`. | "Summarize results for experiment `149640`." |
| `experiment_create` | Cree un experimento en draft (tipo, URL base, objetivos y código común opcional). Incluye una primera variación y una regla de targeting. | "Create a CLASSIC experiment `Homepage hero` on site `d1alzzxd7k`." |
| `experiment_variation_create` | Añada a un experimento existente una variación con su propio JavaScript, CSS, JSON personalizado o ajustes de redirección. Los experimentos en draft reparten el tráfico por igual. Un experimento running recibe la nueva variación con un 0 %. | "On experiment `149640`, add a variation that makes the `#buy-now` button green." |
| `experiment_variation_update` | Cambie el código, el nombre o la redirección de una variación. Solo cambian los campos que pase, y repetir una llamada con los mismos valores no modifica nada. | "In variation 1 of experiment `149640`, make the `#buy-now` button red." |
| `experiment_update` | Cambie la configuración de un experimento existente: nombre, descripción, URL base, etiquetas, objetivos y objetivo principal, JavaScript y CSS compartidos, script global, recopilación de datos, si el código compartido también se ejecuta en la página original, la corrección por comparaciones múltiples y el método de asignación de tráfico. Úselo para asociar el objetivo que necesita un experimento antes de iniciarlo. Solo cambian los campos que pase. Requiere confirmación cuando el experimento no está en draft. | "On experiment `149640`, set goal `271552` as the main goal." |
| `experiment_traffic_allocation_set` | Defina el reparto de tráfico de la página original y de cada variación. Los experimentos en draft cambian de inmediato. Los experimentos scheduled y paused requieren confirmación, y el nuevo reparto se aplica cuando se inician o se reanudan. Para cambiar el reparto de los experimentos running, deviated y stopped, use la aplicación de Kameleoon. | "On experiment `149640`, split traffic 50/50 between the original and variation 1." |
| `experiment_duplicate` | Clone un experimento en un nuevo draft, con sus variaciones, código, desviaciones y targeting. | "Duplicate experiment `149640`." |
| `experiment_health_check_get` | Ejecute las comprobaciones de la pestaña Health de un experimento: seguimiento de visitas y conversiones por objetivo, sample ratio mismatch y exposición solapada. Devuelve un estado general, con un hallazgo y un siguiente paso para cada comprobación. | "Is experiment `149640` healthy? Are its results reliable?" |
| `experiment_lifecycle_update` | Gestione el ciclo de vida: iniciar, pausar, reanudar, detener o eliminar (detener y eliminar requieren confirmación). Iniciar un experimento requiere un objetivo, variaciones y un reparto de tráfico. Puede pausar experimentos running o scheduled, y detener experimentos running, scheduled o paused. Solo puede eliminar experimentos draft o stopped. | "Start experiment `149640`." |
| `transpose_winning_experiment` | Herramienta de punto de entrada único que obtiene el código de una variación ganadora (o seleccionada manualmente), aplica la lógica de decisión del ganador y devuelve instrucciones para que el agente que la llama vuelva a implementar la variación y la proteja detrás de un nuevo feature flag. Una sola llamada reemplaza el antiguo flujo de trabajo manual de varios pasos basado en prompts. | "Implement the winning variant of experiment `373001` as a feature flag." |

> [!NOTE]
>
> `experiment_create` acepta `MVT` y `SDK_HYBRID` como valores válidos de `type`, pero esta herramienta no puede crear ninguno de los dos. `MVT` siempre falla porque la API exige `mvtVariations` (secciones y variaciones) al crear el experimento, y ninguna herramienta MCP expone ese campo. `SDK_HYBRID` siempre falla con el error "Incorrect Experiments type", independientemente de la carga útil. `AI`, `CLASSIC`, `DEVELOPER` y `PROMPT` se crean correctamente. Para crear un experimento MVT, llame directamente a la Automation API y siga los pasos de [Crear una prueba multivariante](https://docs.kameleoon.com/es/developer-docs/apis/automation-api-rest/tutorials/experiments/creation/create-a-multivariate-experiment.md).

> [!NOTE]
>
> Las herramientas de variación no admiten experimentos stopped, MVT ni de feature flag. Para las variaciones de feature flag, use `feature_flag_variation_create`. No puede cambiar el reparto de tráfico de un experimento running, ni de uno que use un método de asignación bandit, a través del servidor MCP.

## Comprobar la salud del experimento

Pida a su asistente que ejecute las comprobaciones de la pestaña Health antes de actuar según los resultados de una prueba.

* **¿La prueba está en buen estado?** `experiment_health_check_get` ejecuta las comprobaciones de la pestaña Health: seguimiento de visitas y conversiones, sample ratio mismatch y exposición solapada.

## Parámetros

Use los nombres exactos de parámetro que devuelve `tools/list`.

| Herramienta | Parámetros obligatorios | Parámetros opcionales |
| - | - | - |
| `experiment_list` | Ninguno | `siteCode`, `filterQuery`, `status` (uno o más de `active`, `deviated`, `draft`, `paused`, `scheduled`, `stopped`, `used_as_personalization`; los experimentos running son `active` y `deviated`), `page`, `perPage`, `sortField`, `sortOrder` |
| `experiment_get` | `experimentId` | Ninguno |
| `experiment_code_get` | `experimentId`, `variationId` | Ninguno |
| `experiment_results_get` | `experimentId` | `goalIds`, `audienceBasis` (`VISITORS` por defecto, o `VISITS`), `includeRawReport`, `breakdown` (`DAY`, `WEEK`, `MONTH`, `HOUR`, `DEVICE_TYPE`, `BROWSER`, `OS` o `NEW_VISITOR`), `filters` (una lista de cadenas, o una sola cadena separada por `;`, con el formato `DIMENSION=V1,V2` o `DIMENSION!=V1,V2`), `dateFrom` y `dateTo` (`YYYY-MM-DD`), `statisticalMethod` (`FREQUENTIST` por defecto, `SEQUENTIAL`, `BAYESIAN` o `CUPED`), `conversionType` (`CONVERTED` por defecto, o `ALL`), `referenceVariationId` (un ID de variación, o `0` para la original) |
| `experiment_create` | `payload` (`siteCode`, `name`, `type`, `baseURL`) | `payload`: `mainGoalId`, `goals`, `tags`, `description`, `commonJavaScriptCode`, `commonCssCode`, `trafficAllocationMethod`, `collectingDataEnabled`, `multipleTestingCorrection`, `executeCodeForReference` |
| `experiment_variation_create` | `experimentId`, `name` | `jsCode`, `cssCode`, `customJson` (una cadena JSON), `isJsCodeAfterDomReady`, `shadowDom`, `redirection` (`type` obligatorio; `url` para `GLOBAL_REDIRECTION`; `parameters` para `PARAMETER_REDIRECTION`; `includeQueryParameters`, por defecto `false`), `confirm` (obligatorio cuando el experimento no está en draft) |
| `experiment_variation_update` | `variationId` | `experimentId` (la herramienta rechaza la llamada si no coincide con el experimento de la variación), `name`, `jsCode`, `cssCode` (una cadena vacía borra el campo), `customJson` (una cadena JSON), `isJsCodeAfterDomReady`, `shadowDom`, `redirection` (reemplaza los ajustes de redirección existentes; `type` obligatorio), `confirm` (obligatorio cuando el experimento no está en draft) |
| `experiment_update` | `experimentId` | `name`, `description` (un valor vacío mantiene la descripción actual), `baseURL` (una URL absoluta `http` o `https`), `tags` y `goals` (cada uno reemplaza la lista completa), `mainGoalId`, `commonJavaScriptCode`, `commonCssCode`, `globalScript` (una cadena vacía borra el campo), `collectingDataEnabled`, `executeCodeForReference`, `multipleTestingCorrection`, `trafficAllocationMethod` (no mientras el experimento sirve tráfico ni después de que se haya detenido), `confirm` (obligatorio cuando el experimento no está en draft) |
| `experiment_traffic_allocation_set` | `experimentId`, `originPercentage` (de 0 a 100), `variationAllocations` (una entrada por cada variación, cada una con `variationId` y `percentage`; la suma con `originPercentage` no puede superar 100) | `respool` (por defecto `false`), `confirm` (obligatorio para experimentos scheduled y paused) |
| `experiment_duplicate` | `experimentId` | Ninguno |
| `experiment_health_check_get` | `experimentId` (en un experimento de feature flag, el ID del experimento de la regla) | Ninguno |
| `experiment_lifecycle_update` | `experimentId`, `status` | `confirm` (obligatorio para `stopped` y `deleted`), `reason` |
| `transpose_winning_experiment` | `experimentId` | `mode` (`strict_winner_only` por defecto, o `manual_variation_conversion`), `fallbackVariationId` (obligatorio cuando `mode` es `manual_variation_conversion`), `targetFeatureKey` (por defecto `pbx-winning-experiment-<experimentId>`) |

**Valores aceptados:** `experiment_lifecycle_update.status` es `started`, `resumed`, `paused`, `stopped` o `deleted`. El `type` de experimento es `AI`, `CLASSIC`, `DEVELOPER`, `MVT`, `PROMPT` o `SDK_HYBRID`. `trafficAllocationMethod` es `MANUAL` (por defecto), `MULTI_ARMED_BANDIT` o `CONTEXTUAL_BANDIT`. `audienceBasis` es `VISITORS` (por defecto) o `VISITS`.

### Ajustes de resultados

Lea los resultados de un experimento con `experiment_results_get`.

Para `experiment_results_get`, `feature_flag_experiment_results_get` y `transpose_winning_experiment`, el array `goalResults` incluye todos los objetivos asociados al experimento, tanto principales como secundarios. Kameleoon calcula un veredicto del ganador solo para el objetivo principal. Los objetivos secundarios devuelven las mismas cifras estadísticas que las métricas de guardarraíl, sin veredicto.

`experiment_results_get` y `feature_flag_experiment_results_get` aceptan estos ajustes opcionales:

* `breakdown`: divide los resultados. `DAY`, `WEEK` y `MONTH` muestran una tendencia a lo largo del tiempo. `HOUR` muestra una tendencia dentro de una ventana de `dateFrom` y `dateTo` de como máximo 2 días. `DEVICE_TYPE`, `BROWSER`, `OS` y `NEW_VISITOR` devuelven un grupo por cada valor. Los grupos por periodo solo incluyen audiencia, conversiones y tasa de conversión. La mejora y la fiabilidad se mantienen en el resumen de toda la ejecución.
* `filters`: una lista de cadenas, o una cadena con `;` entre filtros. Kameleoon combina los filtros con AND. Cada filtro tiene el formato `DIMENSION=V1,V2` o `DIMENSION!=V1,V2`. Las dimensiones y los valores son `DEVICE_TYPE` (`DESKTOP`, `TABLET`, `PHONE`), `BROWSER` (`CHROME`, `EDGE`, `FIREFOX`, `SAFARI`, `OPERA`, `OTHERS`), `OS` (`WINDOWS`, `MAC_OS`, `I_OS`, `LINUX`, `ANDROID`, `WINDOWS_PHONE`, `OTHERS`) y `NEW_VISITOR` (`NEW`, `RETURNING`). Un desglose por `DEVICE_TYPE` puede mostrar un grupo `OTHERS`, pero no puede filtrar por `DEVICE_TYPE=OTHERS`.
* `dateFrom` y `dateTo`: un periodo concreto, en fechas `YYYY-MM-DD` según la zona horaria de la cuenta. `dateTo` incluye la fecha indicada. Defínalas solo cuando necesite un periodo concreto. Una ventana más estrecha da cifras más ruidosas, así que no dé por ganadora una variación a partir de una ventana corta.
* `statisticalMethod`: `FREQUENTIST` (por defecto), `SEQUENTIAL`, `BAYESIAN` o `CUPED`. Con `BAYESIAN`, `reliabilityRate` pasa a ser la probabilidad de superar la referencia. `CUPED` se aplica solo a las cifras de toda la ejecución, y los grupos de desglose siguen siendo frecuentistas. La herramienta rechaza un método que su plan no incluye.
* `conversionType`: `CONVERTED` (por defecto) cuenta cada visitante que convierte una sola vez. `ALL` cuenta cada conversión, así que la tasa puede superar el 100 %. La mejora y la fiabilidad siguen esta opción: con `ALL` comparan las conversiones por visitante.
* `referenceVariationId`: la variación con la que se comparan las demás. Pase un ID de variación, o `0` para la original. En los feature flags, pase un ID o una clave de variación, o `0` u `off` para la variación off. Por defecto, se usa la referencia guardada en el experimento, o la original si el experimento no tiene ninguna.

La respuesta indica los ajustes aplicados en `appliedOptions` y añade notas donde una cifra necesita contexto. La respuesta omite las cifras que el motor no calculó, por ejemplo por falta de datos o porque la referencia no tiene conversiones, y añade una nota para cada una.

Los resultados se comparan con la referencia guardada en el experimento, como lo hace la pantalla de resultados. Los experimentos que Kameleoon crea a partir de un prompt, y los experimentos de feature flag cuya variación off recibe el 0 % del tráfico, no devuelven mejora ni fiabilidad.

## Tutoriales

* [Crear variaciones con código personalizado](https://docs.kameleoon.com/es/mcp/create-variations-with-code.md): Cree una prueba con varias variaciones, cada una con su propio código.
* [Preparar un experimento draft](https://docs.kameleoon.com/es/mcp/prepare-draft-experiment.md): Defina el objetivo, el reparto de tráfico y el targeting antes de iniciar el experimento.
* [Llevar una variación ganadora a producción](https://docs.kameleoon.com/es/mcp/ship-winning-variation.md): Convierta una variación ganadora en un feature flag protegido.
