Create Node from External Schema
create_node_from_external_schemaAutomates node creation by reconciling predecessor columns with an external target schema, matching by name, adding new columns, dropping extras, and overriding data types.
Instructions
Create a workspace node whose output columns match an external table schema (e.g., from Snowflake DESCRIBE TABLE, dbt manifest, or any metadata source).
This tool automates the workflow of:
Creating a node from predecessor(s) (auto-populates columns from source)
Reconciling auto-populated columns against the external target schema
Replacing columns to match the external schema exactly
Reconciliation logic:
Matched columns (by name): Preserves source linkage from predecessor, overrides dataType to match external schema
New columns (in target but not predecessor): Added without source mapping, flagged as needing a transform
Dropped columns (in predecessor but not target): Removed from the node
The response includes a reconciliation object showing exactly what was matched, added, dropped, and which types changed.
REQUIRED: Call plan_pipeline first to discover the correct nodeType.
Args:
workspaceID (string, required): The workspace ID
nodeType (string, required): Node type from plan_pipeline
predecessorNodeIDs (string[], required): One or more predecessor node IDs
targetColumns (array, required): External column definitions to match
targetName (string, optional): Name for the new node (e.g., 'STG_ORDER_HEADER')
locationName (string, optional): Storage location name
repoPath (string, optional): Local repo path for config completion
goal (string, optional): Intent for node type validation
Returns: { node, reconciliation: { matched, added, dropped, typeChanges }, predecessors, validation, configCompletion?, configCompletionSkipped?, nodeTypeValidation?, nextSteps }
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| goal | No | The goal or intent for this node. Used to validate the chosen nodeType. | |
| nodeType | Yes | The type of node to create. Call plan_pipeline first to discover and rank available node types. | |
| repoPath | No | Path to local Coalesce repository for automatic config completion. | |
| targetName | No | Name for the new node (e.g., 'STG_ORDER_HEADER'). If omitted, uses the auto-generated name from Coalesce. | |
| workspaceID | Yes | The workspace ID | |
| locationName | No | Storage location name for the new node. | |
| targetColumns | Yes | External column definitions describing the target table schema. Each column specifies name, dataType, and optionally nullable, description, and transform. | |
| predecessorNodeIDs | Yes | One or more predecessor node IDs to link to the new node |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| nodeID | No | ||
| created | No | ||
| warning | No | ||
| nextSteps | No | ||
| validation | No | ||
| joinSuggestions | No | ||
| configCompletion | No | ||
| nodeTypeValidation | No | ||
| configCompletionSkipped | No |