TablesWriteDo not retry automatically

Create table

create_table

Create a table in the workspace. A TYPED table names a resource type and derives its fields, row identity and promoted bindings from that contract — identical to the table a feed destination auto-creates, so a feed can write straight into it. A FREEFORM table declares its own fields and starts append-only (no row identity) so an unrelated re-import cannot overwrite real rows. Subject to the plan table limit.

Parameters

ParameterTypeRequiredDescription
namestringrequiredHuman-readable table name. Names are NOT unique — a workspace may hold several tables called "Transactions". Address a table by its id, never by its name.
iconstringoptionalOptional emoji shown beside the name
kind"typed" | "freeform"requiredtyped = bound to a resource contract (fields are DERIVED from it, so the table matches what a feed destination would create); freeform = you declare the fields.
resourceTypestringoptionalResource contract for a typed table (e.g. transactions, balances, holdings)
fieldsobject[]optionalFields for a freeform table. Omit for a typed table — its fields are derived.
retentionobjectoptionalRow retention, e.g. { mode: "forever" } or { mode: "days", days: 365 }. Rows older than the window are purged by the maintenance workflow, so `days` must be between 1 and 3650 — there is deliberately no "keep nothing" policy.

Example call

The tool call an MCP client sends (required arguments shown with placeholder values).

{
"tool": "create_table",
"arguments": {
"name": "value",
"kind": "value"
}
}

Use this tool in

Related Tables tools