execute
Execute SQL queries or run saved cards against Metabase databases to fetch data. Supports custom SQL and card parameters with configurable row limits.
Instructions
Unified command to execute SQL queries or run saved cards against Metabase databases. Use Card mode when existing cards have the needed filters. Use SQL mode for custom queries or when cards lack required filters. Returns up to 500 rows per request - for larger datasets, use the export tool instead. SECURITY WARNING: SQL mode can execute ANY valid SQL including destructive operations (DELETE, UPDATE, DROP, TRUNCATE, ALTER). Use with caution and ensure appropriate database permissions are configured in Metabase. Note: When Read-Only Mode is enabled, write operations will be rejected with an error.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | SQL query to execute (SQL mode only) | |
| card_id | No | ID of saved card to execute (card mode only) | |
| row_limit | No | Maximum number of rows to return (default: 100, max: 500). For larger datasets, use the export tool. | |
| database_id | No | Database ID to execute query against (SQL mode only) | |
| card_parameters | No | Parameters for filtering card results (card mode only). Each parameter must follow Metabase format: {id: "uuid", slug: "param_name", target: ["dimension", ["template-tag", "param_name"]], type: "param_type", value: ["param_value"]}. For dimension targets, value should be an array; scalar values are accepted and auto-wrapped. | |
| native_parameters | No | Parameters for SQL template variables like {{variable_name}} (SQL mode only) |