Automate Data Flows with N8N
N8N Agent is a multi-step prompt workflow example demonstrating agent-based automation patterns for the n8n workflow platform, ready to run and test.
Why it matters
Orchestrate and automate complex data workflows by integrating with N8N. This asset enables seamless data extraction, transformation, and loading across various applications and databases.
Outcomes
What it gets done
Connect to N8N to trigger automated workflows.
Extract data from various sources.
Perform ETL (Extract, Transform, Load) operations.
Query and move data between systems.
Install
Add it to your toolbox
Run in your project directory:
curl -fsSL https://spark.entire.vc/get/pfoo-n8n-agent | bash Capabilities
What this chain does
Pulls structured data fields from unstructured text.
Moves and transforms data between systems on a schedule.
Writes and executes SQL or NoSQL queries on databases.
Overview
N8N Agent
What it does
N8N Agent is a runnable example of a multi-step prompt workflow (prompt_chain) designed for the n8n automation platform. It demonstrates how to structure agent-based prompt orchestration within n8n, providing a concrete reference implementation that can be executed immediately to see prompt chains in action.
How it connects
Use this example when you're building agent workflows on n8n and need a working reference for multi-step prompt patterns. It's ideal for developers prototyping automation sequences or learning how to integrate prompt chains into n8n's workflow engine.
Source README
n8n-agent (n8n AI Agent Evaluation)
You can run this example with:
npx promptfoo@latest init --example n8n-agent
This example demonstrates how to evaluate n8n AI agents and workflows using the n8n provider.
Prerequisites
- A self-hosted n8n instance with a webhook-triggered workflow
- An AI agent workflow that accepts messages and returns responses
Setup
- Create an n8n workflow with a Webhook trigger node
- Add your AI agent logic (e.g., AI Agent node, OpenAI node)
- Configure the workflow to return the agent's response
- Update
promptfooconfig.yamlwith your webhook URL:
providers:
- id: n8n:https://your-n8n-instance.com/webhook/your-agent-id
Environment Variables
export N8N_API_KEY=your-api-key # If your webhook requires authentication
Running the Example
# Run the evaluation
npx promptfoo eval
# View results
npx promptfoo view
Configuration Options
url: Webhook URL (alternative to specifying in provider path)method: HTTP method (default:POST);GETsends rendered body fields as query parametersheaders: Additional request headersbody: Custom request body template with Nunjucks support; prefer object form for JSON payloadstransformResponse: JavaScript expression to extract outputsessionHeader: Request header name for the session IDsessionParser: JavaScript expression to extract a session IDsessionField: Request body field for a supplied session ID
For multi-turn runs, pass sessionId in test variables or use a multi-turn strategy so sessions
remain scoped to one conversation. Keep webhook credentials in environment-backed headers rather
than embedding them in webhook URLs. The provider uses a fingerprinted display ID and skips
response caching so tokenized URLs and session-bearing requests do not enter response-cache
diagnostics or storage; URLs still remain in configuration and outbound requests.
Response Formats
The provider automatically handles common n8n response formats:
{ "output": "Response text" }
{ "response": "Agent response" }
{ "message": { "content": "Hello" } }
[{ "json": { "output": "Result" } }]
For custom formats, use transformResponse:
config:
transformResponse: 'json.data.agentMessage'
For more information, see the n8n Provider documentation.
Discussion
Questions & comments · 0
Sign In Sign in to leave a comment.