{
  "name": "Meal planner: cost tracking, leftover recipes & nutrition diary in Google Sheets",
  "nodes": [
    {
      "id": "3be82f45-7aad-4c17-80e6-a5ff30488753",
      "name": "OpenRouter Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
      "position": [
        -1424,
        112
      ]
    },
    {
      "id": "b0771629-a41c-498f-846d-032d4c9d752e",
      "name": "Structured Output Parser",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        -1296,
        112
      ]
    },
    {
      "id": "2b8ad996-0b53-43b5-a391-3f0efc39d3a0",
      "name": "Append row in sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -1072,
        -128
      ]
    },
    {
      "id": "1c6ad655-8149-43f7-bd94-4c1c22570751",
      "name": "Append row in sheet1",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        80,
        -128
      ]
    },
    {
      "id": "c24b82e7-52b5-44f3-9bd7-e739001d1975",
      "name": "Webhook",
      "type": "n8n-nodes-base.webhook",
      "position": [
        -1648,
        -128
      ]
    },
    {
      "id": "57916f99-a102-4af8-a262-9a23705f2d90",
      "name": "OpenRouter Chat Model1",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
      "position": [
        384,
        112
      ]
    },
    {
      "id": "90922a4d-9fe2-4542-a1bd-b41836212cea",
      "name": "OpenRouter Chat Model2",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
      "position": [
        -208,
        112
      ]
    },
    {
      "id": "88c896f1-6444-406f-9b99-6c2cade605b0",
      "name": "OpenRouter Chat Model3",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
      "position": [
        -784,
        112
      ]
    },
    {
      "id": "8dea555e-872d-46ab-bfe3-cbaa25acb606",
      "name": "Append row in sheet2",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -496,
        -128
      ]
    },
    {
      "id": "9d3cb079-4053-4f31-a82e-8def53383c4c",
      "name": "Create Direct Message",
      "type": "n8n-nodes-base.twitter",
      "position": [
        656,
        -128
      ]
    },
    {
      "id": "a06637b5-b25b-4e18-a391-1a459bb733ac",
      "name": "Menu Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -1424,
        -128
      ]
    },
    {
      "id": "62fa2287-a374-4a6d-9770-f74323381a84",
      "name": "Leftovers Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -848,
        -128
      ]
    },
    {
      "id": "5bf1ec16-a1ee-4b0c-b06d-25662fe1fb56",
      "name": "Nutritionist Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -272,
        -128
      ]
    },
    {
      "id": "52e4b8a7-cb34-4db7-a9ed-267dbd5ecfe3",
      "name": "Post Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        304,
        -128
      ]
    },
    {
      "id": "1ce6d15e-6710-4138-a7eb-bb8f96db5240",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2320,
        -592
      ],
      "parameters": {
        "width": 496,
        "height": 624,
        "content": "### How it works / What it does\n\nThis advanced workflow acts as a comprehensive culinary assistant. Triggered by a new menu item, it performs several key functions:\n\n*   **Cost and Ingredient Tracking"
      }
    },
    {
      "id": "8df4e680-cb25-4d27-8623-347c12727dcd",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1152,
        -416
      ],
      "parameters": {
        "width": 1392,
        "height": 448,
        "content": " **Google Sheets Integration:**\n\n    *   You need to set up a Google Sheets credential for your n8n instance.\n    *   Create a Google Sheet document (e.g., \"Recipe List\"). Within this document, create"
      }
    },
    {
      "id": "410700dd-3d65-4d9a-8211-2f58b697e03c",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1696,
        -416
      ],
      "parameters": {
        "width": 192,
        "height": 448,
        "content": "  **Webhook Trigger:**\n\n    *   The workflow starts with a Webhook. Copy the webhook URL from the \"Webhook\" node. You will send your menu item input to this URL."
      }
    },
    {
      "id": "d559ed46-36d3-4021-a74f-4e179dca7115",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        576,
        -416
      ],
      "parameters": {
        "width": 256,
        "height": 448,
        "content": "**Twitter Integration:**\n    *   Set up your Twitter credentials for the \"Create Direct Message\" node.\n    *   In the \"Create Direct Message\" node, specify the `User` (username) to whom the direct mes"
      }
    }
  ],
  "connections": {
    "Webhook": {
      "main": [
        [
          {
            "node": "Menu Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Menu Agent": {
      "main": [
        [
          {
            "node": "Append row in sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Post Agent": {
      "main": [
        [
          {
            "node": "Create Direct Message",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Leftovers Agent": {
      "main": [
        [
          {
            "node": "Append row in sheet2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Nutritionist Agent": {
      "main": [
        [
          {
            "node": "Append row in sheet1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Append row in sheet": {
      "main": [
        [
          {
            "node": "Leftovers Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Append row in sheet1": {
      "main": [
        [
          {
            "node": "Post Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Append row in sheet2": {
      "main": [
        [
          {
            "node": "Nutritionist Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenRouter Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "Menu Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "OpenRouter Chat Model1": {
      "ai_languageModel": [
        [
          {
            "node": "Post Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "OpenRouter Chat Model2": {
      "ai_languageModel": [
        [
          {
            "node": "Nutritionist Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "OpenRouter Chat Model3": {
      "ai_languageModel": [
        [
          {
            "node": "Leftovers Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Structured Output Parser": {
      "ai_outputParser": [
        [
          {
            "node": "Menu Agent",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    }
  }
}