Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Especificación de las herramientas MCP
La solución Distributed Load Testing presenta un conjunto de herramientas de MCP que permiten a los agentes de IA interactuar con los escenarios y los resultados de las pruebas. Estas herramientas proporcionan capacidades abstractas de alto nivel que se alinean con la forma en que los agentes de IA procesan la información, lo que les permite centrarse en el análisis y la información en lugar de en contratos de API detallados.
El servidor MCP admite dos modos de acceso, controlados por el parámetro de MCPServerAccessMode AWS CloudFormation :
-
ReadOnly(predeterminado): solo se registran las herramientas de lectura. Los agentes ven 7 herramientas a través de
tools/list. No hay operaciones de mutación disponibles. -
ReadWrite— Tanto las herramientas de lectura como las de escritura están registradas. Los agentes ven todas las herramientas (lectura
tools/listy escritura) y pueden crear pruebas, activar ejecuciones, gestionar programaciones y cargar scripts.
El modo de acceso se establece en el momento de la implementación. Para cambiar el modo de acceso después de la implementación inicial, actualice la CloudFormation pila con el nuevo valor del MCPServerAccessMode parámetro. El cambio surtirá efecto cuando finalice la actualización de la pila; no se requieren otros pasos manuales.
En el ReadOnly modo, las herramientas de escritura no están registradas en absoluto, por lo que los agentes no las ven nuncatools/list. La política de administración de identidades y accesos (IAM) de AWS sobre la función AWS Lambda del servidor MCP tiene el alcance correspondiente. ReadOnly solo permite las solicitudes GET a la API. ReadWrite permite GET, POST, PUT y DELETE.
Herramientas de lectura
list_scenarios
Description (Descripción)
La list_scenarios herramienta recupera una lista de todos los escenarios de prueba disponibles con metadatos básicos.
Punto de conexión
GET /scenarios
Parameters
Ninguno
Respuesta
| Name | Description (Descripción) |
|---|---|
|
|
Identificador único para el escenario de prueba |
|
|
Nombre del escenario de prueba |
|
|
Estado actual del escenario de prueba |
|
|
Cuándo se creó la prueba o se ejecutó por última vez |
|
|
Descripción del escenario de prueba |
get_scenario_details
Description (Descripción)
La get_scenario_details herramienta recupera la configuración de prueba y la ejecución de prueba más reciente para un único escenario de prueba.
La respuesta informa sobre el modo de configuración del tráfico del escenario. Un nativeRunMode objeto indica el modo nativo y su ausencia indica el modo estándar. En un escenario nativo concurrencyrampUp, los holdFor campos y y no reflejan la carga que generó la ejecución. En su lugar, la carga proviene del script. Para obtener más información, consulte Modos de configuración del tráfico.
Punto de conexión
GET /scenarios/<test_id>?history=false&results=false
Parámetro de solicitud
-
test_id -
-
El identificador único para el escenario de prueba
Tipo: cadena
Obligatorio: sí
-
Respuesta
| Name | Description (Descripción) |
|---|---|
|
|
Configuración de tareas para cada región |
|
|
Definición y parámetros de la prueba |
|
|
Estado actual de la prueba |
|
|
Marca de tiempo de inicio de la prueba |
|
|
Marca de tiempo de finalización de la prueba (si se ha completado) |
list_test_runs
Description (Descripción)
La list_test_runs herramienta recupera una lista de las ejecuciones de prueba para un escenario de prueba específico, ordenadas de la más reciente a la más antigua. Devuelve un máximo de 30 resultados. Solo se start_timestamp puede proporcionar uno de limit o, no ambos.
Punto de conexión
GET /scenarios/<testid>/testruns/?limit=<limit>
o
GET /scenarios/<testid>/testruns/?start_timestamp=<start_timestamp>
Parámetros de solicitud
-
test_id -
-
El identificador único para el escenario de prueba
Tipo: cadena
Obligatorio: sí
-
-
limit -
-
Número máximo de ejecuciones de prueba que se devolverán. No se puede usar con
start_timestamp.Tipo: entero
Predeterminado: 20
Máximo: 30
Obligatorio: no
-
-
start_timestamp -
-
Devuelve todas las ejecuciones de prueba que se remontan a esta marca de tiempo. No se puede usar con
limit.Tipo: cadena (formato de fecha y hora ISO 8601, por ejemplo)
2024-01-15T14:30:00.000ZObligatorio: no
-
Respuesta
| Name | Description (Descripción) |
|---|---|
|
|
Conjunto de resúmenes de las pruebas con métricas de rendimiento y percentiles para cada ejecución |
get_test_run
Description (Descripción)
La get_test_run herramienta recupera los resultados detallados de una sola ejecución de prueba con desgloses regionales y de punto final.
Punto de conexión
GET /scenarios/<testid>/testruns/<testrunid>
Parámetros de solicitud
-
test_id -
-
El identificador único para el escenario de prueba
Tipo: cadena
Obligatorio: sí
-
-
test_run_id -
-
El identificador único para la ejecución de prueba específica
Tipo: cadena
Obligatorio: sí
-
Respuesta
| Name | Description (Descripción) |
|---|---|
|
|
Datos completos de la ejecución de la prueba, incluidos el desglose de los resultados regionales, las métricas específicas de cada punto final, los percentiles de rendimiento (p50, p90, p95, p99), los recuentos de éxitos y errores, los tiempos de respuesta y la latencia, y la configuración de la prueba utilizada para la ejecución |
get_latest_test_run
Description (Descripción)
La get_latest_test_run herramienta recupera la ejecución de prueba más reciente para un escenario de prueba específico.
Punto de conexión
GET /scenarios/<testid>/testruns/?limit=1
nota
Los resultados se ordenan por tiempo mediante un índice secundario global (GSI), de modo que se obtiene la prueba más reciente.
Parámetro de solicitud
-
test_id -
-
El identificador único para el escenario de prueba
Tipo: cadena
Obligatorio: sí
-
Respuesta
| Name | Description (Descripción) |
|---|---|
|
|
Los datos más recientes de la ejecución de la prueba con el mismo formato que |
get_baseline_test_run
Description (Descripción)
La get_baseline_test_run herramienta recupera la ejecución de la prueba de referencia para un escenario de prueba específico. La línea base se utiliza para comparar el rendimiento.
Punto de conexión
GET /scenarios/<test_id>/baseline
Parámetro de solicitud
-
test_id -
-
El identificador único para el escenario de prueba
Tipo: cadena
Obligatorio: sí
-
Respuesta
| Name | Description (Descripción) |
|---|---|
|
|
Los datos de referencia de la ejecución de la prueba con fines comparativos, incluidas todas las métricas y la configuración de la ejecución de referencia designada |
get_test_run_artifacts
Description (Descripción)
La get_test_run_artifacts herramienta recupera la información del bucket de Amazon S3 para acceder a los artefactos de prueba, incluidos los registros, los archivos de errores y los resultados.
Punto de conexión
GET /scenarios/<testid>/testruns/<testrunid>
Parámetros de solicitud
-
test_id -
-
El identificador único para el escenario de prueba
Tipo: cadena
Obligatorio: sí
-
-
test_run_id -
-
El identificador único para la ejecución de prueba específica
Tipo: cadena
Obligatorio: sí
-
Respuesta
| Name | Description (Descripción) |
|---|---|
|
|
Nombre del bucket de S3 donde se almacenan los artefactos |
|
|
Prefijo de ruta para el almacenamiento actual de artefactos (versión 4.0+) |
|
|
Prefijo de ruta para el almacenamiento de artefactos antiguos (versión anterior a la 4.0) |
Herramientas de escritura
Las herramientas de escritura solo están disponibles cuando MCPServerAccessMode está configurada enReadWrite. Permiten a los agentes crear, modificar y ejecutar escenarios de prueba.
create_test
Description (Descripción)
La create_test herramienta crea un nuevo escenario de prueba de carga sin ejecutarlo. La prueba se guarda y se puede ejecutar más adelante constart_run. Para las pruebas basadas en scripts (jmeter, k6, locust), llame upload_test_script primero y apruebe el resultado. test_id
Parameters
-
test_id -
-
El identificador único del escenario de prueba. Omita para las pruebas HTTP simples (el sistema genera una). Obligatorio para las pruebas basadas en scripts: utilice el
test_idvalor devuelto por.upload_test_scriptTipo: cadena
Obligatorio: No (obligatorio para las pruebas basadas en guiones)
-
-
test_name -
-
Human-readable nombre del escenario de prueba
Tipo: cadena
Obligatorio: sí
-
-
test_description -
-
Descripción de lo que valida esta prueba
Tipo: cadena
Obligatorio: sí
-
-
test_type -
-
Tipo de prueba.
simplepara las pruebas de punto final HTTP configuradas en línea.jmeterk6, olocustpara pruebas basadas en scripts que hagan referencia a un archivo de script cargado.Tipo: cadena
Obligatorio: sí
-
-
test_task_configs -
-
Configuración de tareas regionales. Cada entrada especifica una región, el número de tareas de AWS Fargate y los usuarios virtuales simultáneos por tarea. Total de usuarios simultáneos para una región = ×.
task_countconcurrencyTipo: Matriz de objetos (cada uno con
region,task_count,concurrency)Obligatorio: sí
-
-
test_scenario -
-
Escenario de ejecución de la prueba que define el perfil de carga y los puntos finales de destino. Contiene
execution(aumento, espera, nombre del escenario) yscenarios(definiciones de escenarios con nombre, con unarequestsmatriz para las pruebas simples o unascriptcadena para las pruebas basadas en scripts).Tipo: objeto
Obligatorio: sí
-
-
show_live -
-
Si se debe habilitar la supervisión en vivo durante la ejecución de la prueba.
Tipo: Booleano
Valor predeterminado:
falseObligatorio: no
-
-
tags -
-
Etiquetas para organizar los escenarios de prueba. Máximo 5 etiquetas.
Tipo: matriz de cadenas
Obligatorio: no
-
-
native_run_mode -
-
Objeto que selecciona el modo de configuración del tráfico. Omítelo para el modo Estándar, en el que la solución controla la carga. Inclúyelo para el modo nativo, en el que el script cargado controla la carga. Para obtener más información, consulta los modos de configuración del tráfico.
Tipo: objeto
Obligatorio: no
-
El modo nativo difiere del modo estándar de la siguiente manera:
-
El objeto requiere un campo
max_test_duration_seconds, con un máximo de 24 horas. -
Solo las pruebas basadas en scripts (
jmeter,k6, olocust) aceptan el modo nativo. -
Las pruebas simples de HTTP Endpoint siempre se ejecutan en modo estándar.
-
test_task_configssigue siendo obligatoria y cada entrada sigue siendo necesariaconcurrency. -
Una solicitud que se establece
concurrencyconnative_run_modedevuelve el éxito. -
La carga que genera la prueba es la carga que declara el script.
-
La carga total por región es la carga de su script multiplicada por
task_count.
Respuesta
| Name | Description (Descripción) |
|---|---|
|
|
El ID único de la prueba creada |
|
|
Nombre de la prueba |
|
|
Estado de la prueba (por ejemplo, |
update_test
Description (Descripción)
La update_test herramienta actualiza la configuración de un escenario de prueba existente. Se trata de un reemplazo completo: se debe proporcionar toda la configuración de prueba, no solo los campos modificados. La prueba no debe estar ejecutándose actualmente.
Parameters
Igual quecreate_test, excepto test_id que es obligatorio y debe hacer referencia a una prueba existente.
Respuesta
| Name | Description (Descripción) |
|---|---|
|
|
El identificador único de la prueba actualizada |
|
|
Nombre de la prueba |
|
|
Estado de la prueba |
delete_test
Description (Descripción)
La delete_test herramienta elimina permanentemente un escenario de prueba y todos los datos asociados, incluidos el historial de ejecuciones de pruebas, los cronogramas y los paneles de Amazon. CloudWatch Esta acción no se puede deshacer. La prueba no debe estar ejecutándose actualmente.
Parameters
-
test_id -
-
El identificador único del escenario de prueba
Tipo: cadena
Obligatorio: sí
-
Respuesta
| Name | Description (Descripción) |
|---|---|
|
|
Confirmación de la eliminación |
start_run
Description (Descripción)
La start_run herramienta inicia la ejecución de un escenario de prueba. El servidor MCP recupera la configuración almacenada de la prueba y desencadena la ejecución. Regresa inmediatamente con el estado. queued get_latest_test_runUtilícelo para realizar una encuesta para completarla.
Parameters
-
test_id -
-
El identificador único del escenario de prueba
Tipo: cadena
Obligatorio: sí
-
Respuesta
| Name | Description (Descripción) |
|---|---|
|
|
El identificador único de la prueba |
|
|
Estado de la prueba (por ejemplo, |
stop_run
Description (Descripción)
La stop_run herramienta detiene una prueba que se esté ejecutando actualmente. Envía una señal de cancelación a todas las tareas de Fargate en ejecución. El estado de la prueba pasa a. cancelled Los resultados parciales están disponibles enget_latest_test_run.
Parameters
-
test_id -
-
El identificador único del escenario de prueba
Tipo: cadena
Obligatorio: sí
-
Respuesta
| Name | Description (Descripción) |
|---|---|
|
|
Confirmación de la cancelación |
create_simple_schedule
Description (Descripción)
La create_simple_schedule herramienta crea una prueba programada para una sola vez que se ejecuta automáticamente en una fecha y hora específicas. Requiere todos los campos de configuración de prueba estándar, además de los campos de programación.
Parameters
Todos create_test los parámetros (con las mismas reglas test_id opcionales), además de:
-
schedule_date -
-
Fecha de la ejecución programada. Debe ser en el futuro.
Tipo: Cadena (formato:
YYYY-MM-DD)Obligatorio: sí
-
-
schedule_time -
-
Hora de la ejecución programada.
Tipo: cadena (formato:
HH:MM24 horas)Obligatorio: sí
-
-
schedule_timezone -
-
Zona horaria de la IANA para la interpretación de los horarios (por ejemplo,
America/New_York).UTCTipo: cadena
Valor predeterminado:
UTCObligatorio: no
-
Respuesta
| Name | Description (Descripción) |
|---|---|
|
|
El identificador único de la prueba |
|
|
Estado de la prueba (por ejemplo, |
|
|
Próxima hora de ejecución programada |
create_cron_schedule
Description (Descripción)
La create_cron_schedule herramienta crea una prueba programada recurrente que se ejecuta automáticamente de acuerdo con una expresión cron. Requiere todos los campos de configuración de pruebas estándar, además de los campos de programación cron.
Parameters
Todos create_test los parámetros (con las mismas reglas test_id opcionales), además de:
-
cron_value -
-
Expresión de cron para una programación recurrente. Formato estándar de 5 campos (por ejemplo,
0 9 * * *para todos los días a las 9:00 a.m.).Tipo: cadena
Obligatorio: sí
-
-
recurrence -
-
Human-readable etiqueta de recurrencia (por ejemplo
daily,weekly).Tipo: cadena
Obligatorio: sí
-
-
cron_expiry_date -
-
Fecha en la que deja de ejecutarse el programa periódico.
Tipo: Cadena (formato:
YYYY-MM-DD)Obligatorio: no
-
-
schedule_timezone -
-
Zona horaria de la IANA para la interpretación de los horarios.
Tipo: cadena
Valor predeterminado:
UTCObligatorio: no
-
Respuesta
| Name | Description (Descripción) |
|---|---|
|
|
El identificador único de la prueba |
|
|
Estado de la prueba (por ejemplo, |
|
|
Próxima hora de ejecución programada |
update_simple_schedule
Description (Descripción)
La update_simple_schedule herramienta actualiza la configuración del cronograma para una prueba programada única existente. Sustitución completa de la configuración de la prueba, incluidos los campos de programación. La prueba debe estar en scheduled estado.
Parameters
Igual quecreate_simple_schedule, excepto test_id que es obligatorio y debe hacer referencia a una prueba programada existente.
Respuesta
Igual que create_simple_schedule.
update_cron_schedule
Description (Descripción)
La update_cron_schedule herramienta actualiza la configuración del cronograma para una prueba programada recurrente existente. Sustitución completa de la configuración de la prueba, incluidos los campos del cronograma cron. La prueba debe estar en scheduled estado.
Parameters
Igual quecreate_cron_schedule, excepto test_id que es obligatorio y debe hacer referencia a una prueba programada existente.
Respuesta
Igual que create_cron_schedule.
upload_test_script
Description (Descripción)
La upload_test_script herramienta carga un archivo de script (JMeter.jmx, k6, Locust .py o) necesario para las .js pruebas basadas en scripts. .zip Se debe llamar antes o para las pruebas basadas en scripts. create_test update_test Devuelve un signo test_id y script_filename para usarlo en llamadas a herramientas posteriores.
Parameters
-
test_id -
-
El identificador único del escenario de prueba. Omitir para las pruebas nuevas (el sistema genera una). Permita que las pruebas existentes se carguen en la ubicación correcta.
Tipo: cadena
Requerido: no
-
-
test_type -
-
Tipo de prueba:
jmeter,k6, olocust.Tipo: cadena
Obligatorio: sí
-
-
file_extension -
-
Extensión de archivo:
jmx,js,py, ozip.Tipo: cadena
Obligatorio: sí
-
-
file_content -
-
Base64-encoded contenido del archivo.
Tipo: cadena
Obligatorio: sí
-
Respuesta
| Name | Description (Descripción) |
|---|---|
|
|
El identificador de la prueba (generado o proporcionado) |
|
|
Nombre de archivo en S3 (formato: |
Guías de flujo de
Las guías de flujo de trabajo son recetas de varios pasos que ayudan a los agentes a encadenar varias herramientas para realizar operaciones comunes. La get_workflow_guides herramienta proporciona una guía estructurada paso a paso para cada flujo de trabajo.
get_workflow_guides
Description (Descripción)
La get_workflow_guides herramienta muestra instrucciones de flujo de trabajo paso a paso para las operaciones comunes de DLT con varias herramientas. Proporciona una guía estructurada sobre las herramientas a las que se debe recurrir, en qué orden y cómo interpretar los resultados entre los pasos.
Parameters
-
workflow -
-
El flujo de trabajo para el que se obtienen las instrucciones. Uno de:
run_and_monitor,baseline_comparison,schedule_test,create_and_run,update_and_run.Tipo: cadena
Obligatorio: sí
-
Respuesta
| Name | Description (Descripción) |
|---|---|
|
|
identificador de flujo de trabajo |
|
|
Descripción breve del propósito del flujo de trabajo |
|
|
Conjunto de objetos de paso, cada uno con |
Flujos de trabajo disponibles
run_and_monitor
Inicie una prueba existente y sondee hasta su finalización.
-
Encuentra la prueba usando
list_scenariosoget_scenario_details -
Inicie la ejecución de la prueba usando
start_run -
Realice la encuesta para completarla utilizando
get_latest_test_run(intervalo recomendado: 30 segundos; gestione los 404 iniciales durante 1 a 3 minutos mientras se lanzan las tareas de Amazon Elastic Container Service (Amazon ECS)) -
Informe los resultados una vez que se alcance el estado de la terminal (
completefailed, ocancelled)
baseline_comparison
Ejecute una prueba y compare los resultados con una línea base almacenada.
-
Busque la prueba usando
list_scenariosoget_scenario_details -
Inicie la ejecución de la prueba usando
start_run -
Realice la encuesta utilizando
get_latest_test_run(intervalo recomendado: 30 segundos) -
Recupere la línea de base utilizando
get_baseline_test_run(omita la comparación si no se ha establecido ninguna línea de base) -
Compare las métricas (tiempo de respuesta promedio, latencia, rendimiento, percentiles, tasa de error)
schedule_test
Crea una prueba con un cronograma periódico o único.
-
Determine el tipo de programación (única →
create_simple_schedule, recurrente →create_cron_schedule) -
Cargue el script de prueba si está basado en un script utilizando
upload_test_script -
Cree la prueba programada con la configuración completa y los campos de programación
-
Verifique que el cronograma se haya creado usando
get_scenario_details(verifiquestatus: scheduledynextRun)
Restricciones: intervalo mínimo de 1 hora entre ejecuciones recurrentes, el intervalo debe superar la duración de la prueba y cron debe especificar exactamente un valor de un minuto.
create_and_run
Crea una nueva prueba desde cero y ejecútala inmediatamente.
-
Cargue el script de prueba si está basado en un script utilizando
upload_test_script -
Cree la prueba usando
create_test -
Inicie la ejecución de la prueba utilizando
start_runeltest_id -
Encuesta para completarla usando
get_latest_test_run(intervalo recomendado: 30 segundos) -
Reportar los resultados
update_and_run
Modifique la configuración de una prueba existente y vuelva a ejecutarla inmediatamente.
-
Recupere la configuración actual mediante
get_scenario_details -
Cargue un nuevo script si cambia el script usando
upload_test_script -
Actualice la configuración de prueba usando
update_test(reemplazo completo: incluya todos los campos) -
Inicie la ejecución de la prueba usando
start_run -
Realice la encuesta utilizando
get_latest_test_run(intervalo recomendado: 30 segundos) -
Reportar los resultados
nota
Todas las herramientas de MCP aprovechan los puntos finales de API existentes. No es necesario modificar las API subyacentes para admitir la funcionalidad de MCP.