Back to Docs
MCP

Automate With n8n

Drive your Vaybel workspace from n8n workflows with the built-in MCP Client node — no community package, no custom code.

Updated 2026-09-07

n8n ships a built-in MCP Client node (n8n 1.122.0 and newer, Cloud and self-hosted) that runs any Vaybel tool as a regular workflow step. There is nothing to install: create one credential, import a template, run it.

Connect

Step

Create a Personal Access Token

Dashboard → Settings → API & MCP → Create token. Keep all scopes selected unless you are deliberately limiting the automation.

Step

Create a Bearer Auth credential in n8n

Credentials → New → Bearer Auth. Paste the token into the single Token field. Name it Vaybel MCP Bearer so the templates pick it up by name.

Step

Import a template

Workflows → Import from file → choose a template from vaybel/automation. Open each MCP Client node and select the credential. That is the only edit an imported template needs.

Templates

TemplateFlow
Launch: blank → design → mockupsManual trigger → catalog.list_blanksdesign.generate → poll design.get_generationmockup.generate → poll mockup.get_generation
AI Agent with Vaybel toolsChat trigger → AI Agent with the Vaybel tools attached through the MCP Client Tool sub-node (bring your own chat-model credential)

Building your own steps

  • Node settings — Server Transport HTTP Streamable, Endpoint https://mcp.vaybel.com/, Authentication Bearer Auth, Tool = the tool name (for example design.generate), Input Mode JSON.
  • Arguments — write the JSON input as an expression that returns an object, for example ={{ ({ product_uuid: $json.structuredContent.products[0].uuid, prompt: "retro sunset" }) }}. The node passes the value straight to the tool, so it must be an object, not a string.
  • Results — the tool's response object arrives on $json.structuredContent; read fields from there (handle, done, design_id, products[], mockups[]).
  • Async tools — generation tools return a handle. Loop an IF node on $json.structuredContent.done === true with a short Wait and re-poll <domain>.get_generation with wait_sec: 45. A single wait is capped at 50 seconds, so set each MCP Client node's Timeout option above 60000 ms (the templates use 120000).
  • Credits and plans — the same credit wallet and plan gates apply as everywhere else; check credits.check first in long batch runs and read Authentication & Scopes for costs.

Publishing safely

Templates stop at draft listings. Add listing.publish (or social_post.publish) as an explicit final step only when the workflow is meant to go live, and consider a Slack or email approval node before it.