MCP Tools Reference
The Latenode MCP Server exposes 12 tools that AI agents can call to manage scenarios, run executions, and work with connections.
Scenarios
create_scenario
Creates a new scenario with the given name, description, and nodes.
Input
| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | yes | Scenario name |
| description | string | no | Scenario description |
| nodes | array | yes | List of nodes to include (see node object below) |
Node object
| Field | Type | Required | Description |
|---|---|---|---|
| name | string | yes | Node name (unique within the scenario) |
| typeAlias | string | yes | Node type identifier (use search_node_types to find) |
| parameters | object | yes | Node configuration parameters |
| prevNodes | object | no | Map of upstream node names to route conditions |
Output
| Field | Type | Description |
|---|---|---|
| scenarioId | string | ID of the created scenario |
Notes
- The scenario is always saved with the provided
nameanddescriptionas metadata. - MCP automatically assigns a display name to every node in the scenario, even if you do not set one explicitly.
update_scenario
Replaces an existing scenario by ID. All current nodes are replaced with the ones you provide.
Input
| Parameter | Type | Required | Description |
|---|---|---|---|
| id | string | yes | Scenario ID to update |
| name | string | no | New scenario name |
| description | string | no | New description |
| nodes | array | no | New node list (same structure as create_scenario) |
Output
| Field | Type | Description |
|---|---|---|
| scenarioId | string | ID of the updated scenario |
Notes
- Full replacement: the existing node list is discarded and replaced with the one you provide. To make partial changes, first call
get_scenario, modify the result, then callupdate_scenario. - MCP automatically assigns display names to all nodes, same as in
create_scenario.
get_scenario
Returns the full definition of a scenario by ID.
Input
| Parameter | Type | Required | Description |
|---|---|---|---|
| id | string | yes | Scenario ID (valid ObjectID, e.g. 5f92cbf10cf217478ba93561) |
| version | number | no | Specific version to retrieve. Defaults to latest |
Output
| Field | Type | Description |
|---|---|---|
| name | string | Scenario name |
| description | string | Scenario description |
| nodes | array | Full node list with parameters and connections |
activate_scenario
Activates or deactivates a scenario.
Input
| Parameter | Type | Required | Description |
|---|---|---|---|
| id | string | yes | Scenario ID |
| activate | boolean | yes | true to activate, false to deactivate |
Output
| Field | Type | Description |
|---|---|---|
| status | string | activated or deactivated |
Node types and connections
search_node_types
Searches available node types by keyword. Returns up to 20 results per keyword.
Input
| Parameter | Type | Required | Description |
|---|---|---|---|
| query | string[] | yes | One keyword per array item. Results must match all keywords |
| includeOutputSchema | boolean | no | If true, returns up to 2 output schema examples per node type. Default: false |
Output: array of node type objects.
| Field | Description |
|---|---|
| alias | Node type identifier to use in typeAlias |
| name | Display name |
| description | What the node does |
| params | Configurable parameters with key, title, type, required flag, description, default value, and options |
| defaultWebhookURL | Pre-configured webhook URL if applicable |
get_dynamic_node_parameters
Returns additional parameters that become available for a node type once initial parameters are set (e.g. a sheet list after a spreadsheet is selected).
Input
| Parameter | Type | Required | Description |
|---|---|---|---|
| nodeTypeAlias | string | yes | Node type identifier |
| currentParameters | object | yes | Current parameter values already set on the node |
Output: array of additional parameter descriptors (same structure as params in search_node_types).
search_connections
Searches for the current user's saved connections by type alias.
Input
| Parameter | Type | Required | Description |
|---|---|---|---|
| alias | string[] | yes | One or more connection type aliases to search for |
Output
| Field | Description |
|---|---|
| id | Connection ID to use in node parameters |
| title | Connection display name |
| typeAlias | Connection type |
| lastModifiedAt | Last modification timestamp |
create_connection
Creates a new connection. For OAuth-based services, returns a URL the user must open to complete authorization manually.
Input
| Parameter | Type | Required | Description |
|---|---|---|---|
| typeAlias | string | yes | Connection type alias |
| title | string | yes | Display name for the connection |
| parameters | object | no | Connection parameters (e.g. API keys for non-OAuth connections) |
Output
| Field | Description |
|---|---|
| connectionId | ID of the created connection |
| url | Authorization URL (returned when the client does not support elicitation) |
Executions
run_scenario_once
Runs a scenario once and returns the execution result.
Input
| Parameter | Type | Required | Description |
|---|---|---|---|
| scenarioId | string | yes | Scenario to run |
| version | string | no | Specific version to run. Defaults to latest |
| async | boolean | no | If true, returns only executionId without waiting. Default: false |
Output
| Field | Description |
|---|---|
| executionId | Execution ID |
| result | Status: new, waiting, success, error, in_process, cancel |
| error | Error message if the execution failed |
run_node_once
Runs a single node inside a scenario and returns its output. Useful for testing a specific step without running the full scenario.
Input
| Parameter | Type | Required | Description |
|---|---|---|---|
| scenarioId | string | yes | Scenario containing the node |
| nodeName | string | yes | Name of the node to run |
| nodes | array | yes | Full node list (same structure as create_scenario) |
| version | number | no | Scenario version. Defaults to latest |
| async | boolean | no | If true, returns only executionId. Default: false |
| overrideParameters | object | no | Parameter values to override for this run only |
| compactOutput | boolean | no | If true, returns only the first 100 bytes of output. Default: true |
Output
| Field | Description |
|---|---|
| executionId | Execution ID |
| result | Status: new, waiting, success, error, in_process, cancel |
| output | Node output (truncated if compactOutput is true) |
| error | Error message if the node failed |
Notes
compactOutputdefaults totrueand returns only the first 100 bytes. Set it tofalsewhen you need the full output.- Use
overrideParametersto inject test values without modifying the saved scenario.
get_execution
Returns the status and node outputs of an execution by ID.
Input
| Parameter | Type | Required | Description |
|---|---|---|---|
| executionId | string | yes | Execution ID to fetch |
| nodeOutputsByName | string[] | no | Node names whose outputs to include in the response |
Output
| Field | Description |
|---|---|
| status | success, error, in_process, or cancel |
| error | Error message if the execution failed |
| executedNodesCount | Map of node name to execution count |
| nodeOutputs | Map of node name to output string (for nodes in nodeOutputsByName) |
Notes
- Use this tool to poll the result after calling
run_scenario_onceorrun_node_oncewithasync: true.
get_executions_history
Returns the execution history for a scenario with optional filters.
Input
| Parameter | Type | Required | Description |
|---|---|---|---|
| scenarioId | string | yes | Scenario ID |
| limit | number | no | Max executions to return. Default: 10 |
| filters.statuses | string[] | no | Filter by status: new, waiting, success, error, in_process, cancel |
| filters.from | string | no | Start datetime (ISO 8601) |
| filters.to | string | no | End datetime (ISO 8601) |
| filters.versions | string[] | no | Filter by scenario version |
| filters.environment | string | no | dev or prod |
Output
| Field | Description |
|---|---|
| id | Execution ID |
| status | Execution status |
| startedAt | Start timestamp |
| durationInSec | Duration in seconds |
| version | Scenario version |
| environment | dev or prod |
MCP Server
Connect AI agents to Latenode via the MCP Server to build and run scenarios programmatically.
Working with the built-in database
Built-in database: structured data in storages and collections; basics of the database and scenario nodes.
Need Help? Ask the community
If something on this page is missing or unclear, post on the Latenode community forum. Our team and other users usually reply quickly.