Is there any way to pass variables using the MCP Client Tool node, similar to the Subworkflow node? I’ve been struggling with this but can’t see any options to do it. And is this functionality even possible at the moment? I don’t want to pass all the parameters through AI. I tried adding query parameters to the URL, but then the MCP Trigger just keeps waiting endlessly for input data when I try to test it.
Welcome to the community @seo.orchidkid
Can you share more details about your workflow or node configuration?
Thanks!
When it comes to explaining my workflow or idea, honestly, it always turns into a wall of text. So instead, I’ll try to explain as clearly as possible what I actually mean.
Basically, we can create a workflow and then provide it to an AI Agent as a tool. In that workflow, which we’re exposing as a tool, we can explicitly define what kind of input data it should expect (either via Define Using JSON Example or Input Fields Via UI).
Because of that, in the main workflow where the AI Agent lives, when we open the tool-node settings, we see those defined fields. For each of those fields, we can either let the AI decide what to fill in, or we can map in variables from previous nodes — for example, a user ID, a token, or really any data passed along earlier in the workflow. In short, we can feed in arbitrary data from any node that runs before the AI Agent.
So to put it in the shortest way possible: I was expecting that the MCP Client Tool node would let me define an Input Schema in the same way the ‘Call n8n Workflow Tool’ node does — so I could choose which parameters the AI should fill in and which I can supply manually. But from what I can tell, this isn’t currently possible in n8n.
One extra note: I don’t use the native nodes in n8n because I need to avoid hardcoded credentials. Right now, the only way to pass credentials dynamically is through HTTP requests. That’s why I build my tools through HTTP calls, and I don’t want to pass tokens or authentication credentials through the AI itself. When I use the workflow-call-as-a-tool approach, this works fine — but with the MCP Client Tool node, I just don’t see any way to do the same.
The MCP Client Tool node currently doesn’t support passing variables directly like the Subworkflow node. you can try using expressions in the URL or request body to pass dynamic values.
Some possible workarounds: Try using n8n’s expression syntax. If you’re using a POST request, you can send data in the request body and access it in the MCP Trigger node.
Let me know If you’re still having trouble and just ping me
I was also in the same boat, its kinda of strange to officially publish an MCP Tool node that hardly supports what other nodes (official or not) are providing. At the very least the node should allow passing parameters in the same way as sub-workflow or other tool ndoes:
This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.