Input Mapping
How the inputMap maps workflow data — trigger payloads, prior node outputs, context variables, and literal values — to MCP tool parameter schemas.
inputMap Structure
The inputMap object in an MCPToolCallNode is a flat or nested key-value map where each key is the parameter name expected by the MCP tool, and each value is either a Jint expression string or a literal JSON value.
{
"inputMap": {
"documentUrl": "$output.fetchDocument.url",
"language": "$json.documentLanguage",
"tenantId": "$context.tenantId",
"maxEntities": 50,
"schemaHint": {
"fields": ["invoiceNumber", "amount", "currency"],
"strict": false
}
}
}
Expression Sources
| Prefix | Source | Example |
|---|---|---|
$output.{nodeId}.{field} | Output of a prior node in this execution | $output.fetchDocument.url |
$json.{field} | Trigger payload (webhook body, form data, etc.) | $json.documentType |
$context.{field} | Execution context (tenantId, actorId, executionId) | $context.tenantId |
$env.{key} | Environment variable (non-secret config) | $env.DOCUMENT_REGION |
$now | Current UTC timestamp (ISO 8601 string) | $now |
| Literal (string/number/bool/object) | Constant value embedded in the map | 50, "en", { "strict": false } |
Nested Object Parameters
MCP tool parameters that expect an object can be supplied as a literal nested object or by assembling fields from different expression sources. When all fields are literals, write them inline. When mixing expressions with literals, use the flat expression form and let the tool schema coerce types:
{
"inputMap": {
"extractionConfig.fields": "$json.requiredFields",
"extractionConfig.strict": true,
"extractionConfig.locale": "$context.locale"
}
}
Dot-notation keys are expanded into nested objects at evaluation time before the call is dispatched to the MCP server.
Array Parameters
{
"inputMap": {
"documentUrls": "$output.batchFetch.rows[*].url",
"labels": ["invoice", "receipt", "contract"]
}
}
JSONPath expressions ([*]) are supported for extracting arrays from prior node row outputs. Literal arrays are passed as-is.
Schema Validation at Runtime
Before calling the MCP server, the executor validates the assembled parameters against the MCPToolSchema fetched from the registry. Missing required parameters cause an immediate node failure with a descriptive error. Type mismatches (e.g., string where int expected) are coerced when safe, otherwise fail.
serverId and toolName, the node property panel shows the tool's parameter schema and provides an auto-suggest input mapping editor. Parameters marked required: true in the MCP schema are highlighted if unmapped.
inputMap values. If a tool parameter requires an authentication token, configure it at the MCP server credential level (see Authentication page). The executor injects auth headers automatically — workflow designers should not handle credentials.