# run_mutation_query

> Herramienta MCP que ejecuta INSERT, UPDATE, REPLACE o DELETE sobre un provider mediante StackQL

Source: https://stackql.io/es/mcp/run_mutation_query

Ejecuta `INSERT`, `UPDATE`, `REPLACE` o `DELETE` sobre el provider.  **Efectos secundarios reales** - una llamada correcta cambia el estado en la nube.

Controlada por el [modo](/command-line-usage/mcp#server-modes) del servidor:

| Modo | `INSERT` / `UPDATE` / `REPLACE` | `DELETE` |
|--|--|--|
|`read_only`|rechazado|rechazado|
|`safe` (valor predeterminado)|requiere aprobación (elicitación)|requiere aprobación|
|`delete_safe`|permitido|requiere aprobación|
|`full_access`|permitido|permitido|

:::info

Una carga útil que contiene varias instrucciones queda controlada por su instrucción con más privilegios

:::

Cuando una mutación requiere aprobación y el cliente no anunció la capacidad de elicitación de MCP, la llamada se rechaza.

Consulte también:
[[ Descripción general de MCP ]](/command-line-usage/mcp) [[ `run_lifecycle_operation` ]](/mcp/run_lifecycle_operation) [[ `describe_method` ]](/mcp/describe_method) [[ INSERT en la especificación del lenguaje ]](/language-spec/insert) [[ DELETE en la especificación del lenguaje ]](/language-spec/delete)

* * *

## Entradas

| Argumento | Obligatorio | Descripción |
|--|--|--|
|`sql`|Sí|Una instrucción `INSERT`, `UPDATE`, `REPLACE` o `DELETE`.|
|`source`|No|ID de la entrada de la Query Library cuando el SQL procede de [`query_library_get`](/mcp/query_library_get). Solo para atribución; no cambia la ejecución ni las aprobaciones.|
|`format`|No|Renderizado del texto: `markdown` o `json`. Cuando se omite, usa la configuración de renderizado del servidor.|

* * *

## Salida

| Renderizador | Forma |
|--|--|
| KV | `{messages: [...], timestamp}` - confirmación del envío, no el cuerpo de la respuesta de la API |

* * *

## Ejemplo

Pruebe este prompt con cualquier cliente MCP que admita la elicitación y tenga registrado el servidor MCP de StackQL:

```
The firewall rule allow-test-old in project my-project  
is no longer needed.  Please remove it.
```

El cliente MCP mostrará una solicitud de aprobación antes de enviar la eliminación, a menos que el servidor se ejecute en el modo `full_access`.

El siguiente clip muestra el flujo de elicitación cuando el servidor MCP de StackQL se ejecuta en el modo `safe` predeterminado - se pide al cliente que apruebe el `DELETE` antes de enviar cualquier cambio en la nube.  Puede reproducirlo con su propio servidor MCP de StackQL mediante el [MCP Inspector](https://github.com/modelcontextprotocol/inspector) oficial, con `npx @modelcontextprotocol/inspector`:
