This workflow follows the Agent → OpenAI Embeddings recipe pattern — see all workflows that pair these two integrations.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"name": "Novacart_Monthly_Report_Agent_NoCode_V3",
"nodes": [
{
"parameters": {
"rule": {
"interval": [
{
"field": "months"
}
]
}
},
"type": "n8n-nodes-base.scheduleTrigger",
"typeVersion": 1.3,
"position": [
0,
0
],
"id": "1e98551d-deff-4fd9-90f8-e912f22ee914",
"name": "Schedule Trigger"
},
{
"parameters": {
"promptType": "define",
"text": "=Generate the NovaCart Monthly Financial Standing Report for {{ $json.Month }} {{ $json.Year }}. Use only the Pinecone Internal Vector Store and External Market Vector Store. Output valid HTML only.",
"options": {
"systemMessage": "=You are NovaCart\u2019s AI Finance Reporting Agent.\n\nYour job is to generate a Monthly Financial Standing Report for the requested reporting period using only data retrieved from these two tools:\n1. Pinecone Internal Vector Store \u2014 NovaCart internal company and financial data\n2. External Market Vector Store \u2014 market, competitor, industry, and macro trend data\n\nGrounding rules:\n- Use only information retrieved from these vector stores.\n- Do not use prior knowledge, assumptions, or invented numbers.\n- Do not fabricate KPIs, trends, dates, or sources.\n- If a metric or detail is unavailable, clearly say that the data is unavailable or pending.\n- Do not present estimates as facts unless the retrieved source explicitly labels them as estimates or approximations.\n\nReport requirements:\n- Generate the report as valid HTML only, suitable for sending through Gmail.\n- Do not output Markdown, code fences, or explanations outside the HTML.\n- Keep the report executive-friendly, clear, and decision-useful.\n- Combine internal performance with external market context.\n- Explain likely drivers, correlations, risks, opportunities, and recommendations.\n- Include data gaps clearly when recent or granular data is missing.\n- Mention the sources used at the end of the report.\n\nExpected structure:\n- Title and reporting period\n- Executive Summary\n- KPI Dashboard\n- Performance Deep Dive\n- Market Context\n- Drivers & Correlations\n- Risks, Opportunities, Recommendations\n- Sources\n\nBehavior rules:\n- Query both vector stores before writing the report.\n- Base all conclusions only on retrieved evidence.\n- Prefer specific statements over vague summaries.\n- Keep the tone professional, concise, and suitable for leadership email communication."
}
},
"type": "@n8n/n8n-nodes-langchain.agent",
"typeVersion": 3.1,
"position": [
496,
0
],
"id": "7bf80e21-2590-4a2b-9436-fb346ef1e618",
"name": "AI Agent"
},
{
"parameters": {
"model": {
"__rl": true,
"value": "gpt-4o-mini",
"mode": "list",
"cachedResultName": "gpt-4o-mini"
},
"builtInTools": {},
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.3,
"position": [
-128,
256
],
"id": "5bba46bd-b163-4eef-9660-45522781aaef",
"name": "OpenAI Chat Model",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"sendTo": "=jattaaihq@gmail.com",
"subject": "=Monthly Report{{ $('Schedule Trigger').item.json['Readable date'] }}",
"message": "={{ $json.output }}",
"options": {}
},
"type": "n8n-nodes-base.gmail",
"typeVersion": 2.2,
"position": [
848,
0
],
"id": "878b33a9-842d-4790-a868-a0d3ae2dd936",
"name": "Send a message",
"credentials": {
"gmailOAuth2": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"mode": "retrieve-as-tool",
"toolDescription": "Retrieve Novacart company performance information",
"pineconeIndex": {
"__rl": true,
"value": "nova-cart-n8n",
"mode": "list",
"cachedResultName": "nova-cart-n8n"
},
"useReranker": true,
"options": {
"pineconeNamespace": "int-finance-data"
}
},
"type": "@n8n/n8n-nodes-langchain.vectorStorePinecone",
"typeVersion": 1.3,
"position": [
208,
320
],
"id": "1693174b-11be-4c57-b4fc-8f212a1f0593",
"name": "Pinecone Internal Vector Store",
"credentials": {
"pineconeApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"model": "text-embedding-3-large",
"options": {
"dimensions": 1024
}
},
"type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
"typeVersion": 1.2,
"position": [
96,
560
],
"id": "374d88c8-b8c4-4010-9dfa-2f7a2c43f26f",
"name": "Embeddings OpenAI1",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {},
"type": "@n8n/n8n-nodes-langchain.rerankerCohere",
"typeVersion": 1,
"position": [
384,
576
],
"id": "0f6e551e-fa5b-4ace-b8c3-b49cba76f0f8",
"name": "Reranker Cohere1",
"credentials": {
"cohereApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"mode": "retrieve-as-tool",
"toolDescription": "Fetch external market data",
"pineconeIndex": {
"__rl": true,
"value": "nova-cart-n8n",
"mode": "list",
"cachedResultName": "nova-cart-n8n"
},
"useReranker": true,
"options": {
"pineconeNamespace": "ext-market-reports"
}
},
"type": "@n8n/n8n-nodes-langchain.vectorStorePinecone",
"typeVersion": 1.3,
"position": [
656,
320
],
"id": "e19c24db-9653-474b-995a-fdac6e4349a5",
"name": "Pinecone External Vector Store",
"credentials": {
"pineconeApi": {
"name": "<your credential>"
}
}
}
],
"connections": {
"Schedule Trigger": {
"main": [
[
{
"node": "AI Agent",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model": {
"ai_languageModel": [
[
{
"node": "AI Agent",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"AI Agent": {
"main": [
[
{
"node": "Send a message",
"type": "main",
"index": 0
}
]
]
},
"Pinecone Internal Vector Store": {
"ai_tool": [
[
{
"node": "AI Agent",
"type": "ai_tool",
"index": 0
}
]
]
},
"Embeddings OpenAI1": {
"ai_embedding": [
[
{
"node": "Pinecone Internal Vector Store",
"type": "ai_embedding",
"index": 0
},
{
"node": "Pinecone External Vector Store",
"type": "ai_embedding",
"index": 0
}
]
]
},
"Reranker Cohere1": {
"ai_reranker": [
[
{
"node": "Pinecone Internal Vector Store",
"type": "ai_reranker",
"index": 0
},
{
"node": "Pinecone External Vector Store",
"type": "ai_reranker",
"index": 0
}
]
]
},
"Pinecone External Vector Store": {
"ai_tool": [
[
{
"node": "AI Agent",
"type": "ai_tool",
"index": 0
}
]
]
}
},
"active": false,
"settings": {
"executionOrder": "v1",
"binaryMode": "separate"
},
"versionId": "842538fe-d20d-482c-9105-a8ac4d733bc2",
"meta": {
"templateCredsSetupCompleted": true
},
"id": "WonSSUaLRTuvp12h",
"tags": []
}
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
cohereApigmailOAuth2openAiApipineconeApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Novacart_Monthly_Report_Agent_NoCode_V3. Uses agent, lmChatOpenAi, gmail, vectorStorePinecone. Scheduled trigger; 8 nodes.
Source: https://github.com/praveenjatta/novaCart-n8n-finance-agent/blob/main/Novacart_Monthly_Report_Agent_NoCode_V3.json — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
Email_sequencing_SDR. Uses gmail, lmChatOpenAi, googleSheets, agent. Scheduled trigger; 25 nodes.
NovaCart_Monthly_Report_Agent_V2. Uses agent, lmChatOpenAi, vectorStorePinecone, embeddingsOpenAi. Scheduled trigger; 11 nodes.
Novacart_Monthly_Report_Code_V3. Uses agent, embeddingsOpenAi, lmChatOpenAi, gmail. Scheduled trigger; 10 nodes.
WooriFisa. Uses agent, httpRequest, documentDefaultDataLoader, vectorStorePinecone. Scheduled trigger; 86 nodes.
This workflow automates patient communication for medical clinics using the WhatsApp Business API. It supports appointment booking, rescheduling, service inquiries, follow-ups, and document submission