Airtable를 사용한 MCP 서버 구축
중급
이것은Building Blocks, AI, IT Ops분야의자동화 워크플로우로, 13개의 노드를 포함합니다.주로 AirtableTool, Agent, McpTrigger, ChatTrigger, LmChatOpenAi 등의 노드를 사용하며인공지능 기술을 결합하여 스마트 자동화를 구현합니다. Airtable를 사용하여 MCP 서버 구축
사전 요구사항
- •Airtable API Key
- •OpenAI API Key
사용된 노드 (13)
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
"id": "kS9EfgZeaK3QV6Mw",
"meta": {
"instanceId": "9219ebc7795bea866f70aa3d977d54417fdf06c41944be95e20cfb60f992db19",
"templateCredsSetupCompleted": true
},
"name": "Build an MCP server with Airtable",
"tags": [],
"nodes": [
{
"id": "357649f0-43c5-4d6c-97b9-079fa3b5c1f3",
"name": "채팅 메시지 수신 시",
"type": "@n8n/n8n-nodes-langchain.chatTrigger",
"position": [
-100,
-80
],
"webhookId": "c42d1e2e-b175-48cf-bfd4-aa8289266a20",
"parameters": {
"options": {}
},
"typeVersion": 1.1
},
{
"id": "ddf28f88-d76c-4ab6-82c4-c1ab1b746009",
"name": "AI 에이전트",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
152,
-180
],
"parameters": {
"options": {}
},
"typeVersion": 1.9
},
{
"id": "3170d4fd-700c-4449-a800-0395c06711aa",
"name": "심플 메모리",
"type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
"position": [
260,
40
],
"parameters": {},
"typeVersion": 1.3
},
{
"id": "557b0e0a-133b-4e80-afba-408803ed9898",
"name": "Airtable MCP 클라이언트",
"type": "@n8n/n8n-nodes-langchain.mcpClientTool",
"position": [
600,
100
],
"parameters": {
"sseEndpoint": "https://your-sse-endpoint-url"
},
"typeVersion": 1
},
{
"id": "a0bc9aa3-decb-42f1-bee4-b9e425db81e8",
"name": "OpenAI 채팅 모델",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
80,
40
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o",
"cachedResultName": "gpt-4o"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "vupAk5StuhOafQcb",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
},
{
"id": "7737e491-ddd4-4e4f-a34d-73f518497990",
"name": "MCP 서버 트리거",
"type": "@n8n/n8n-nodes-langchain.mcpTrigger",
"position": [
140,
240
],
"webhookId": "a93f35fb-3a86-4475-9ebd-1434aef8e433",
"parameters": {
"path": "insert-your-cool-path-here"
},
"typeVersion": 1
},
{
"id": "0ce9e128-be31-41d8-ae06-894316781358",
"name": "가져오기",
"type": "n8n-nodes-base.airtableTool",
"position": [
0,
460
],
"parameters": {
"id": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Record_ID', ``, 'string') }}",
"base": {
"__rl": true,
"mode": "list",
"value": "appltMFy409fOqCVt",
"cachedResultUrl": "https://airtable.com/appltMFy409fOqCVt",
"cachedResultName": "AI news and social posts"
},
"table": {
"__rl": true,
"mode": "list",
"value": "tblZwA0JCNPeORaGi",
"cachedResultUrl": "https://airtable.com/appltMFy409fOqCVt/tblZwA0JCNPeORaGi",
"cachedResultName": "Social Posts"
},
"options": {}
},
"credentials": {
"airtableTokenApi": {
"id": "4hNTBxRPe8ft4Iic",
"name": "Airtable Personal Access Token account"
}
},
"typeVersion": 2.1
},
{
"id": "1f9c6a61-9357-4fa1-81e0-42719284d291",
"name": "검색",
"type": "n8n-nodes-base.airtableTool",
"position": [
140,
460
],
"parameters": {
"base": {
"__rl": true,
"mode": "list",
"value": "appltMFy409fOqCVt",
"cachedResultUrl": "https://airtable.com/appltMFy409fOqCVt",
"cachedResultName": "AI news and social posts"
},
"table": {
"__rl": true,
"mode": "list",
"value": "tblZwA0JCNPeORaGi",
"cachedResultUrl": "https://airtable.com/appltMFy409fOqCVt/tblZwA0JCNPeORaGi",
"cachedResultName": "Social Posts"
},
"options": {},
"operation": "search",
"returnAll": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Return_All', ``, 'boolean') }}",
"filterByFormula": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Filter_By_Formula', ``, 'string') }}"
},
"credentials": {
"airtableTokenApi": {
"id": "4hNTBxRPe8ft4Iic",
"name": "Airtable Personal Access Token account"
}
},
"typeVersion": 2.1
},
{
"id": "061a0eb9-26de-47f1-b444-5dd98c984d70",
"name": "업데이트",
"type": "n8n-nodes-base.airtableTool",
"position": [
260,
460
],
"parameters": {
"base": {
"__rl": true,
"mode": "list",
"value": "appltMFy409fOqCVt",
"cachedResultUrl": "https://airtable.com/appltMFy409fOqCVt",
"cachedResultName": "AI news and social posts"
},
"table": {
"__rl": true,
"mode": "list",
"value": "tblZwA0JCNPeORaGi",
"cachedResultUrl": "https://airtable.com/appltMFy409fOqCVt/tblZwA0JCNPeORaGi",
"cachedResultName": "Social Posts"
},
"columns": {
"value": {},
"schema": [
{
"id": "id",
"type": "string",
"display": true,
"removed": false,
"readOnly": true,
"required": false,
"displayName": "id",
"defaultMatch": true
},
{
"id": "sourceHeadline",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "sourceHeadline",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "sourceSummary",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "sourceSummary",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "goToArticle",
"type": "string",
"display": true,
"removed": true,
"readOnly": true,
"required": false,
"displayName": "goToArticle",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "sourceURL",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "sourceURL",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "socialChannels",
"type": "array",
"display": true,
"options": [
{
"name": "Twitter",
"value": "Twitter"
},
{
"name": "LinkedIn",
"value": "LinkedIn"
},
{
"name": "Blog",
"value": "Blog"
},
{
"name": "Instagram",
"value": "Instagram"
},
{
"name": "Facebook",
"value": "Facebook"
}
],
"removed": false,
"readOnly": false,
"required": false,
"displayName": "socialChannels",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "needsImage?",
"type": "options",
"display": true,
"options": [
{
"name": "Yes",
"value": "Yes"
},
{
"name": "No",
"value": "No"
}
],
"removed": false,
"readOnly": false,
"required": false,
"displayName": "needsImage?",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "twitterCopy",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "twitterCopy",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "linkedinCopy",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "linkedinCopy",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "instagramCopy",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "instagramCopy",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "facebookCopy",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "facebookCopy",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "blogCopy",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "blogCopy",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "imagePrompt",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "imagePrompt",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "postImage",
"type": "array",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "postImage",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Status",
"type": "options",
"display": true,
"options": [
{
"name": "Waiting for Content",
"value": "Waiting for Content"
},
{
"name": "Needs Approval",
"value": "Needs Approval"
},
{
"name": "Approved",
"value": "Approved"
},
{
"name": "Posted",
"value": "Posted"
}
],
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Status",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "datePosted",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "datePosted",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "ID",
"type": "string",
"display": true,
"removed": true,
"readOnly": true,
"required": false,
"displayName": "ID",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "autoMapInputData",
"matchingColumns": [
"id"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "update"
},
"credentials": {
"airtableTokenApi": {
"id": "4hNTBxRPe8ft4Iic",
"name": "Airtable Personal Access Token account"
}
},
"typeVersion": 2.1
},
{
"id": "b0e17724-5a56-4b71-997d-f9f44d16e5bc",
"name": "삭제하기",
"type": "n8n-nodes-base.airtableTool",
"position": [
400,
460
],
"parameters": {
"id": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Record_ID', ``, 'string') }}",
"base": {
"__rl": true,
"mode": "list",
"value": "appltMFy409fOqCVt",
"cachedResultUrl": "https://airtable.com/appltMFy409fOqCVt",
"cachedResultName": "AI news and social posts"
},
"table": {
"__rl": true,
"mode": "list",
"value": "tblZwA0JCNPeORaGi",
"cachedResultUrl": "https://airtable.com/appltMFy409fOqCVt/tblZwA0JCNPeORaGi",
"cachedResultName": "Social Posts"
},
"operation": "deleteRecord"
},
"credentials": {
"airtableTokenApi": {
"id": "4hNTBxRPe8ft4Iic",
"name": "Airtable Personal Access Token account"
}
},
"typeVersion": 2.1
},
{
"id": "2d0273b6-520b-45b7-8192-a83b10661028",
"name": "생성하기",
"type": "n8n-nodes-base.airtableTool",
"position": [
520,
460
],
"parameters": {
"base": {
"__rl": true,
"mode": "list",
"value": "appltMFy409fOqCVt",
"cachedResultUrl": "https://airtable.com/appltMFy409fOqCVt",
"cachedResultName": "AI news and social posts"
},
"table": {
"__rl": true,
"mode": "list",
"value": "tblZwA0JCNPeORaGi",
"cachedResultUrl": "https://airtable.com/appltMFy409fOqCVt/tblZwA0JCNPeORaGi",
"cachedResultName": "Social Posts"
},
"columns": {
"value": {},
"schema": [
{
"id": "sourceHeadline",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "sourceHeadline",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "sourceSummary",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "sourceSummary",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "goToArticle",
"type": "string",
"display": true,
"removed": true,
"readOnly": true,
"required": false,
"displayName": "goToArticle",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "sourceURL",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "sourceURL",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "socialChannels",
"type": "array",
"display": true,
"options": [
{
"name": "Twitter",
"value": "Twitter"
},
{
"name": "LinkedIn",
"value": "LinkedIn"
},
{
"name": "Blog",
"value": "Blog"
},
{
"name": "Instagram",
"value": "Instagram"
},
{
"name": "Facebook",
"value": "Facebook"
}
],
"removed": false,
"readOnly": false,
"required": false,
"displayName": "socialChannels",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "needsImage?",
"type": "options",
"display": true,
"options": [
{
"name": "Yes",
"value": "Yes"
},
{
"name": "No",
"value": "No"
}
],
"removed": false,
"readOnly": false,
"required": false,
"displayName": "needsImage?",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "twitterCopy",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "twitterCopy",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "linkedinCopy",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "linkedinCopy",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "instagramCopy",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "instagramCopy",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "facebookCopy",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "facebookCopy",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "blogCopy",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "blogCopy",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "imagePrompt",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "imagePrompt",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "postImage",
"type": "array",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "postImage",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Status",
"type": "options",
"display": true,
"options": [
{
"name": "Waiting for Content",
"value": "Waiting for Content"
},
{
"name": "Needs Approval",
"value": "Needs Approval"
},
{
"name": "Approved",
"value": "Approved"
},
{
"name": "Posted",
"value": "Posted"
}
],
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Status",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "datePosted",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "datePosted",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "ID",
"type": "string",
"display": true,
"removed": true,
"readOnly": true,
"required": false,
"displayName": "ID",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "autoMapInputData",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "create"
},
"credentials": {
"airtableTokenApi": {
"id": "4hNTBxRPe8ft4Iic",
"name": "Airtable Personal Access Token account"
}
},
"typeVersion": 2.1
},
{
"id": "69e906cf-82da-45c4-bacc-00970902d1f5",
"name": "스티커 메모",
"type": "n8n-nodes-base.stickyNote",
"position": [
480,
-60
],
"parameters": {
"width": 360,
"height": 280,
"content": "## Update SSE endpoint "
},
"typeVersion": 1
},
{
"id": "819d82c9-da54-48c6-a007-2e8750cfb3e2",
"name": "스티커 메모1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-520,
-220
],
"parameters": {
"width": 380,
"height": 540,
"content": "## Talk to your Airtable database \nPoint to your SSE endpoint, update your credentials and talk to your Airtable to:\n\n- Get records\n- Search records\n- Update records\n- Delete records\n- Create records\n\nand more!\n\nThis example showcases basic yet powerful functionality for a table.\n\nFeel free to combine it with other tools, connect a Slack channel as trigger node or another as output to receive the updates for the stakeholders and project owners.\n\nEnjoy!\n\nAitor\n[1 Node](https://1node.ai)"
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "2355fe0d-0515-4d1b-8a02-42712191f466",
"connections": {
"0ce9e128-be31-41d8-ae06-894316781358": {
"ai_tool": [
[
{
"node": "7737e491-ddd4-4e4f-a34d-73f518497990",
"type": "ai_tool",
"index": 0
}
]
]
},
"2d0273b6-520b-45b7-8192-a83b10661028": {
"ai_tool": [
[
{
"node": "7737e491-ddd4-4e4f-a34d-73f518497990",
"type": "ai_tool",
"index": 0
}
]
]
},
"b0e17724-5a56-4b71-997d-f9f44d16e5bc": {
"ai_tool": [
[
{
"node": "7737e491-ddd4-4e4f-a34d-73f518497990",
"type": "ai_tool",
"index": 0
}
]
]
},
"1f9c6a61-9357-4fa1-81e0-42719284d291": {
"ai_tool": [
[
{
"node": "7737e491-ddd4-4e4f-a34d-73f518497990",
"type": "ai_tool",
"index": 0
}
]
]
},
"061a0eb9-26de-47f1-b444-5dd98c984d70": {
"ai_tool": [
[
{
"node": "7737e491-ddd4-4e4f-a34d-73f518497990",
"type": "ai_tool",
"index": 0
}
]
]
},
"ddf28f88-d76c-4ab6-82c4-c1ab1b746009": {
"main": [
[]
]
},
"3170d4fd-700c-4449-a800-0395c06711aa": {
"ai_memory": [
[
{
"node": "ddf28f88-d76c-4ab6-82c4-c1ab1b746009",
"type": "ai_memory",
"index": 0
}
]
]
},
"a0bc9aa3-decb-42f1-bee4-b9e425db81e8": {
"ai_languageModel": [
[
{
"node": "ddf28f88-d76c-4ab6-82c4-c1ab1b746009",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"557b0e0a-133b-4e80-afba-408803ed9898": {
"ai_tool": [
[
{
"node": "ddf28f88-d76c-4ab6-82c4-c1ab1b746009",
"type": "ai_tool",
"index": 0
}
]
]
},
"357649f0-43c5-4d6c-97b9-079fa3b5c1f3": {
"main": [
[
{
"node": "ddf28f88-d76c-4ab6-82c4-c1ab1b746009",
"type": "main",
"index": 0
}
]
]
}
}
}자주 묻는 질문
이 워크플로우를 어떻게 사용하나요?
위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.
이 워크플로우는 어떤 시나리오에 적합한가요?
중급 - 빌딩 블록, 인공지능, IT 운영
유료인가요?
이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.
관련 워크플로우 추천
개인 어시스턴트 MCP 서버
MCP를 사용하여 Google Gemini, Gmail, 일정을 통합한 개인 어시스턴트를 구축합니다.
Gmail Tool
Agent
Google Sheets Tool
+
Gmail Tool
Agent
Google Sheets Tool
20 노드Aitor | 1node.ai
기타
Milvus와 Cohere의 RAG AI 대리자
사용법 Milvus, Cohere 및 OpenAI를 사용하여 Google Drive에 대한 RAG 문서 질문 시스템 구축
Google Drive
Agent
Extract From File
+
Google Drive
Agent
Extract From File
14 노드Aitor | 1node.ai
지원
Mistral 트랜스크립션
Google 캘린더와 사용자 정의 함수를 사용하여 MCP 서버 구축
Set
Switch
Debug Helper
+
Set
Switch
Debug Helper
32 노드Solomon
빌딩 블록
빌드 커스텀 n8n 워크플로우 MCP 서버
구축할 수 있는 개별 n8n 워크플로우 MCP 서버
If
N8n
Set
+
If
N8n
Set
46 노드Jimleuk
기타
MCP Supabase 대리자
MCP Supabase 대리기 - AI를 사용하여 데이터베이스 관리
Supabase Tool
Agent
Mcp Trigger
+
Supabase Tool
Agent
Mcp Trigger
16 노드Amanda Benks
엔지니어링
ozki: OpenAI CSV 분석
OpenAI 기반 데이터 에이전트를 사용한 Google Sheets 데이터 분석
Agent
Google Sheets Tool
Chat Trigger
+
Agent
Google Sheets Tool
Chat Trigger
6 노드ozkary
엔지니어링
워크플로우 정보
난이도
중급
노드 수13
카테고리3
노드 유형8
저자
Aitor | 1node.ai
@aitoralonsoHi, I’m Aitor, cofounder of 1node.ai. We help businesses integrate full-scale AI solutions that save time, cut costs, and increase revenue. Guaranteed. Need help building smarter workflows? Visit 1node.ai and let's connect.
외부 링크
n8n.io에서 보기 →
이 워크플로우 공유