{
  "workflow": {
    "id": 5499,
    "name": "Expose AWS budgets API operations to AI agents via MCP server",
    "views": 154,
    "recentViews": 0,
    "totalViews": 154,
    "createdAt": "2025-07-01T04:29:18.993Z",
    "description": "Need help? Want access to this workflow + many more paid workflows + live Q&A sessions with a top verified n8n creator?\n\n[Join the community](https://www.skool.com/beyond-nodes-automation-lab-2006/about)\n\nComplete MCP server exposing 23 AWS Budgets API operations to AI agents.\n\n## ⚡ Quick Setup\n\n1. **Import** this workflow into your n8n instance\n2. **Credentials** Add AWS Budgets credentials\n3. **Activate** the workflow to start your MCP server\n4. **Copy** the webhook URL from the MCP trigger node\n5. **Connect** AI agents using the MCP URL\n\n## 🔧 How it Works\n\nThis workflow converts the AWS Budgets API into an MCP-compatible interface for AI agents.\n\n• **MCP Trigger**: Serves as your server endpoint for AI agent requests\n• **HTTP Request Nodes**: Handle API calls to https://budgets.amazonaws.com\n• **AI Expressions**: Automatically populate parameters via `$fromAI()` placeholders\n• **Native Integration**: Returns responses directly to the AI agent\n\n## 📋 Available Operations (23 total)\n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Createbudget (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.CreateBudget**: <p>Creates a budget and, if included, notifications and subscribers. </p> &lt;important&gt; <p>Only one of <code>BudgetLimit</code> or <code>PlannedBudgetLimits</code> can be present in the syntax at one time. Use the syntax that matches your case. The Request Syntax section shows the <code>BudgetLimit</code> syntax. For <code>PlannedBudgetLimits</code>, see the <a href=\"https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_budgets_CreateBudget.html#API_CreateBudget_Examples\">Examples</a> section. </p> &lt;/important&gt;\n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Createbudgetaction (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.CreateBudgetAction**:  Creates a budget action. \n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Createnotification (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.CreateNotification**: Creates a notification. You must create the budget before you create the associated notification.\n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Createsubscriber (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.CreateSubscriber**: Creates a subscriber. You must create the associated budget and notification before you create the subscriber.\n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Deletebudget (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.DeleteBudget**: <p>Deletes a budget. You can delete your budget at any time.</p> &lt;important&gt; <p>Deleting a budget also deletes the notifications and subscribers that are associated with that budget.</p> &lt;/important&gt;\n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Deletebudgetaction (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.DeleteBudgetAction**:  Deletes a budget action. \n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Deletenotification (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.DeleteNotification**: <p>Deletes a notification.</p> &lt;important&gt; <p>Deleting a notification also deletes the subscribers that are associated with the notification.</p> &lt;/important&gt;\n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Deletesubscriber (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.DeleteSubscriber**: <p>Deletes a subscriber.</p> &lt;important&gt; <p>Deleting the last subscriber to a notification also deletes the notification.</p> &lt;/important&gt;\n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Describebudget (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.DescribeBudget**: <p>Describes a budget.</p> &lt;important&gt; <p>The Request Syntax section shows the <code>BudgetLimit</code> syntax. For <code>PlannedBudgetLimits</code>, see the <a href=\"https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_budgets_DescribeBudget.html#API_DescribeBudget_Examples\">Examples</a> section. </p> &lt;/important&gt;\n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Describebudgetaction (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.DescribeBudgetAction**:  Describes a budget action detail. \n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Describebudgetactionhistories (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.DescribeBudgetActionHistories**:  Describes a budget action history detail. \n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Describebudgetactionsforaccount (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.DescribeBudgetActionsForAccount**:  Describes all of the budget actions for an account. \n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Describebudgetactionsforbudget (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.DescribeBudgetActionsForBudget**:  Describes all of the budget actions for a budget. \n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Describebudgetnotificationsforaccount (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.DescribeBudgetNotificationsForAccount**:  Lists the budget names and notifications that are associated with an account. \n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Describebudgetperformancehistory (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.DescribeBudgetPerformanceHistory**: Describes the history for <code>DAILY</code>, <code>MONTHLY</code>, and <code>QUARTERLY</code> budgets. Budget history isn't available for <code>ANNUAL</code> budgets.\n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Describebudgets (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.DescribeBudgets**: <p>Lists the budgets that are associated with an account.</p> &lt;important&gt; <p>The Request Syntax section shows the <code>BudgetLimit</code> syntax. For <code>PlannedBudgetLimits</code>, see the <a href=\"https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_budgets_DescribeBudgets.html#API_DescribeBudgets_Examples\">Examples</a> section. </p> &lt;/important&gt;\n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Describenotificationsforbudget (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.DescribeNotificationsForBudget**: Lists the notifications that are associated with a budget.\n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Describesubscribersfornotification (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.DescribeSubscribersForNotification**: Lists the subscribers that are associated with a notification.\n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Executebudgetaction (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.ExecuteBudgetAction**:  Executes a budget action. \n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Updatebudget (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.UpdateBudget**: <p>Updates a budget. You can change every part of a budget except for the <code>budgetName</code> and the <code>calculatedSpend</code>. When you modify a budget, the <code>calculatedSpend</code> drops to zero until Amazon Web Services has new usage data to use for forecasting.</p> &lt;important&gt; <p>Only one of <code>BudgetLimit</code> or <code>PlannedBudgetLimits</code> can be present in the syntax at one time. Use the syntax that matches your case. The Request Syntax section shows the <code>BudgetLimit</code> syntax. For <code>PlannedBudgetLimits</code>, see the <a href=\"https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_budgets_UpdateBudget.html#API_UpdateBudget_Examples\">Examples</a> section. </p> &lt;/important&gt;\n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Updatebudgetaction (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.UpdateBudgetAction**:  Updates a budget action. \n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Updatenotification (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.UpdateNotification**: Updates a notification.\n\n### 🔧 #X-Amz-Target=Awsbudgetservicegateway.Updatesubscriber (1 endpoints)\n\n• **POST /#X-Amz-Target=AWSBudgetServiceGateway.UpdateSubscriber**: Updates a subscriber.\n\n## 🤖 AI Integration\n\n**Parameter Handling**: AI agents automatically provide values for:\n• Path parameters and identifiers\n• Query parameters and filters\n• Request body data\n• Headers and authentication\n\n**Response Format**: Native AWS Budgets API responses with full data structure\n\n**Error Handling**: Built-in n8n HTTP request error management\n\n## 💡 Usage Examples\n\nConnect this MCP server to any AI agent or workflow:\n\n• **Claude Desktop**: Add MCP server URL to configuration\n• **Cursor**: Add MCP server SSE URL to configuration\n• **Custom AI Apps**: Use MCP URL as tool endpoint\n• **API Integration**: Direct HTTP calls to MCP endpoints\n\n## ✨ Benefits\n\n• **Zero Setup**: No parameter mapping or configuration needed\n• **AI-Ready**: Built-in `$fromAI()` expressions for all parameters\n• **Production Ready**: Native n8n HTTP request handling and logging\n• **Extensible**: Easily modify or add custom logic\n\n&gt; 🆓 **[Free for community use](https://github.com/Cfomodz/community-use)!** Ready to deploy in under 2 minutes.",
    "workflow": {
      "id": "pQKFJUEwOALQ4cKH",
      "meta": null,
      "name": "AWS Budgets MCP Server",
      "tags": [],
      "nodes": [
        {
          "id": "0419db81-eb8c-47f0-a6d1-7463097de538",
          "name": "Setup Instructions",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -1380,
            -240
          ],
          "parameters": {
            "color": 4,
            "height": 1060,
            "content": "### ⚙️ Setup Instructions\n\n1. **Import Workflow**: \nLoad this workflow into your n8n instance\n\n2. **Configure Authentication**: \nSet up apiKey credentials\n   - Type: API Key in header\n   - Key name: Authorization\n\n3. **Activate Workflow**:\nEnable the workflow to start the MCP server\n\n4. **Get MCP URL**: \nCopy the webhook URL from the MCP trigger\n\n5. **Connect AI Agent**:\nUse the MCP URL in your AI agent configuration\n\n\n### 💡 Usage Notes\n• Parameters are auto-populated by AI using $fromAI() expressions\n• With 23 API endpoints available as tools\n• Responses maintain original API structure\n\n\n### 🛠️ Customization\n• Add data transformation nodes if needed\n• Implement custom error handling\n• Add logging or monitoring nodes\n\n• Modify parameter defaults in any HTTP request node as needed\n\n### 💬 Need Help?\nPing me on [discord](https://discord.me/cfomodz) for integration guidance and custom automations. Check the [n8n documentation](https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.toolmcp/) for more information."
          },
          "typeVersion": 1
        },
        {
          "id": "a82050e7-6524-4ab1-b118-640d610ec098",
          "name": "Workflow Overview",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -1120,
            -100
          ],
          "parameters": {
            "width": 320,
            "height": 1280,
            "content": "## 🛠️ AWS Budgets MCP Server ✅ 23 operations\n\n### About\nUse the Amazon Web Services Budgets API to plan your service usage, service costs, and instance reservations. This API reference provides descriptions, syntax, and usage examples for each of the actions and data types for the Amazon Web Services Budgets feature. Budgets provide you with a way to see the following information: How close your plan is to your budgeted amount or to the free tier limits Your usage-to-date, including how much you've used of your Reserved Instances (RIs) Your current estimated charges from Amazon Web Services, and how much your predicted usage will accrue in charges by the end of the month How much of your budget has been used Amazon Web Services updates your budget status several times a day. Budgets track your unblended costs, subscriptions, refunds, and RIs. You can create the following types of budgets: Cost budgets - Plan how much you want to spend on a service. Usage budgets - Plan how much you want to use one or more services. RI utilization budgets - Define a utilization threshold, and receive alerts when your RI usage falls below that threshold. This lets you see if your RIs are unused or under-utilized. RI coverage budgets - Define a coverage threshold, and receive alerts when the number of your instance hours that are covered by RIs fall below that threshold. This lets you see how much of your instance usage is covered by a reservation. Service Endpoint The Amazon Web Services Budgets API provides the following endpoint: https://budgets.amazonaws.com For information about costs that are associated with the Amazon Web Services Budgets API, see Amazon Web Services Cost Management Pricing.\n\n### 🔧 How it Works\n\nThis workflow converts the AWS Budgets API into an MCP-compatible interface for AI agents.\n\n• **MCP Trigger**: Serves as your server endpoint for AI agent requests\n• **HTTP Request Nodes**: Handle API calls to https://budgets.amazonaws.com\n• **AI Expressions**: Automatically populate parameters via `$fromAI()` placeholders\n• **Native Integration**: Returns responses directly to the AI agent\n"
          },
          "typeVersion": 1
        },
        {
          "id": "8e85eda4-391c-4c85-9470-3a02266618ca",
          "name": "AWS Budgets MCP Server",
          "type": "@n8n/n8n-nodes-langchain.mcpTrigger",
          "position": [
            -940,
            -240
          ],
          "webhookId": "ffc8515b-72ba-4227-808a-9e300405c3a5",
          "parameters": {
            "path": "aws-budgets-mcp"
          },
          "typeVersion": 1
        },
        {
          "id": "e5da4de9-9ec3-444a-83a1-a5813b880347",
          "name": "Creates a budget and, if included, notifications a",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            -400,
            -200
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.CreateBudget",
            "method": "POST",
            "options": {},
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "toolDescription": "Creates a budget and, if included, notifications and subscribers. Only one of BudgetLimit or PlannedBudgetLimits can be present in the syntax at one time. Use the syntax that matches your case. The Request Syntax section shows the BudgetLimit syntax. For PlannedBudgetLimits, see the <a href=\"https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_budgets_CreateBudget.html#API_CreateBudget_Examples\">Examples</a> section. </important>\n\nParameters:\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "03998058-e01a-4df1-a54c-f815986ad3f7",
          "name": "Grid Note 1",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -500,
            -260
          ],
          "parameters": {
            "color": 7,
            "height": 220,
            "content": "## Create Budget"
          },
          "typeVersion": 1
        },
        {
          "id": "e767b54d-d3cc-47f1-aa0d-b9067d75a24a",
          "name": "Creates a budget action.",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            -120,
            -200
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.CreateBudgetAction",
            "method": "POST",
            "options": {},
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "toolDescription": "Creates a budget action.\n\nParameters:\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "33e0a718-d57c-400e-8ab7-68b421e45980",
          "name": "Grid Note 2",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -240,
            -260
          ],
          "parameters": {
            "color": 7,
            "width": 280,
            "height": 220,
            "content": "## Create Budget Action"
          },
          "typeVersion": 1
        },
        {
          "id": "0b39770f-2c4a-49bd-b69e-28e06f049b6f",
          "name": "Creates a notification. You must create the budget",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            160,
            -200
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.CreateNotification",
            "method": "POST",
            "options": {},
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "toolDescription": "Creates a notification. You must create the budget before you create the associated notification.\n\nParameters:\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "310e71e9-915e-4b2e-ac7e-79279877b461",
          "name": "Grid Note 3",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            60,
            -260
          ],
          "parameters": {
            "color": 7,
            "width": 260,
            "height": 220,
            "content": "## Create Notification"
          },
          "typeVersion": 1
        },
        {
          "id": "2d04aae8-ce1f-4afc-8200-bdd49b9eb45a",
          "name": "Creates a subscriber. You must create the associat",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            440,
            -200
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.CreateSubscriber",
            "method": "POST",
            "options": {},
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "toolDescription": "Creates a subscriber. You must create the associated budget and notification before you create the subscriber.\n\nParameters:\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "73063b88-5a9e-4e06-869b-bb4f7e25cd0b",
          "name": "Grid Note 4",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            340,
            -260
          ],
          "parameters": {
            "color": 7,
            "height": 220,
            "content": "## Create Subscriber"
          },
          "typeVersion": 1
        },
        {
          "id": "b824f5ac-2fa2-4864-977a-d981f62cdc63",
          "name": "Deletes a budget. You can delete your budget at an",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            720,
            -200
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.DeleteBudget",
            "method": "POST",
            "options": {},
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "toolDescription": "Deletes a budget. You can delete your budget at any time. Deleting a budget also deletes the notifications and subscribers that are associated with that budget. </important>\n\nParameters:\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "eb6c541e-446d-4faa-a255-fa63f52c0a46",
          "name": "Grid Note 5",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            620,
            -260
          ],
          "parameters": {
            "color": 7,
            "height": 220,
            "content": "## Delete Budget"
          },
          "typeVersion": 1
        },
        {
          "id": "34226dec-3a2e-48d2-a871-ef94199168c9",
          "name": "Deletes a budget action.",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            -680,
            20
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.DeleteBudgetAction",
            "method": "POST",
            "options": {},
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "toolDescription": "Deletes a budget action.\n\nParameters:\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "7919b02b-f5e0-4fd0-8daa-3e652864a28c",
          "name": "Grid Note 6",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -800,
            -40
          ],
          "parameters": {
            "color": 7,
            "width": 280,
            "height": 220,
            "content": "## Delete Budget Action"
          },
          "typeVersion": 1
        },
        {
          "id": "f319ba00-b98d-4b2b-8fa2-c5aa7faf185b",
          "name": "Deletes a notification. Deleting a notification al",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            -400,
            20
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.DeleteNotification",
            "method": "POST",
            "options": {},
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "toolDescription": "Deletes a notification. Deleting a notification also deletes the subscribers that are associated with the notification. </important>\n\nParameters:\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "a6fd893c-7afc-4488-92d6-24d4d1a44059",
          "name": "Grid Note 7",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -500,
            -40
          ],
          "parameters": {
            "color": 7,
            "width": 260,
            "height": 220,
            "content": "## Delete Notification"
          },
          "typeVersion": 1
        },
        {
          "id": "72505a7a-d70c-4986-b219-3939c9a181c1",
          "name": "Deletes a subscriber. Deleting the last subscriber",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            -120,
            20
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.DeleteSubscriber",
            "method": "POST",
            "options": {},
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "toolDescription": "Deletes a subscriber. Deleting the last subscriber to a notification also deletes the notification. </important>\n\nParameters:\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "04674377-bd8c-4692-8ea1-d467fa07bff5",
          "name": "Grid Note 8",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -220,
            -40
          ],
          "parameters": {
            "color": 7,
            "height": 220,
            "content": "## Delete Subscriber"
          },
          "typeVersion": 1
        },
        {
          "id": "478da148-ab0d-49d4-a200-dd0b78dbf385",
          "name": "Describes a budget. The Request Syntax section sho",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            160,
            20
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.DescribeBudget",
            "method": "POST",
            "options": {},
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "toolDescription": "Describes a budget. The Request Syntax section shows the BudgetLimit syntax. For PlannedBudgetLimits, see the <a href=\"https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_budgets_DescribeBudget.html#API_DescribeBudget_Examples\">Examples</a> section. </important>\n\nParameters:\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "c843cf1c-1c89-4bf7-b382-4d97b73c9fb3",
          "name": "Grid Note 9",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            60,
            -40
          ],
          "parameters": {
            "color": 7,
            "height": 220,
            "content": "## Describe Budget"
          },
          "typeVersion": 1
        },
        {
          "id": "f088104f-1b6a-4ef0-a3e9-382057e3cdaa",
          "name": "Describes a budget action detail.",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            440,
            20
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.DescribeBudgetAction",
            "method": "POST",
            "options": {},
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "toolDescription": "Describes a budget action detail.\n\nParameters:\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "5665481b-676e-4cf2-8f5f-fe73bbeb6f3a",
          "name": "Grid Note 10",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            340,
            -40
          ],
          "parameters": {
            "color": 7,
            "height": 220,
            "content": "### Describe Budget Action"
          },
          "typeVersion": 1
        },
        {
          "id": "15c764ef-b7a1-4e55-a17c-0d55d124d6c5",
          "name": "Describes a budget action history detail.",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            720,
            20
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.DescribeBudgetActionHistories",
            "method": "POST",
            "options": {},
            "sendQuery": true,
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "queryParameters": {
              "parameters": [
                {
                  "name": "MaxResults",
                  "value": "={{ $fromAI('MaxResults', 'Pagination limit', 'string') }}"
                },
                {
                  "name": "NextToken",
                  "value": "={{ $fromAI('NextToken', 'Pagination token', 'string') }}"
                }
              ]
            },
            "toolDescription": "Describes a budget action history detail.\n\nParameters:\n- Query parameters:\n  • MaxResults (optional) - Pagination limit\n  • NextToken (optional) - Pagination token\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "19bcc7a0-f40b-4efe-a9f2-c356b6de5fa1",
          "name": "Grid Note 11",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            620,
            -40
          ],
          "parameters": {
            "color": 7,
            "height": 220,
            "content": "### Describe Budget Action Histories"
          },
          "typeVersion": 1
        },
        {
          "id": "e234f928-7b37-4450-bee4-e6279f37d4bc",
          "name": "Describes all of the budget actions for an account",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            -680,
            240
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.DescribeBudgetActionsForAccount",
            "method": "POST",
            "options": {},
            "sendQuery": true,
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "queryParameters": {
              "parameters": [
                {
                  "name": "MaxResults",
                  "value": "={{ $fromAI('MaxResults', 'Pagination limit', 'string') }}"
                },
                {
                  "name": "NextToken",
                  "value": "={{ $fromAI('NextToken', 'Pagination token', 'string') }}"
                }
              ]
            },
            "toolDescription": "Describes all of the budget actions for an account.\n\nParameters:\n- Query parameters:\n  • MaxResults (optional) - Pagination limit\n  • NextToken (optional) - Pagination token\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "bf2d086e-d401-4c08-87e2-d2f851ff92ce",
          "name": "Grid Note 12",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -780,
            180
          ],
          "parameters": {
            "color": 7,
            "height": 220,
            "content": "### Describe Budget Actions For Account"
          },
          "typeVersion": 1
        },
        {
          "id": "b6db8459-365f-4c73-8169-1c5825a99eb7",
          "name": "Describes all of the budget actions for a budget.",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            -400,
            240
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.DescribeBudgetActionsForBudget",
            "method": "POST",
            "options": {},
            "sendQuery": true,
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "queryParameters": {
              "parameters": [
                {
                  "name": "MaxResults",
                  "value": "={{ $fromAI('MaxResults', 'Pagination limit', 'string') }}"
                },
                {
                  "name": "NextToken",
                  "value": "={{ $fromAI('NextToken', 'Pagination token', 'string') }}"
                }
              ]
            },
            "toolDescription": "Describes all of the budget actions for a budget.\n\nParameters:\n- Query parameters:\n  • MaxResults (optional) - Pagination limit\n  • NextToken (optional) - Pagination token\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "577758f1-75dd-4f83-872f-597b38883617",
          "name": "Grid Note 13",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -500,
            180
          ],
          "parameters": {
            "color": 7,
            "height": 220,
            "content": "### Describe Budget Actions For Budget"
          },
          "typeVersion": 1
        },
        {
          "id": "283a6464-53c9-48e0-a2a2-29e61dd54581",
          "name": "Lists the budget names and notifications that are ",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            -120,
            240
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.DescribeBudgetNotificationsForAccount",
            "method": "POST",
            "options": {},
            "sendQuery": true,
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "queryParameters": {
              "parameters": [
                {
                  "name": "MaxResults",
                  "value": "={{ $fromAI('MaxResults', 'Pagination limit', 'string') }}"
                },
                {
                  "name": "NextToken",
                  "value": "={{ $fromAI('NextToken', 'Pagination token', 'string') }}"
                }
              ]
            },
            "toolDescription": "Lists the budget names and notifications that are associated with an account.\n\nParameters:\n- Query parameters:\n  • MaxResults (optional) - Pagination limit\n  • NextToken (optional) - Pagination token\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "15fda8f9-a760-423f-a7ef-e58787a09398",
          "name": "Grid Note 14",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -220,
            180
          ],
          "parameters": {
            "color": 7,
            "height": 220,
            "content": "### Describe Budget Notifications For Account"
          },
          "typeVersion": 1
        },
        {
          "id": "3f1c4a16-43bc-4c16-80d5-5b6e55fe5338",
          "name": "Describes the history for DAILY, MONTHLY, and QUAR",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            160,
            240
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.DescribeBudgetPerformanceHistory",
            "method": "POST",
            "options": {},
            "sendQuery": true,
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "queryParameters": {
              "parameters": [
                {
                  "name": "MaxResults",
                  "value": "={{ $fromAI('MaxResults', 'Pagination limit', 'string') }}"
                },
                {
                  "name": "NextToken",
                  "value": "={{ $fromAI('NextToken', 'Pagination token', 'string') }}"
                }
              ]
            },
            "toolDescription": "Describes the history for DAILY, MONTHLY, and QUARTERLY budgets. Budget history isn't available for ANNUAL budgets.\n\nParameters:\n- Query parameters:\n  • MaxResults (optional) - Pagination limit\n  • NextToken (optional) - Pagination token\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "08b7ab75-c881-4fd9-8289-9f59120b0937",
          "name": "Grid Note 15",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            60,
            180
          ],
          "parameters": {
            "color": 7,
            "height": 220,
            "content": "### Describe Budget Performance History"
          },
          "typeVersion": 1
        },
        {
          "id": "a843fe90-e910-4c44-97df-d6cc00a96ae9",
          "name": "Lists the budgets that are associated with an acco",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            440,
            240
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.DescribeBudgets",
            "method": "POST",
            "options": {},
            "sendQuery": true,
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "queryParameters": {
              "parameters": [
                {
                  "name": "MaxResults",
                  "value": "={{ $fromAI('MaxResults', 'Pagination limit', 'string') }}"
                },
                {
                  "name": "NextToken",
                  "value": "={{ $fromAI('NextToken', 'Pagination token', 'string') }}"
                }
              ]
            },
            "toolDescription": "Lists the budgets that are associated with an account. The Request Syntax section shows the BudgetLimit syntax. For PlannedBudgetLimits, see the <a href=\"https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_budgets_DescribeBudgets.html#API_DescribeBudgets_Examples\">Examples</a> section. </important>\n\nParameters:\n- Query parameters:\n  • MaxResults (optional) - Pagination limit\n  • NextToken (optional) - Pagination token\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "a761ccab-740d-47d1-aaba-2eef863b3818",
          "name": "Grid Note 16",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            340,
            180
          ],
          "parameters": {
            "color": 7,
            "height": 220,
            "content": "## Describe Budgets"
          },
          "typeVersion": 1
        },
        {
          "id": "e1b9f907-cb9b-453e-a67e-d4ffaef863d1",
          "name": "Lists the notifications that are associated with a",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            720,
            240
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.DescribeNotificationsForBudget",
            "method": "POST",
            "options": {},
            "sendQuery": true,
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "queryParameters": {
              "parameters": [
                {
                  "name": "MaxResults",
                  "value": "={{ $fromAI('MaxResults', 'Pagination limit', 'string') }}"
                },
                {
                  "name": "NextToken",
                  "value": "={{ $fromAI('NextToken', 'Pagination token', 'string') }}"
                }
              ]
            },
            "toolDescription": "Lists the notifications that are associated with a budget.\n\nParameters:\n- Query parameters:\n  • MaxResults (optional) - Pagination limit\n  • NextToken (optional) - Pagination token\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "a28cc390-6362-4646-8542-2fb1efa47c9c",
          "name": "Grid Note 17",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            620,
            180
          ],
          "parameters": {
            "color": 7,
            "height": 220,
            "content": "### Describe Notifications For Budget"
          },
          "typeVersion": 1
        },
        {
          "id": "fbdefb25-a465-4e82-abbc-4f3fca56a935",
          "name": "Lists the subscribers that are associated with a n",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            -680,
            460
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.DescribeSubscribersForNotification",
            "method": "POST",
            "options": {},
            "sendQuery": true,
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "queryParameters": {
              "parameters": [
                {
                  "name": "MaxResults",
                  "value": "={{ $fromAI('MaxResults', 'Pagination limit', 'string') }}"
                },
                {
                  "name": "NextToken",
                  "value": "={{ $fromAI('NextToken', 'Pagination token', 'string') }}"
                }
              ]
            },
            "toolDescription": "Lists the subscribers that are associated with a notification.\n\nParameters:\n- Query parameters:\n  • MaxResults (optional) - Pagination limit\n  • NextToken (optional) - Pagination token\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "cd3dbdfc-f33e-457c-8c7d-195951f5ba6a",
          "name": "Grid Note 18",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -780,
            400
          ],
          "parameters": {
            "color": 7,
            "height": 220,
            "content": "### Describe Subscribers For Notification"
          },
          "typeVersion": 1
        },
        {
          "id": "8ccafcc4-985e-4e9d-912d-289adf986c81",
          "name": "Executes a budget action.",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            -400,
            460
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.ExecuteBudgetAction",
            "method": "POST",
            "options": {},
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "toolDescription": "Executes a budget action.\n\nParameters:\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "7ed4a00e-686f-4d02-8e5a-532ef20e51e9",
          "name": "Grid Note 19",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -520,
            400
          ],
          "parameters": {
            "color": 7,
            "width": 280,
            "height": 220,
            "content": "## Execute Budget Action"
          },
          "typeVersion": 1
        },
        {
          "id": "a48aa9e2-16af-414e-8875-b4f288a57a73",
          "name": "Updates a budget. You can change every part of a b",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            -120,
            460
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.UpdateBudget",
            "method": "POST",
            "options": {},
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "toolDescription": "Updates a budget. You can change every part of a budget except for the budgetName and the calculatedSpend. When you modify a budget, the calculatedSpend drops to zero until Amazon Web Services has new usage data to use for forecasting. Only one of BudgetLimit or PlannedBudgetLimits can be present in the syntax at one time. Use the syntax that matches your case. The Request Syntax section shows the BudgetLimit syntax. For PlannedBudgetLimits, see the <a href=\"https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_budgets_UpdateBudget.html#API_UpdateBudget_Examples\">Examples</a> section. </important>\n\nParameters:\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "1c90102d-2de8-4069-b5de-a0421d4a0ad8",
          "name": "Grid Note 20",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -220,
            400
          ],
          "parameters": {
            "color": 7,
            "height": 220,
            "content": "## Update Budget"
          },
          "typeVersion": 1
        },
        {
          "id": "34d16c68-7351-4e79-83c6-79c83b2db4b4",
          "name": "Updates a budget action.",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            160,
            460
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.UpdateBudgetAction",
            "method": "POST",
            "options": {},
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "toolDescription": "Updates a budget action.\n\nParameters:\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "21f15108-a46b-4181-9dd1-d55c1b525cfe",
          "name": "Grid Note 21",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            40,
            400
          ],
          "parameters": {
            "color": 7,
            "width": 280,
            "height": 220,
            "content": "## Update Budget Action"
          },
          "typeVersion": 1
        },
        {
          "id": "fdf849e2-5f31-4580-b0be-bf36968af1ec",
          "name": "Updates a notification.",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            440,
            460
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.UpdateNotification",
            "method": "POST",
            "options": {},
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "toolDescription": "Updates a notification.\n\nParameters:\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "bfc78ea5-e844-442f-bc78-ac768123cb22",
          "name": "Grid Note 22",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            340,
            400
          ],
          "parameters": {
            "color": 7,
            "width": 260,
            "height": 220,
            "content": "## Update Notification"
          },
          "typeVersion": 1
        },
        {
          "id": "dba39d23-e5eb-40e1-9422-bfe1384e3121",
          "name": "Updates a subscriber.",
          "type": "n8n-nodes-base.httpRequestTool",
          "position": [
            720,
            460
          ],
          "parameters": {
            "url": "=https://budgets.amazonaws.com/#X-Amz-Target=AWSBudgetServiceGateway.UpdateSubscriber",
            "method": "POST",
            "options": {},
            "sendHeaders": true,
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "toolDescription": "Updates a subscriber.\n\nParameters:\n- Header parameters:\n  • X-Amz-Target (required)",
            "headerParameters": {
              "parameters": [
                {
                  "name": "X-Amz-Target",
                  "value": "={{ $fromAI('X-Amz-Target', 'X Amz Target', 'string') }}"
                }
              ]
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "32795320-ec91-4307-9135-7152067f639a",
          "name": "Grid Note 23",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            620,
            400
          ],
          "parameters": {
            "color": 7,
            "height": 220,
            "content": "## Update Subscriber"
          },
          "typeVersion": 1
        }
      ],
      "active": false,
      "shared": [
        {
          "role": "workflow:owner",
          "project": {
            "id": "G5fce9xGuBAsWBXe",
            "icon": null,
            "name": "David Ashby <david.ashby.lds@gmail.com>",
            "type": "personal",
            "createdAt": "2025-06-04T02:55:02.013Z",
            "updatedAt": "2025-06-04T02:56:01.361Z",
            "projectRelations": [
              {
                "role": "project:personalOwner",
                "user": {
                  "id": "715c1c00-cb48-4712-9a32-f1f4b6db2b30",
                  "role": "global:owner",
                  "email": "david.ashby.lds@gmail.com",
                  "disabled": false,
                  "lastName": "Ashby",
                  "settings": {
                    "npsSurvey": {
                      "responded": true,
                      "lastShownAt": 1749357655581
                    },
                    "userActivated": true,
                    "userActivatedAt": 1749075994495,
                    "easyAIWorkflowOnboarded": true,
                    "firstSuccessfulWorkflowId": "3N3vVikZb3MckFYm"
                  },
                  "createdAt": "2025-06-04T02:55:01.745Z",
                  "firstName": "David",
                  "isPending": false,
                  "updatedAt": "2025-06-08T04:40:58.399Z",
                  "mfaEnabled": false,
                  "personalizationAnswers": {
                    "version": "v4",
                    "personalization_survey_n8n_version": "1.95.3",
                    "personalization_survey_submitted_at": "2025-06-04T02:56:07.075Z"
                  }
                },
                "userId": "715c1c00-cb48-4712-9a32-f1f4b6db2b30",
                "createdAt": "2025-06-04T02:55:02.013Z",
                "projectId": "G5fce9xGuBAsWBXe",
                "updatedAt": "2025-06-04T02:55:02.013Z"
              }
            ]
          },
          "createdAt": "2025-07-01T04:28:27.119Z",
          "projectId": "G5fce9xGuBAsWBXe",
          "updatedAt": "2025-07-01T04:28:27.119Z",
          "workflowId": "pQKFJUEwOALQ4cKH"
        }
      ],
      "pinData": {},
      "settings": {
        "timezone": "America/New_York"
      },
      "createdAt": "2025-07-01T04:28:27.117Z",
      "updatedAt": "2025-07-01T04:29:03.000Z",
      "versionId": "c4963255-d67d-4876-ab83-727b134b30d9",
      "isArchived": false,
      "staticData": null,
      "connections": {
        "Updates a subscriber.": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "Updates a notification.": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "Creates a budget action.": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "Deletes a budget action.": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "Updates a budget action.": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "Executes a budget action.": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "Describes a budget action detail.": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "Describes a budget action history detail.": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "Describes all of the budget actions for a budget.": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "Creates a budget and, if included, notifications a": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "Creates a notification. You must create the budget": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "Creates a subscriber. You must create the associat": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "Deletes a budget. You can delete your budget at an": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "Deletes a notification. Deleting a notification al": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "Deletes a subscriber. Deleting the last subscriber": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "Describes a budget. The Request Syntax section sho": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "Describes all of the budget actions for an account": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "Describes the history for DAILY, MONTHLY, and QUAR": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "Lists the budget names and notifications that are ": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "Lists the budgets that are associated with an acco": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "Lists the notifications that are associated with a": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "Lists the subscribers that are associated with a n": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "Updates a budget. You can change every part of a b": {
          "ai_tool": [
            [
              {
                "node": "AWS Budgets MCP Server",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        }
      },
      "triggerCount": 0
    },
    "lastUpdatedBy": 29,
    "workflowInfo": {
      "nodeCount": 49,
      "nodeTypes": {
        "n8n-nodes-base.stickyNote": {
          "count": 25
        },
        "n8n-nodes-base.httpRequestTool": {
          "count": 23
        },
        "@n8n/n8n-nodes-langchain.mcpTrigger": {
          "count": 1
        }
      }
    },
    "status": "published",
    "user": {
      "name": "David Ashby",
      "username": "cfomodz",
      "bio": "Unlimited Access to my paid workflows 👇 For the cost of one a month",
      "verified": true,
      "links": [
        "https://www.skool.com/n8n-automation-lab"
      ],
      "avatar": "https://gravatar.com/avatar/0118796cfdab829a3307d407dfeeb01a3952eb402584a45a211e4ef7d15edbbf?r=pg&d=retro&size=200"
    },
    "nodes": [
      {
        "id": 565,
        "icon": "fa:sticky-note",
        "name": "n8n-nodes-base.stickyNote",
        "codex": {
          "data": {
            "alias": [
              "Comments",
              "Notes",
              "Sticky"
            ],
            "categories": [
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Helpers"
              ]
            }
          }
        },
        "group": "[\"input\"]",
        "defaults": {
          "name": "Sticky Note",
          "color": "#FFD233"
        },
        "iconData": {
          "icon": "sticky-note",
          "type": "icon"
        },
        "displayName": "Sticky Note",
        "typeVersion": 1,
        "nodeCategories": [
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 1293,
        "icon": "file:../mcp.svg",
        "name": "@n8n/n8n-nodes-langchain.mcpTrigger",
        "codex": {
          "data": {
            "alias": [
              "Model Context Protocol",
              "MCP Server"
            ],
            "resources": {
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-langchain.mcptrigger/"
                }
              ]
            },
            "categories": [
              "AI",
              "Core Nodes",
              "Langchain"
            ],
            "subcategories": {
              "AI": [
                "Root Nodes",
                "Model Context Protocol"
              ],
              "Core Nodes": [
                "Other Trigger Nodes"
              ]
            }
          }
        },
        "group": "[\"trigger\"]",
        "defaults": {
          "name": "MCP Server Trigger"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgwIiBoZWlnaHQ9IjE4MCIgdmlld0JveD0iMCAwIDE5NSAxOTUiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+Cgk8ZyBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMTIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCI+CgkJPHBhdGggZD0iTTI1IDk3Ljg1MjhMOTIuODgyMyAyOS45NzA2QzEwMi4yNTUgMjAuNTk4IDExNy40NTEgMjAuNTk4IDEyNi44MjMgMjkuOTcwNlYyOS45NzA2QzEzNi4xOTYgMzkuMzQzMSAxMzYuMTk2IDU0LjUzOTEgMTI2LjgyMyA2My45MTE3TDc1LjU1ODEgMTE1LjE3NyIvPgoJCTxwYXRoIGQ9Ik03Ni4yNjUzIDExNC40N0wxMjYuODIzIDYzLjkxMTdDMTM2LjE5NiA1NC41MzkxIDE1MS4zOTIgNTQuNTM5MSAxNjAuNzY1IDYzLjkxMTdMMTYxLjExOCA2NC4yNjUyQzE3MC40OTEgNzMuNjM3OCAxNzAuNDkxIDg4LjgzMzggMTYxLjExOCA5OC4yMDYzTDk5LjcyNDggMTU5LjZDOTYuNjAwNiAxNjIuNzI0IDk2LjYwMDYgMTY3Ljc4OSA5OS43MjQ4IDE3MC45MTNMMTEyLjMzMSAxODMuNTIiLz4KCQk8cGF0aCBkPSJNMTA5Ljg1MyA0Ni45NDExTDU5LjY0ODIgOTcuMTQ1N0M1MC4yNzU3IDEwNi41MTggNTAuMjc1NyAxMjEuNzE0IDU5LjY0ODIgMTMxLjA4N1YxMzEuMDg3QzY5LjAyMDggMTQwLjQ1OSA4NC4yMTY4IDE0MC40NTkgOTMuNTg5NCAxMzEuMDg3TDE0My43OTQgODAuODgyMiIvPgoJPC9nPgo8L3N2Zz4K"
        },
        "displayName": "MCP Server Trigger",
        "typeVersion": 2,
        "nodeCategories": [
          {
            "id": 9,
            "name": "Core Nodes"
          },
          {
            "id": 25,
            "name": "AI"
          },
          {
            "id": 26,
            "name": "Langchain"
          }
        ]
      }
    ],
    "categories": [
      {
        "id": 16,
        "name": "DevOps"
      },
      {
        "id": 47,
        "name": "AI Chatbot"
      }
    ],
    "image": []
  }
}