Serveur MCP du service de rapport sur les coûts et l'utilisation d'AWS

Intermédiaire

Ceci est unDevOps, AI RAGworkflow d'automatisation du domainecontenant 11 nœuds.Utilise principalement des nœuds comme HttpRequestTool, McpTrigger. Gestion des rapports de coûts et d'utilisation AWS pour les agents IA

Prérequis
  • Peut nécessiter les informations d'identification d'authentification de l'API cible

Catégorie

Aperçu du workflow
Visualisation des connexions entre les nœuds, avec support du zoom et du déplacement
Exporter le workflow
Copiez la configuration JSON suivante dans n8n pour importer et utiliser ce workflow
{
  "id": "PC34zn93Tjcxxnnk",
  "meta": null,
  "name": "AWS Cost and Usage Report Service MCP Server",
  "tags": [],
  "nodes": [
    {
      "id": "86a5f931-a4e4-4cf6-84b6-280671e6dbfb",
      "name": "Instructions de configuration",
      "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 4 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": "9324c2d7-d72a-4dc2-99ca-f8c8c79e69e9",
      "name": "Vue d'ensemble du workflow",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1120,
        -100
      ],
      "parameters": {
        "width": 320,
        "height": 920,
        "content": "## 🛠️ AWS Cost and Usage Report Service MCP Server ✅ 4 operations\n\n### About\nThe AWS Cost and Usage Report API enables you to programmatically create, query, and delete AWS Cost and Usage report definitions. AWS Cost and Usage reports track the monthly AWS costs and usage associated with your AWS account. The report contains line items for each unique combination of AWS product, usage type, and operation that your AWS account uses. You can configure the AWS Cost and Usage report to show only the data that you want, using the AWS Cost and Usage API. Service Endpoint The AWS Cost and Usage Report API provides the following endpoint: cur.us-east-1.amazonaws.com\n\n### 🔧 How it Works\n\nThis workflow converts the AWS Cost and Usage Report Service 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 http://cur.{region}.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": "6da3d323-bc86-4e2b-aa87-b623fbd3c71a",
      "name": "AWS Cost and Usage Report Service MCP Server",
      "type": "@n8n/n8n-nodes-langchain.mcpTrigger",
      "position": [
        -940,
        -240
      ],
      "webhookId": "ae940a41-a1bf-4d76-8150-9258788ffce6",
      "parameters": {
        "path": "aws-cost-and-usage-report-service-mcp"
      },
      "typeVersion": 1
    },
    {
      "id": "e26fd347-1ec3-4545-9e62-14911c1d193b",
      "name": "Supprime le rapport spécifié.",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        -400,
        -200
      ],
      "parameters": {
        "url": "=http://cur.{region}.amazonaws.com/#X-Amz-Target=AWSOrigamiServiceGatewayService.DeleteReportDefinition",
        "method": "POST",
        "options": {},
        "sendHeaders": true,
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Deletes the specified report.\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": "4f320e5a-d034-40a2-900e-c2b0c9357d08",
      "name": "Note de grille 1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -500,
        -260
      ],
      "parameters": {
        "color": 7,
        "height": 220,
        "content": "### Delete Report Definition"
      },
      "typeVersion": 1
    },
    {
      "id": "41668414-f5bd-4886-9ae6-413626fde12c",
      "name": "Liste les rapports AWS Cost and Usage disponibles pour",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        -120,
        -200
      ],
      "parameters": {
        "url": "=http://cur.{region}.amazonaws.com/#X-Amz-Target=AWSOrigamiServiceGatewayService.DescribeReportDefinitions",
        "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 AWS Cost and Usage reports available to this 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": "bda5d18e-0082-4221-a962-55450edff0cc",
      "name": "Note de grille 2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -220,
        -260
      ],
      "parameters": {
        "color": 7,
        "height": 220,
        "content": "### Describe Report Definitions"
      },
      "typeVersion": 1
    },
    {
      "id": "446e80a2-fc90-43aa-8f55-484cdf9733a4",
      "name": "Permet de mettre à jour programmatiquement votre rapport",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        160,
        -200
      ],
      "parameters": {
        "url": "=http://cur.{region}.amazonaws.com/#X-Amz-Target=AWSOrigamiServiceGatewayService.ModifyReportDefinition",
        "method": "POST",
        "options": {},
        "sendHeaders": true,
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Allows you to programatically update your report preferences.\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": "165854b7-f680-49a5-8192-25d4c4d25d63",
      "name": "Note de grille 3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        60,
        -260
      ],
      "parameters": {
        "color": 7,
        "height": 220,
        "content": "### Modify Report Definition"
      },
      "typeVersion": 1
    },
    {
      "id": "47091cfc-9c64-43d7-abe4-d0e6bbd98a1f",
      "name": "Crée un nouveau rapport en utilisant la description que vous",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        440,
        -200
      ],
      "parameters": {
        "url": "=http://cur.{region}.amazonaws.com/#X-Amz-Target=AWSOrigamiServiceGatewayService.PutReportDefinition",
        "method": "POST",
        "options": {},
        "sendHeaders": true,
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "toolDescription": "Creates a new report using the description that you provide.\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": "4e966520-2d39-442e-ad7e-bdc249d3b313",
      "name": "Note de grille 4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        320,
        -260
      ],
      "parameters": {
        "color": 7,
        "width": 280,
        "height": 220,
        "content": "## Put Report Definition"
      },
      "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-01T05:03:00.792Z",
      "projectId": "G5fce9xGuBAsWBXe",
      "updatedAt": "2025-07-01T05:03:00.792Z",
      "workflowId": "PC34zn93Tjcxxnnk"
    }
  ],
  "pinData": {},
  "settings": {
    "timezone": "America/New_York"
  },
  "createdAt": "2025-07-01T05:03:00.789Z",
  "updatedAt": "2025-07-01T05:03:30.000Z",
  "versionId": "d9d701ef-7c2d-457f-9edb-1038f00432c4",
  "isArchived": false,
  "staticData": null,
  "connections": {
    "e26fd347-1ec3-4545-9e62-14911c1d193b": {
      "ai_tool": [
        [
          {
            "node": "6da3d323-bc86-4e2b-aa87-b623fbd3c71a",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "446e80a2-fc90-43aa-8f55-484cdf9733a4": {
      "ai_tool": [
        [
          {
            "node": "6da3d323-bc86-4e2b-aa87-b623fbd3c71a",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "47091cfc-9c64-43d7-abe4-d0e6bbd98a1f": {
      "ai_tool": [
        [
          {
            "node": "6da3d323-bc86-4e2b-aa87-b623fbd3c71a",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "41668414-f5bd-4886-9ae6-413626fde12c": {
      "ai_tool": [
        [
          {
            "node": "6da3d323-bc86-4e2b-aa87-b623fbd3c71a",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    }
  },
  "triggerCount": 0
}
Foire aux questions

Comment utiliser ce workflow ?

Copiez le code de configuration JSON ci-dessus, créez un nouveau workflow dans votre instance n8n et sélectionnez "Importer depuis le JSON", collez la configuration et modifiez les paramètres d'authentification selon vos besoins.

Dans quelles scénarios ce workflow est-il adapté ?

Intermédiaire - DevOps, RAG IA

Est-ce payant ?

Ce workflow est entièrement gratuit et peut être utilisé directement. Veuillez noter que les services tiers utilisés dans le workflow (comme l'API OpenAI) peuvent nécessiter un paiement de votre part.

Informations sur le workflow
Niveau de difficulté
Intermédiaire
Nombre de nœuds11
Catégorie2
Types de nœuds3
Description de la difficulté

Adapté aux utilisateurs expérimentés, avec des workflows de complexité moyenne contenant 6-15 nœuds

Auteur
David Ashby

David Ashby

@cfomodz

A hacker by nature, programmer by trade ⚒️ I'm looking to collaborate on things that save human labor 📫 How to reach me Github👇 -> Discord

Liens externes
Voir sur n8n.io

Partager ce workflow

Catégories

Catégories: 34