{
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "0c49141e-128c-424e-afdf-ea131b7a3dd8",
      "name": "GetTableSchema",
      "type": "n8n-nodes-base.postgresTool",
      "position": [
        -460,
        220
      ],
      "parameters": {
        "query": "SELECT column_name, data_type FROM information_schema.columns WHERE table_name = $1",
        "options": {
          "queryReplacement": "={{ $fromAI('tableName', 'The name of the table.') }}"
        },
        "operation": "executeQuery",
        "descriptionType": "manual",
        "toolDescription": "Read a table's schema."
      },
      "credentials": {
        "postgres": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 2.6
    },
    {
      "id": "8ffeefb9-357c-41bc-8239-0c07c706be97",
      "name": "ListTables",
      "type": "n8n-nodes-base.postgresTool",
      "position": [
        -340,
        300
      ],
      "parameters": {
        "query": "SELECT table_name FROM information_schema.tables WHERE table_schema = 'public'",
        "options": {},
        "operation": "executeQuery",
        "descriptionType": "manual",
        "toolDescription": "List all available tables."
      },
      "credentials": {
        "postgres": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 2.6
    },
    {
      "id": "efcf7ff3-976e-448a-9d47-47a98f3b0fcb",
      "name": "When Executed by Another Workflow",
      "type": "n8n-nodes-base.executeWorkflowTrigger",
      "position": [
        280,
        200
      ],
      "parameters": {
        "workflowInputs": {
          "values": [
            {
              "name": "operation"
            },
            {
              "name": "tableName"
            },
            {
              "name": "values",
              "type": "object"
            },
            {
              "name": "where",
              "type": "object"
            }
          ]
        }
      },
      "typeVersion": 1.1
    },
    {
      "id": "abd292d7-fc2b-4e98-a474-b50e44d16b6c",
      "name": "CreateTableRecords",
      "type": "@n8n/n8n-nodes-langchain.toolWorkflow",
      "position": [
        -240,
        400
      ],
      "parameters": {
        "name": "CreateTableRows",
        "workflowId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $workflow.id }}"
        },
        "description": "Call this tool to create a row in the database.",
        "workflowInputs": {
          "value": {
            "where": "={{ {} }}",
            "values": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('values', `An object of key-value pair where key represents the column name.`, 'string') }}",
            "operation": "insert",
            "tableName": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('tableName', `Name of table to update`, 'string') }}"
          },
          "schema": [
            {
              "id": "operation",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "operation",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "tableName",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "tableName",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "values",
              "type": "object",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "values",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "where",
              "type": "object",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "where",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "4a71d42a-99a5-489e-b449-09c3c5081505",
      "name": "ReadTableRecord",
      "type": "n8n-nodes-base.postgres",
      "position": [
        760,
        0
      ],
      "parameters": {
        "query": "SELECT * FROM {{ $json.tableName }}\n{{ $json.where && Object.keys($json.where).length > 0\n  ? `WHERE ` + Object.keys($json.where).map((key,idx) => `${key} = $${idx+1}`).join(' AND ')\n  : ''\n}}",
        "options": {
          "queryReplacement": "={{ Object.values($json.where).join(',') }}"
        },
        "operation": "executeQuery"
      },
      "credentials": {
        "postgres": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 2.6,
      "alwaysOutputData": true
    },
    {
      "id": "bdc60aa8-9ab1-4bbd-8b9e-89c968d54043",
      "name": "Operation",
      "type": "n8n-nodes-base.switch",
      "position": [
        460,
        200
      ],
      "parameters": {
        "rules": {
          "values": [
            {
              "outputKey": "READ",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "81b134bc-d671-4493-b3ad-8df9be3f49a6",
                    "operator": {
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $json.operation }}",
                    "rightValue": "read"
                  }
                ]
              },
              "renameOutput": true
            },
            {
              "outputKey": "INSERT",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "8d57914f-6587-4fb3-88e0-aa1de6ba56c1",
                    "operator": {
                      "name": "filter.operator.equals",
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $json.operation }}",
                    "rightValue": "insert"
                  }
                ]
              },
              "renameOutput": true
            },
            {
              "outputKey": "UPDATE",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "7c38f238-213a-46ec-aefe-22e0bcb8dffc",
                    "operator": {
                      "name": "filter.operator.equals",
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $json.operation }}",
                    "rightValue": "update"
                  }
                ]
              },
              "renameOutput": true
            }
          ]
        },
        "options": {}
      },
      "typeVersion": 3.2
    },
    {
      "id": "cdb5b556-3638-4fa5-94c6-bff0c03f6c89",
      "name": "UpdateTableRecord",
      "type": "n8n-nodes-base.postgres",
      "position": [
        760,
        400
      ],
      "parameters": {
        "query": "UPDATE {{ $json.tableName }}\nSET\n  {{ Object.keys($json.values)\n  .map((key,idx) => `${key} = $${idx+1}`)\n  .join(',')\n}}\nWHERE\n  {{ Object.keys($json.where)\n  .map((key,idx) => `${key} = $${idx+Object.keys($json.values).length+1}`)\n  .join(' AND ')\n}}",
        "options": {
          "queryReplacement": "={{ Object.values($json.values).join(',') }},{{ Object.values($json.where).join(',') }}"
        },
        "operation": "executeQuery"
      },
      "credentials": {
        "postgres": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 2.6
    },
    {
      "id": "9263fc78-321e-4c83-90d3-890dd87d6aed",
      "name": "UpdateTableRecords",
      "type": "@n8n/n8n-nodes-langchain.toolWorkflow",
      "position": [
        -100,
        320
      ],
      "parameters": {
        "name": "UpdateTableRows",
        "workflowId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $workflow.id }}"
        },
        "description": "Call this tool to create a row in the database.",
        "workflowInputs": {
          "value": {
            "where": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('where', `An object of key-value pair where key represents the column name.`, 'string') }}",
            "values": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('values', `An object of key-value pair where key represents the column name.`, 'string') }}",
            "operation": "=update",
            "tableName": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('tableName', `Table to update`, 'string') }}"
          },
          "schema": [
            {
              "id": "operation",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "operation",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "tableName",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "tableName",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "values",
              "type": "object",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "values",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "where",
              "type": "object",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "where",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "dd7e28fb-b2c7-4084-bc9b-9aa3e0187682",
      "name": "CreateTableRecord",
      "type": "n8n-nodes-base.postgres",
      "position": [
        760,
        200
      ],
      "parameters": {
        "query": "INSERT INTO {{ $json.tableName }}\n  ({{ Object.keys($json.values).join(',') }})\nVALUES\n  ({{ Object.keys($json.values).map((_,idx) => `$${idx+1}`).join(',') }})",
        "options": {
          "queryReplacement": "={{ Object.values($json.values).join(',') }}"
        },
        "operation": "executeQuery"
      },
      "credentials": {
        "postgres": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 2.6
    },
    {
      "id": "324503c0-117b-45ec-97dd-7074eb1db22e",
      "name": "ReadTableRows",
      "type": "@n8n/n8n-nodes-langchain.toolWorkflow",
      "position": [
        20,
        240
      ],
      "parameters": {
        "name": "ReadTableRows",
        "workflowId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $workflow.id }}"
        },
        "description": "Call this tool to read a row in the database.",
        "workflowInputs": {
          "value": {
            "where": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('where', `An object of key-value pair where key represents the column name.`, 'string') }}",
            "values": "{}",
            "operation": "read",
            "tableName": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('tableName', ``, 'string') }}"
          },
          "schema": [
            {
              "id": "operation",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "operation",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "tableName",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "tableName",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "values",
              "type": "object",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "values",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "where",
              "type": "object",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "where",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "9cf39ca3-b704-49ce-b6e2-db2703c4acad",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -520,
        -120
      ],
      "parameters": {
        "color": 7,
        "width": 680,
        "height": 660,
        "content": "## 1. MCP \uc11c\ubc84 \ud2b8\ub9ac\uac70 \uc124\uc815  \n[ MCP \uc11c\ubc84 \ud2b8\ub9ac\uac70\uc5d0 \ub300\ud574 \ub354 \uc77d\uae30 ](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-langchain.mcptrigger)"
      },
      "typeVersion": 1
    },
    {
      "id": "ac3d9b98-8f1e-4abd-972c-1725aac1ad1e",
      "name": "PostgreSQL MCP Server",
      "type": "@n8n/n8n-nodes-langchain.mcpTrigger",
      "position": [
        -340,
        20
      ],
      "parameters": {
        "path": "a5fd7047-e31b-4c0d-bd68-c36072c3da0d"
      },
      "typeVersion": 1
    },
    {
      "id": "416a09d5-c327-410d-b951-a2d08402c6fe",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        180,
        -120
      ],
      "parameters": {
        "color": 7,
        "width": 820,
        "height": 720,
        "content": "## 2. \uc6d0\uc2dc SQL \ubb38 \ubc29\uc9c0\ub85c \ubcf4\uc548 \uc720\uc9c0\n[PostgreSQL Node\uc5d0 \ub300\ud574 \ub354 \uc77d\uae30](https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.postgres/)\n\n\ub300\ub9ac\uc778\uc774 \uc804\uccb4 \uc6d0\uc2dc SQL \ubb38\uc744 \uc81c\uacf5\ud558\ub3c4\ub85d \ud558\ub294 \uac83\uc774 \ub354 \uc27d\uc9c0\ub9cc, \ucd5c\uc545\uc758 \uacbd\uc6b0 \ub370\uc774\ud130\uac00 \ubaa8\ub974\uac8c \uc720\ucd9c\ub418\uac70\ub098 \uc0ad\uc81c\ub420 \uc218 \uc788\ub294 \uc2e4\uc81c \ubcf4\uc548 \uc704\ud5d8\uc5d0 \ub2f9\uc2e0\uc774\ub098 \ub2f9\uc2e0\uc758 \uc870\uc9c1\uc744 \ub178\ucd9c\uc2dc\ud0ac \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n\n\ub300\ub9ac\uc778\uc774 \ucffc\ub9ac\uc758 \ub9e4\uac1c\ubcc0\uc218\ub9cc \uc81c\uacf5\ud558\ub3c4\ub85d \uac15\uc81c\ud558\uba74 \uc774 \uc704\ud5d8\uc5d0 \ub300\ud574 \uc5b4\ub290 \uc815\ub3c4 \ubc29\uc5b4\ud560 \uc218 \uc788\uc73c\uba70, SQL \uc778\uc81d\uc158 \uacf5\uaca9\uc5d0 \ub300\ud55c \ucd5c\uc120\uc758 \uad00\ud589\uc73c\ub85c \ucffc\ub9ac \ub9e4\uac1c\ubcc0\uc218\ub97c \uc0ac\uc6a9\ud560 \uc218 \uc788\uac8c \ud569\ub2c8\ub2e4."
      },
      "typeVersion": 1
    },
    {
      "id": "0187fb3f-4c31-461d-84e9-4a4a0bf4188d",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1000,
        -560
      ],
      "parameters": {
        "width": 440,
        "height": 1320,
        "content": "## \uc9c1\uc811 \ud574\ubcf4\uc138\uc694!\n### \uc774 n8n\uc740 \uac04\ub2e8\ud55c PostgreSQL MCP \uc11c\ubc84\ub97c \uad6c\ucd95\ud558\uc5ec HR, \uae09\uc5ec, \ud310\ub9e4, \uc7ac\uace0 \ubc0f \uae30\ud0c0\uc640 \uac19\uc740 PostgreSQL \ub370\uc774\ud130\ubca0\uc774\uc2a4\ub97c \uad00\ub9ac\ud558\ub294 \ubc29\ubc95\uc744 \ubcf4\uc5ec\uc90d\ub2c8\ub2e4!\n\n\uc774 MCP \uc608\uc81c\ub294 \uacf5\uc2dd MCP \ucc38\uc870 \uad6c\ud604\uc744 \uae30\ubc18\uc73c\ub85c \ud558\uba70, \uc5ec\uae30\uc5d0\uc11c \ucc3e\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4 - https://github.com/modelcontextprotocol/servers/tree/main/src/postgres\n\n### \uc791\ub3d9 \uc6d0\ub9ac\n* MCP \uc11c\ubc84 \ud2b8\ub9ac\uac70\uac00 \uc0ac\uc6a9\ub418\uba70, 5\uac1c\uc758 \ub3c4\uad6c(2\uac1c\uc758 PostgreSQL \ubc0f 3\uac1c\uc758 \ucee4\uc2a4\ud140 \uc6cc\ud06c\ud50c\ub85c)\uc5d0 \uc5f0\uacb0\ub429\ub2c8\ub2e4.\n* 2\uac1c\uc758 PostgreSQL \ub3c4\uad6c\ub294 \uac04\ub2e8\ud55c \uc77d\uae30 \uc804\uc6a9 \ucffc\ub9ac\uc774\ubbc0\ub85c, PostgreSQL \ub3c4\uad6c\ub97c \uac04\ub2e8\ud788 \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n* 3\uac1c\uc758 \ucee4\uc2a4\ud140 \uc6cc\ud06c\ud50c\ub85c \ub3c4\uad6c\ub294 \uc120\ud0dd, \uc0bd\uc785 \ubc0f \uc5c5\ub370\uc774\ud2b8 \ucffc\ub9ac\uc5d0 \uc0ac\uc6a9\ub418\uba70, \uc774\ub7ec\ud55c \uc791\uc5c5\uc740 \uc57d\uac04 \ub354 \uc2e0\uc911\ud55c \ucc98\ub9ac\uac00 \ud544\uc694\ud569\ub2c8\ub2e4.\n* \uc5d0\uc774\uc804\ud2b8\uac00 \uc6d0\uc2dc SQL \ucffc\ub9ac\ub97c \uc0ac\uc6a9\ud558\ub294 \uac83\uc774 \ub354 \uc27d\uc9c0\ub9cc, \ub9e4\uac1c\ubcc0\uc218\ub9cc \ud5c8\uc6a9\ud558\ub294 \uac83\uc774 \uc870\uae08 \ub354 \uc548\uc804\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ucee4\uc2a4\ud140 \uc6cc\ud06c\ud50c\ub85c \ub3c4\uad6c\ub97c \uc0ac\uc6a9\ud558\uba74 \ub3c4\uad6c \uc785\ub825\uc5d0 \ub300\ud55c \uc81c\ud55c\ub41c \uc2a4\ud0a4\ub9c8\ub97c \uc815\uc758\ud558\uc5ec SQL \ubb38\uc744 \uc9c1\uc811 \uad6c\uc131\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n* 3\uac1c\uc758 \ucee4\uc2a4\ud140 \uc6cc\ud06c\ud50c\ub85c \ub3c4\uad6c\ub294 \uc774 \ud15c\ud50c\ub9bf\uc758 \ub3d9\uc77c\ud55c \"\uc6cc\ud06c\ud50c\ub85c \uc2e4\ud589\" \ud2b8\ub9ac\uac70\ub97c \ud2b8\ub9ac\uac70\ud558\uba70, \uc2a4\uc704\uce58\ub97c \ud1b5\ud574 \uc791\uc5c5\uc744 \uc62c\ubc14\ub978 \ud578\ub4e4\ub7ec\ub85c \ub77c\uc6b0\ud305\ud569\ub2c8\ub2e4.\n* \ub9c8\uc9c0\ub9c9\uc73c\ub85c, \ud45c\uc900 PostgreSQL \ub178\ub4dc\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc120\ud0dd, \uc0bd\uc785 \ubc0f \uc5c5\ub370\uc774\ud2b8 \uc791\uc5c5\uc744 \ucc98\ub9ac\ud569\ub2c8\ub2e4. \uc751\ub2f5\uc740 MCP \ud074\ub77c\uc774\uc5b8\ud2b8\ub85c \ub2e4\uc2dc \ubcf4\ub0b4\uc9d1\ub2c8\ub2e4.\n\n### \uc0ac\uc6a9 \ubc29\ubc95\n* \uc774 PostgreSQL MCP \uc11c\ubc84\ub294 \uc120\ud0dd, \uc0dd\uc131 \ubc0f \uc5c5\ub370\uc774\ud2b8 \uc791\uc5c5\uc744 \uc9c0\uc6d0\ud558\uc5ec \ud638\ud658\ub418\ub294 MCP \ud074\ub77c\uc774\uc5b8\ud2b8\uac00 PostgreSQL \ub370\uc774\ud130\ubca0\uc774\uc2a4\ub97c \uad00\ub9ac\ud560 \uc218 \uc788\uac8c \ud569\ub2c8\ub2e4. \uc11c\ubc84\ub97c \uc0ac\uc6a9\ud558\uae30 \uc804\uc5d0 \ub370\uc774\ud130\ubca0\uc774\uc2a4\ub97c \uc900\ube44\ud574\uc57c \ud569\ub2c8\ub2e4.\n* MCP \ud074\ub77c\uc774\uc5b8\ud2b8\ub97c \uc5f0\uacb0\ud558\ub824\uba74 n8n \uc9c0\uce68\uc744 \ub530\ub974\uc138\uc694 - https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-langchain.mcptrigger/#integrating-with-claude-desktop\n* MCP \ud074\ub77c\uc774\uc5b8\ud2b8\uc5d0\uc11c \ub2e4\uc74c \ucffc\ub9ac\ub97c \uc2dc\ub3c4\ud574 \ubcf4\uc138\uc694:\n  * \"Alex\uac00 users \ud14c\uc774\ube14\uc5d0 \ud56d\ubaa9\uc774 \uc788\ub294\uc9c0 \ud655\uc778\ud574 \uc8fc\uc138\uc694. \uc5c6\uc73c\uba74 \uadf8\ub140\uc758 \ub808\ucf54\ub4dc\ub97c \uc0dd\uc131\ud574 \uc8fc\uc138\uc694.\"\n  * \"\uc9c0\ub09c \uc8fc\uc5d0 \uac00\uc7a5 \ub9ce\uc774 \ud314\ub9b0 \uc81c\ud488\uc740 \ubb34\uc5c7\uc778\uac00\uc694?\"\n  * \"\uc624\ub298 \uc544\uce68\uc5d0 \uc5ec\uc804\ud788 \uc5f4\ub9b0 \ub192\uc740 \uc6b0\uc120\uc21c\uc704 \uc9c0\uc6d0 \ud2f0\ucf13\uc758 \uc218\ub294 \uc5bc\ub9c8\uc778\uac00\uc694?\"\n\n### \uc694\uad6c \uc0ac\ud56d\n* \ub370\uc774\ud130\ubca0\uc774\uc2a4\ub85c PostgreSQL\uc744 \uc0ac\uc6a9\ud558\uc138\uc694. \uc774\ub294 Supabase\uc640 \uac19\uc740 \uc678\ubd80 \ub370\uc774\ud130\ubca0\uc774\uc2a4 \ub610\ub294 \ub0b4\ubd80\uc801\uc73c\ub85c \ud638\uc2a4\ud305\ud558\ub294 \ub370\uc774\ud130\ubca0\uc774\uc2a4\uac00 \ub420 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n* MCP \ud074\ub77c\uc774\uc5b8\ud2b8 \ub610\ub294 \uc5d0\uc774\uc804\ud2b8(\uc608: Claude Desktop)\ub97c \uc0ac\uc6a9\ud558\uc138\uc694 - https://claude.ai/download\n\n### \uc774 \uc6cc\ud06c\ud50c\ub85c \uc0ac\uc6a9\uc790\ud654\n* \uc2a4\ud0a4\ub9c8\ub098 \ud14c\uc774\ube14\uc758 \ubc94\uc704\uac00 \ub108\ubb34 \ub113\ub2e4\uba74, \ube44\uc988\ub2c8\uc2a4 \uc6b4\uc601\uc5d0 \ud2b9\uc815 \ubaa9\uc801\uc744 \ub450\ub3c4\ub85d \uc81c\ud55c\ud574 \ubcf4\uc138\uc694. \uc608\ub97c \ub4e4\uc5b4, \ud574\ub2f9 \ubd80\uc11c\uc758 \uc0ac\ub78c\ub4e4\uc5d0\uac8c \uc561\uc138\uc2a4 \uad8c\ud55c\uc744 \ubd80\uc5ec\ud558\uae30 \uc804\uc5d0 \ucffc\ub9ac \ubc0f \ud3b8\uc9d1\uc744 HR \ud14c\uc774\ube14\uc5d0\ub9cc \ud55c\uc815\ud558\uc138\uc694.\n* \ud504\ub85c\ub355\uc158 \ud658\uacbd\uc5d0\uc11c \uc774 MCP \uc11c\ubc84\ub97c \ub2e4\ub978 \uc0ac\ub78c\uacfc \uacf5\uc720\ud558\uae30 \uc804\uc5d0 \uc790\uaca9 \uc99d\uba85 \uc694\uad6c \uc124\uc815\uc744 \uc78a\uc9c0 \ub9c8\uc138\uc694! \n\n### \ucd9c\ub825"
      },
      "typeVersion": 1
    },
    {
      "id": "bc4e427f-f6fd-4243-844a-8edf2dc1a0e9",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -520,
        -240
      ],
      "parameters": {
        "color": 5,
        "width": 380,
        "height": 100,
        "content": "\ud56d\uc0c1 \uc11c\ubc84\ub97c \uc778\uc99d\ud558\uc138\uc694!  \n\ud504\ub85c\ub355\uc158\uc73c\ub85c \uac00\uae30 \uc804\uc5d0, MCP \uc11c\ubc84 \ud2b8\ub9ac\uac70\uc5d0\uc11c \uc778\uc99d\uc744 \ud65c\uc131\ud654\ud558\ub294 \uac83\uc774 \ud56d\uc0c1 \uad8c\uace0\ub429\ub2c8\ub2e4."
      },
      "typeVersion": 1
    }
  ],
  "connections": {
    "Operation": {
      "main": [
        [
          {
            "node": "ReadTableRecord",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "CreateTableRecord",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "UpdateTableRecord",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ListTables": {
      "ai_tool": [
        [
          {
            "node": "PostgreSQL MCP Server",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "ReadTableRows": {
      "ai_tool": [
        [
          {
            "node": "PostgreSQL MCP Server",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "GetTableSchema": {
      "ai_tool": [
        [
          {
            "node": "PostgreSQL MCP Server",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "ReadTableRecord": {
      "main": [
        []
      ]
    },
    "CreateTableRecords": {
      "ai_tool": [
        [
          {
            "node": "PostgreSQL MCP Server",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "UpdateTableRecords": {
      "ai_tool": [
        [
          {
            "node": "PostgreSQL MCP Server",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "When Executed by Another Workflow": {
      "main": [
        [
          {
            "node": "Operation",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}