n8n_manage_datatable
Manage n8n data tables, rows, and columns: create tables, insert or update rows, add or rename columns, and delete data. Handles column changes through n8n's MCP server when the public API cannot.
Instructions
Manage n8n data tables, rows and columns. Actions: createTable, listTables, getTable, updateTable, deleteTable, getRows, insertRows, updateRows, upsertRows, deleteRows, addColumn, deleteColumn, renameColumn. The column actions run through n8n's own MCP server (N8N_MCP_ACCESS_TOKEN, n8n 2.34+) because the public API cannot change a table's columns after creation; everything else uses the public API.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| data | No | For insertRows: array of row objects. For updateRows/upsertRows: object with column values. | |
| name | No | For createTable: table name. For updateTable: new table name. For renameColumn: new column name. | |
| limit | No | For listTables/getRows: max results (1-100) | |
| action | Yes | Operation to perform. addColumn/deleteColumn/renameColumn need N8N_MCP_ACCESS_TOKEN. | |
| column | No | For addColumn: the column to add. Name must start with a letter, contain only letters, digits and underscores, and be at most 63 characters. | |
| cursor | No | For listTables/getRows: pagination cursor | |
| dryRun | No | For updateRows/upsertRows/deleteRows: preview without applying (default: false) | |
| filter | No | For getRows/updateRows/upsertRows/deleteRows: {type?: "and"|"or", filters: [{columnName, condition, value}]} | |
| search | No | For getRows: text search across string columns | |
| sortBy | No | For getRows: "columnName:asc" or "columnName:desc" | |
| columns | No | For createTable (required, at least one): column definitions. Change columns later with addColumn/deleteColumn/renameColumn. | |
| tableId | No | Data table ID (required for all actions except createTable and listTables) | |
| columnId | No | For deleteColumn/renameColumn: ID of the column (from getTable). | |
| projectId | No | For createTable: project ID to create the table in. If omitted, uses the default project. For the column actions: the project owning the table - resolved automatically when the instance has exactly one accessible project, otherwise required (the error lists the candidates). | |
| timeoutMs | No | For the column actions: client timeout in ms (5000-600000, default 30000). | |
| returnData | No | For updateRows/upsertRows/deleteRows: return affected rows (default: false) | |
| returnType | No | For insertRows: what to return (default: count) |