n8n
n8n is an open-source workflow automation tool.
SynapseOrch integrates with n8n so agents can trigger n8n workflows as custom tools, combining SynapseOrch's LLM reasoning with n8n's hundreds of app connectors.
How it works
- You connect your n8n instance in SynapseOrch settings, so SynapseOrch can list its workflows
- For each workflow an agent should call, you create a custom tool and pick the workflow — SynapseOrch fills in its webhook URL
- The agent decides when to trigger the workflow based on the task at hand
- n8n executes the workflow (connecting to Slack, Salesforce, Airtable, etc.) and its webhook responds
- The agent incorporates the response into its answer
Workflows are not exposed automatically: each one an agent can call is a tool you create.
Setup
Step 1 — Configure n8n in SynapseOrch settings
Go to Settings → Integrations and fill the n8n card:
| Field | Setting | Description |
|---|---|---|
| n8n URL | n8n_url | Your n8n instance's base URL (default http://localhost:5678) |
| n8n API key | n8n_api_key | Used server-side to list workflows and find their webhook URLs |
Click Save changes. The card shows Configured once an API key is saved — it does not test the connection.
Step 2 — Get your n8n API key
In n8n, create an API key under your n8n settings (Settings → n8n API), and paste it into n8n API key.
Step 3 — Register n8n workflows as custom tools
Open Apps › Tools and press New Tool. With an API key saved, the editor shows an n8n Workflow picker:
- Pick the workflow. SynapseOrch finds its Webhook trigger node and fills in the URL with the production webhook URL,
<n8n URL>/webhook/<path>. The picker also links to open the workflow in n8n, or to create a new one. - Set Method to match the Webhook node — usually
POST. - Fill in the System Name (Snake Case), Description (For AI) and Input Schema (JSON) — the arguments the agent passes.
- Leave Request body empty to send all the arguments as the JSON body, or write a template.
- Click Save, then enable the tool in an agent's Tools section.
The stored tool looks like this:
{
"name": "create_jira_ticket",
"generalName": "Create Jira Ticket",
"description": "Create a Jira ticket with the specified title, description, and priority",
"tool_type": "http",
"method": "POST",
"url": "https://n8n.example.com/webhook/create-jira-ticket",
"headers": {},
"body": "",
"inputSchema": {
"type": "object",
"properties": {
"title": { "type": "string", "description": "Ticket title" },
"description": { "type": "string", "description": "Ticket description" },
"priority": { "type": "string", "description": "Priority: low, medium, high" }
},
"required": ["title", "description"]
}
}With an empty body, the call sends {"title": …, "description": …, "priority": …}. See REST API Tools for body templates.
An n8n on your own machine or network is blocked by default
Custom tools refuse loopback and private addresses, so a webhook at
http://localhost:5678 — or at a Docker service name, or a 192.168.x.x
address — fails when the agent calls it, even though the workflow picker can
list it. The error names the host and what to do: "localhost resolves to a
blocked range: loopback. If this install is meant to call it, add localhost to
the EGRESS_ALLOW_HOSTS environment variable and restart." Set it on the
SynapseOrch backend, for example EGRESS_ALLOW_HOSTS=localhost or
EGRESS_ALLOW_HOSTS=n8n. See Environment Variables.
Step 4 — Set up the n8n workflow
In n8n:
- Create a workflow with a Webhook trigger node
- Add nodes for the actions (Jira, Slack, Salesforce, email, etc.)
- Configure the webhook to respond with the result you want the agent to see
- Activate the workflow, so its production webhook URL is live
Example workflows
These are workflows you would build in n8n and register as tools; none ships with SynapseOrch.
Slack notification via n8n
Agent: "I need to notify the team about the production incident"
→ Calls your trigger_slack_alert tool
→ n8n workflow sends formatted message to #incidents channel
→ Returns: "Message sent to #incidents"Salesforce lead creation
Agent: "Create a lead for Alice Johnson at Acme Corp"
→ Calls your create_salesforce_lead tool
→ n8n workflow creates the lead in Salesforce
→ Returns: "Lead created: https://salesforce.com/leads/001..."Multi-step automation
Agent: "Close the support ticket #1234 and notify the customer"
→ n8n workflow:
1. Updates Zendesk ticket status
2. Sends email to customer
3. Posts closure note to Slack
→ Returns: "Ticket closed, customer notified"n8n vs direct API tools
| Approach | Use when |
|---|---|
| Direct REST API tool | Simple one-step API calls |
| n8n workflow | Multi-step automations, existing n8n flows, 400+ app integrations |
Self-hosted vs n8n Cloud
SynapseOrch works with both:
- Self-hosted n8n: set n8n URL to your instance — and allow its host with
EGRESS_ALLOW_HOSTSif it is on your own machine or network - n8n Cloud: set n8n URL to your cloud instance URL (e.g.
https://myworkspace.app.n8n.cloud)
Google Workspace
Self-hosted SynapseOrch connects to Google Workspace — Gmail, Calendar, Drive, Docs, Sheets, Slides, Forms, Tasks and Contacts — through your own Google Cloud OAuth client and a Google Workspace MCP server.
Code Repositories
SynapseOrch can index code repositories and give agents the ability to search them semantically and lexically.