MCP 서버를 통한 KlickTipp 연락처 관리
고급
이것은CRM, AI Chatbot분야의자동화 워크플로우로, 31개의 노드를 포함합니다.주로 ToolCode, KlicktippTool, McpTrigger 등의 노드를 사용하며. MCP 서버를 통한 KlickTipp의 AI 기반 연락처 관리
사전 요구사항
- •특별한 사전 요구사항 없이 가져와 바로 사용 가능합니다
사용된 노드 (31)
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
"id": "j1FtJoAyaYNpmJzT",
"meta": {
"instanceId": "95b3ab5a70ab1c8c1906357a367f1b236ef12a1409406fd992f60255f0f95f85",
"templateCredsSetupCompleted": true
},
"name": "Manage contacts in KlickTipp via MCP server",
"tags": [
{
"id": "15wrq9sti6wyqr6J",
"name": "TEMPLATE",
"createdAt": "2025-01-08T16:34:30.163Z",
"updatedAt": "2025-01-08T16:34:30.163Z"
}
],
"nodes": [
{
"id": "f77dc3f1-296f-407f-998c-d0c962462c99",
"name": "MCP 서버 트리거",
"type": "@n8n/n8n-nodes-langchain.mcpTrigger",
"position": [
-560,
-260
],
"webhookId": "efd64e04-db77-499d-832b-f17e99bd9ef4",
"parameters": {
"path": "klicktipp-mcp"
},
"typeVersion": 1
},
{
"id": "341d39bc-7e6c-487d-9272-1d5820c054b1",
"name": "스티커 메모4",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2340,
-280
],
"parameters": {
"width": 580,
"height": 1680,
"content": "### How It Works\n\n**AI-Driven Contact Management with MCP and KlickTipp Integration:**\nThis workflow connects an MCP Server with the KlickTipp contact management platform and integrates it with an LLM (e.g. Claude etc.) to enable intelligent querying and segmentation of contact data. It covers all major KlickTipp API endpoints, providing a comprehensive toolkit for automated contact handling and campaign targeting.\n\n### Key Features\n**MCP Server Trigger:**\n- Initiates the workflow via the MCP server, listening for incoming requests related to contact queries or segmentation actions.\n\n\n**LLM Interaction Setup:**\n- Interacts with an OpenAI or Claude model to handle natural language queries such as contact lookups, tagging, and segmentation tasks.\n\n\n**KlickTipp Integration:**\nComplete set of KlickTipp API endpoints included:\n - **Contact Management:** Add, update, get, list, delete, and unsubscribe contacts.\n - **Contact Tagging:** Tag, untag, list tagged contacts.\n - **Tag Operations:** Create, get, update, delete, list tags.\n - **Opt-In Processes:** List and retrieve opt-in process details.\n - **Data Fields:** List and get custom data fields.\n - **Redirects:** Retrieve redirect URLs.\n\n\n**Use Cases Supported:**\n- Query contact information via email or name.\n- Identify and segment contacts by city, region, or behavior.\n- Create or update contacts from the provided data.\n- Dynamically apply or remove tags to initiate campaigns.\n- Automate targeted outreach based on contact attributes.\n\n\n### Setup Instructions\n**Install and Configure Nodes:**\n- Set up MCP Server.\n- Configure the LLM connection (e.g., Claude Desktop configuration).\n- Add and authenticate all KlickTipp nodes using valid API credentials.\n\n\n**Define Tagging and Field Mapping:**\n- Identify which fields and tags are relevant to your use cases.\n- Ensure necessary tags and custom fields are already created in KlickTipp.\n\n\n**Workflow Logic:**\n1. **Trigger via MCP Server:** A prompt or webhook call activates the server listener.\n2. **Query Handling via LLM Agent:** AI interprets the natural language input and determines the action.\n3. **Contact Search & Segmentation:** Searches contacts using identifiers (email, address) or criteria.\n4. **Data Operations:** Retrieves, updates, or manages contact and tag data based on interpreted command.\n5. **Campaign Preparation:** Applies tags or sends campaign triggers depending on query results.\n\n\n**Benefits:**\n- **AI-Powered Automation:** Reduces manual contact search and tagging efforts through intelligent processing.\n- **Scalable Integration:** Built-in support for full range of KlickTipp operations allows diverse use-case handling.\n- **Data Consistency:** Ensures structured data flows between MCP, AI, and KlickTipp, minimizing errors.\n\n\n**Testing and Deployment:**\nUse defined prompts such as:\n- “Tell me something about the contact with email address X”\n- “Tag all contacts from region Y”\n- “Send campaign Z to customers in area A”\nValidate expected actions in KlickTipp after prompt execution.\n\n\n**Notes:**\n- **Customization:** Adjust tag logic, AI prompts, and contact field mappings based on project needs.\n- **Extensibility:** The template can be expanded with further logic for Google Sheets input or campaign feedback loops"
},
"typeVersion": 1
},
{
"id": "5bf83c00-cfb6-442e-8a5f-adda11bcb3a6",
"name": "스티커 메모1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-700,
20
],
"parameters": {
"color": 7,
"width": 640,
"height": 420,
"content": "## Contact Management"
},
"typeVersion": 1
},
{
"id": "d29e652f-41f8-4470-8279-1fd93dc8d251",
"name": "스티커 메모9",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1720,
20
],
"parameters": {
"color": 7,
"width": 300,
"height": 240,
"content": "## Opt-in Processes\n"
},
"typeVersion": 1
},
{
"id": "19fc7ac8-b04b-4a64-84b3-fc725097ac7f",
"name": "스티커 메모10",
"type": "n8n-nodes-base.stickyNote",
"position": [
220,
20
],
"parameters": {
"color": 7,
"width": 620,
"height": 220,
"content": "## Tag Operations\n"
},
"typeVersion": 1
},
{
"id": "126266e7-aa4b-429c-8af6-6c01c5fbe047",
"name": "스티커 메모11",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1380,
20
],
"parameters": {
"color": 7,
"width": 300,
"height": 240,
"content": "## Data Fields\n"
},
"typeVersion": 1
},
{
"id": "c7a6da61-07a5-4cb2-ac01-569976db2d5b",
"name": "스티커 메모12",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1040,
20
],
"parameters": {
"color": 7,
"width": 300,
"height": 240,
"content": "## Contact Tagging\n"
},
"typeVersion": 1
},
{
"id": "6585112d-c646-4374-94f4-221bb797a915",
"name": "스티커 메모13",
"type": "n8n-nodes-base.stickyNote",
"position": [
-20,
20
],
"parameters": {
"color": 7,
"width": 200,
"height": 220,
"content": "## Redirects\n"
},
"typeVersion": 1
},
{
"id": "2bdb8896-4f51-4f70-a0b9-6592272aa201",
"name": "타임스탬프를 날짜로 변환",
"type": "@n8n/n8n-nodes-langchain.toolCode",
"onError": "continueRegularOutput",
"position": [
920,
100
],
"parameters": {
"jsCode": "const raw = query;\nconst secs = Number(raw);\nconst isTimestamp = Number.isFinite(secs) && /^[+-]?\\d{8,13}$/.test(String(raw));\n\nif (!isTimestamp) {\n return '';\n}\n\nconst ms = secs * 1000;\n\nconst formatted = DateTime\n .fromMillis(ms, { zone: 'UTC' })\n .setZone('Europe/Berlin')\n .toFormat('dd.MM.yyyy HH:mm:ss ZZZ');\n\nreturn String(formatted);",
"description": "Call this tool to convert an incoming Unix‐seconds timestamp to a UTC date string."
},
"typeVersion": 1.2,
"alwaysOutputData": false
},
{
"id": "a184f160-951a-4b64-8dc0-41a143b6b2b4",
"name": "스티커 메모5",
"type": "n8n-nodes-base.stickyNote",
"position": [
880,
20
],
"parameters": {
"color": 7,
"width": 360,
"height": 220,
"content": "## Additional Tools"
},
"typeVersion": 1
},
{
"id": "d67f04aa-5821-4ab0-b68f-e33eac33338f",
"name": "날짜를 타임스탬프로 변환",
"type": "@n8n/n8n-nodes-langchain.toolCode",
"position": [
1100,
100
],
"parameters": {
"jsCode": "const raw = query || 'N/A';\n\nconst formats = [\n 'd.LL.yyyy HH:mm:ss',\n 'd.LL.yyyy', \n 'd LLLL yyyy HH:mm:ss',\n 'd LLLL yyyy', \n 'd LLL yyyy',\n 'yyyy-MM-dd',\n 'LLLL d, yyyy',\n 'd-M-yyyy',\n];\n\nlet dt = null;\nfor (const fmt of formats) {\n dt = DateTime.fromFormat(raw, fmt, {\n zone : 'Europe/Berlin',\n locale: 'en',\n });\n if (dt.isValid) break;\n}\n\nif (!dt?.isValid) {\n dt = DateTime.fromISO(raw, { zone: 'Europe/Berlin' });\n}\n\nif (!dt?.isValid) {\n dt = DateTime.fromSQL?.(raw, { zone: 'Europe/Berlin' });\n}\n\nif (!dt?.isValid) {\n return 'N/A';\n}\n\nconst timestamp = Math.floor(dt.toUTC().toSeconds());\n\nreturn timestamp;",
"description": "Call this tool to converts a human-readable date string (e.g. 05.05.2025 01:00:00) into a Unix timestamp in seconds.\nPass the date through the parameter `query` as a string."
},
"typeVersion": 1.2,
"alwaysOutputData": true
},
{
"id": "bc2ddd85-5df9-412e-ba4f-cefea205bde5",
"name": "연락처 ID 가져오기",
"type": "n8n-nodes-klicktipp.klicktippTool",
"position": [
-180,
100
],
"parameters": {
"email": "={{ $fromAI(\"email\", \"The contact's email address.\", \"string\", \"\") }}",
"resource": "subscriber",
"operation": "search",
"descriptionType": "manual",
"toolDescription": "Returns the contact ID for an email address."
},
"credentials": {
"klickTippApi": {
"id": "NTht3frPxvENgu0k",
"name": "Mykhaylo's KlickTipp"
}
},
"typeVersion": 2
},
{
"id": "a16c8d05-433e-4459-a0a9-3c4453f2c86a",
"name": "연락처 정보 가져오기",
"type": "n8n-nodes-klicktipp.klicktippTool",
"position": [
-340,
100
],
"parameters": {
"resource": "subscriber",
"operation": "get",
"subscriberId": "={{ $fromAI(\"contactId\", \"The contact's ID\", \"string\", \"\") }}",
"descriptionType": "manual",
"toolDescription": "Returns the complete data of a contact by ID."
},
"credentials": {
"klickTippApi": {
"id": "NTht3frPxvENgu0k",
"name": "Mykhaylo's KlickTipp"
}
},
"typeVersion": 2
},
{
"id": "65dcfb83-65c7-48d6-8f8f-3a8be88c00ea",
"name": "연락처 추가 또는 업데이트",
"type": "n8n-nodes-klicktipp.klicktippTool",
"position": [
-500,
100
],
"parameters": {
"email": "={{ $fromAI(\"email\", \"The contact's email address.\", \"string\", \"\") }}",
"tagId": "={{ $fromAI(\"tagId\", \"The tag ID.\", \"number\", \"\") }}",
"fields": {
"dataFields": [
{
"fieldId": "fieldFirstName",
"fieldValue": "={{ $fromAI(\"fieldFirstName\", \"Contact’s first name.\", \"string\", \"\") }}"
},
{
"fieldId": "fieldLastName",
"fieldValue": "={{ $fromAI(\"fieldLastName\", \"Contact’s last name.\", \"string\", \"\") }}"
},
{
"fieldId": "fieldCompanyName",
"fieldValue": "={{ $fromAI(\"fieldCompany\", \"Contact’s company name.\", \"string\", \"\") }}"
},
{
"fieldId": "fieldStreet1",
"fieldValue": "={{ $fromAI(\"fieldAddress1\", \"Contact’s primary street address\", \"string\", \"\") }}"
},
{
"fieldId": "fieldStreet2",
"fieldValue": "={{ $fromAI(\"fieldAddress2\", \"Contact’s secondary street address\", \"string\", \"\") }}"
},
{
"fieldId": "fieldCity",
"fieldValue": "={{ $fromAI(\"fieldCity\", \"Contact’s city\", \"string\", \"\") }}"
},
{
"fieldId": "fieldState",
"fieldValue": "={{ $fromAI(\"fieldState\", \"Contact’s state or region\", \"string\", \"\") }}"
},
{
"fieldId": "fieldZip",
"fieldValue": "={{ $fromAI(\"fieldZip\", \"Contact’s ZIP or postal code\", \"string\", \"\") }}"
},
{
"fieldId": "fieldCountry",
"fieldValue": "={{ $fromAI(\"fieldCountry\", \"Contact’s country\", \"string\", \"\") }}"
},
{
"fieldId": "fieldMobilePhone",
"fieldValue": "={{ $fromAI(\"fieldMobilePhone\", \"Contact’s mobile phone in international format starting with '00' (e.g., 00491631737743)\", \"string\", \"\") }}"
},
{
"fieldId": "fieldPrivatePhone",
"fieldValue": "={{ $fromAI(\"fieldPrivatePhone\", \"Contact’s private phone in international format starting with '00' (e.g., 00491631737743)\", \"string\", \"\") }}"
},
{
"fieldId": "fieldFax",
"fieldValue": "={{ $fromAI(\"fieldFax\", \"Contact’s fax number in international format starting with '00' (e.g., 0049301234567)\", \"string\", \"\") }}"
},
{
"fieldId": "fieldBirthday",
"fieldValue": "={{ $fromAI(\n \"fieldBirthday\",\n \"Unix seconds for the contact’s birthday — supply **only** when the user explicitly asks to set a birthday (keywords: birthday / birth date / set birthday). Otherwise leave undefined.\",\n \"number\",\n undefined\n) ?? undefined }}"
},
{
"fieldId": "fieldLeadValue",
"fieldValue": "={{ $fromAI(\"fieldLeadValue\", \"Estimated lead value as a number\", \"number\", \"\") }}"
},
{
"fieldId": "fieldWebsite",
"fieldValue": "={{ $fromAI(\"fieldWebsite\", \"Contact’s website URL\", \"string\", \"\") }}"
}
]
},
"listId": "={{ $fromAI(\"optInId\", \"The opt-in process ID.\", \"number\", \"\") }}",
"resource": "subscriber",
"operation": "subscribe",
"smsNumber": "={{ $fromAI(\"smsNumber\", \"The contact's SMS number.\", \"string\", \"\") }}",
"descriptionType": "manual",
"toolDescription": "Adds a new contact. If a contact with the same email already exists, it will be updated."
},
"credentials": {
"klickTippApi": {
"id": "NTht3frPxvENgu0k",
"name": "Mykhaylo's KlickTipp"
}
},
"typeVersion": 2
},
{
"id": "d1d2384f-d798-41e7-9af1-01b2fe787b94",
"name": "연락처 목록 조회",
"type": "n8n-nodes-klicktipp.klicktippTool",
"position": [
-660,
100
],
"parameters": {
"resource": "subscriber",
"descriptionType": "manual",
"toolDescription": "Fetch contact IDs"
},
"credentials": {
"klickTippApi": {
"id": "NTht3frPxvENgu0k",
"name": "Mykhaylo's KlickTipp"
}
},
"typeVersion": 2
},
{
"id": "0a1a32e3-88c9-4a37-82b9-0d52f9284119",
"name": "연락처 업데이트",
"type": "n8n-nodes-klicktipp.klicktippTool",
"position": [
-660,
280
],
"parameters": {
"email": "={{ $fromAI(\"email\", \"The contact's email address.\", \"string\", \"\") }}",
"fields": {
"dataFields": [
{
"fieldId": "fieldFirstName",
"fieldValue": "={{ $fromAI(\"fieldFirstName\", \"Contact’s first name.\", \"string\", \"\") }}"
},
{
"fieldId": "fieldLastName",
"fieldValue": "={{ $fromAI(\"fieldLastName\", \"Contact’s last name.\", \"string\", \"\") }}"
},
{
"fieldId": "fieldCompanyName",
"fieldValue": "={{ $fromAI(\"fieldCompany\", \"Contact’s company name.\", \"string\", \"\") }}"
},
{
"fieldId": "fieldStreet1",
"fieldValue": "={{ $fromAI(\"fieldAddress1\", \"Contact’s primary street address\", \"string\", \"\") }}"
},
{
"fieldId": "fieldStreet2",
"fieldValue": "={{ $fromAI(\"fieldAddress2\", \"Contact’s secondary street address\", \"string\", \"\") }}"
},
{
"fieldId": "fieldCity",
"fieldValue": "={{ $fromAI(\"fieldCity\", \"Contact’s city\", \"string\", \"\") }}"
},
{
"fieldId": "fieldState",
"fieldValue": "={{ $fromAI(\"fieldState\", \"Contact’s state or region\", \"string\", \"\") }}"
},
{
"fieldId": "fieldZip",
"fieldValue": "={{ $fromAI(\"fieldZip\", \"Contact’s ZIP or postal code\", \"string\", \"\") }}"
},
{
"fieldId": "fieldCountry",
"fieldValue": "={{ $fromAI(\"fieldCountry\", \"Contact’s country\", \"string\", \"\") }}"
},
{
"fieldId": "fieldPrivatePhone",
"fieldValue": "={{ $fromAI(\"fieldPrivatePhone\", \"Contact’s private phone in international format starting with '00' (e.g., 00491631737743)\", \"string\", \"\") }}"
},
{
"fieldId": "fieldMobilePhone",
"fieldValue": "={{ $fromAI(\"fieldMobilePhone\", \"Contact’s mobile phone in international format starting with '00' (e.g., 00491631737743)\", \"string\", \"\") }}"
},
{
"fieldId": "fieldFax",
"fieldValue": "={{ $fromAI(\"fieldFax\", \"Contact’s fax number in international format starting with '00' (e.g., 0049301234567)\", \"string\", \"\") }}"
},
{
"fieldId": "fieldWebsite",
"fieldValue": "={{ $fromAI(\"fieldWebsite\", \"Contact’s website URL\", \"string\", \"\") }}"
},
{
"fieldId": "fieldBirthday",
"fieldValue": "={{ $fromAI(\"fieldBirthday\", \"Contact’s birthday as Unix seconds.\", \"number\", \"\") }}"
},
{
"fieldId": "fieldLeadValue",
"fieldValue": "={{ $fromAI(\"fieldLeadValue\", \"Estimated lead value as a number\", \"number\", \"\") }}"
}
]
},
"resource": "subscriber",
"operation": "update",
"smsNumber": "={{ $fromAI(\"smsNumber\", \"The contact's SMS number.\", \"string\", \"\") }}",
"subscriberId": "={{ $fromAI(\"contactId\", \"The contact's ID.\", \"number\", \"\") }}",
"descriptionType": "manual",
"toolDescription": "Updates a contact by contact ID."
},
"credentials": {
"klickTippApi": {
"id": "NTht3frPxvENgu0k",
"name": "Mykhaylo's KlickTipp"
}
},
"typeVersion": 2
},
{
"id": "5bbf6355-3037-4d59-b893-f6de4e3e4527",
"name": "연락처 삭제",
"type": "n8n-nodes-klicktipp.klicktippTool",
"position": [
-500,
280
],
"parameters": {
"resource": "subscriber",
"operation": "delete",
"subscriberId": "={{ $fromAI(\"contactId\", \"The contact's ID.\", \"string\", \"\") }}",
"descriptionType": "manual",
"toolDescription": "Deletes a contact."
},
"credentials": {
"klickTippApi": {
"id": "NTht3frPxvENgu0k",
"name": "Mykhaylo's KlickTipp"
}
},
"typeVersion": 2
},
{
"id": "49313a57-acc9-4244-b273-ffbf86c9b625",
"name": "연락처 구독 취소",
"type": "n8n-nodes-klicktipp.klicktippTool",
"position": [
-340,
280
],
"parameters": {
"email": "={{ $fromAI(\"email\", \"The contact's email address.\", \"string\", \"\") }}",
"resource": "subscriber",
"operation": "unsubscribe",
"descriptionType": "manual",
"toolDescription": "Unsubscribes a contact, preventing further communication."
},
"credentials": {
"klickTippApi": {
"id": "NTht3frPxvENgu0k",
"name": "Mykhaylo's KlickTipp"
}
},
"typeVersion": 2
},
{
"id": "f23efcff-e9a1-4e28-9005-4d3e2d217ca9",
"name": "태그가 지정된 연락처 목록 조회",
"type": "n8n-nodes-klicktipp.klicktippTool",
"position": [
-180,
280
],
"parameters": {
"tagId": "={{ $fromAI(\"tagId\", \"The tag ID.\", \"number\", \"\") }}",
"resource": "subscriber",
"operation": "tagged",
"descriptionType": "manual",
"toolDescription": "Lists the IDs and tagging timestamps of all tagged contacts."
},
"credentials": {
"klickTippApi": {
"id": "NTht3frPxvENgu0k",
"name": "Mykhaylo's KlickTipp"
}
},
"typeVersion": 2
},
{
"id": "3b4d7467-faf8-4c9a-a80d-23154008544b",
"name": "연락처에 태그 지정",
"type": "n8n-nodes-klicktipp.klicktippTool",
"position": [
-860,
100
],
"parameters": {
"email": "={{ $fromAI(\"email\", \"The contact's email address.\", \"string\", \"\") }}",
"tagId": "={{ \n JSON.parse(\n $fromAI(\n \"tagIds\",\n \"Return ONLY a JSON array of numeric tag IDs. \"\n + \"Absolutely nothing else — no markdown, no back-ticks. \"\n + \"Example: [12042204,12054769]\",\n \"string\"\n )\n )\n .map(Number)\n}}\n",
"resource": "contact-tagging",
"descriptionType": "manual",
"toolDescription": "Adds one or more tags to a contact.\nYou can pass a single tag or a list of tags to apply multiple tags in one call."
},
"credentials": {
"klickTippApi": {
"id": "NTht3frPxvENgu0k",
"name": "Mykhaylo's KlickTipp"
}
},
"typeVersion": 2
},
{
"id": "906017de-8a73-4e2d-892c-79792e3e4f26",
"name": "연락처에서 태그 제거",
"type": "n8n-nodes-klicktipp.klicktippTool",
"position": [
-1000,
100
],
"parameters": {
"email": "={{ $fromAI(\"email\", \"The contact's email address.\", \"string\", \"\") }}",
"tagId": "={{ $fromAI(\"tagId\", \"The tag ID.\", \"number\", \"\") }}",
"resource": "contact-tagging",
"operation": "untag",
"descriptionType": "manual",
"toolDescription": "Removes a tag from a contact."
},
"credentials": {
"klickTippApi": {
"id": "NTht3frPxvENgu0k",
"name": "Mykhaylo's KlickTipp"
}
},
"typeVersion": 2
},
{
"id": "b45bfda8-7a10-4456-bd16-cf7254eec398",
"name": "데이터 필드 정보 가져오기",
"type": "n8n-nodes-klicktipp.klicktippTool",
"position": [
-1200,
100
],
"parameters": {
"resource": "field",
"operation": "get",
"apiFieldId": "={{ $fromAI(\"fieldId\", \"The data field ID.\", \"string\", \"\") }}",
"descriptionType": "manual",
"toolDescription": "Gets the ID and the name of a data field."
},
"credentials": {
"klickTippApi": {
"id": "NTht3frPxvENgu0k",
"name": "Mykhaylo's KlickTipp"
}
},
"typeVersion": 2
},
{
"id": "1c33eb1b-f0e7-4e76-ba2e-925737a80196",
"name": "데이터 필드 목록 조회",
"type": "n8n-nodes-klicktipp.klicktippTool",
"position": [
-1340,
100
],
"parameters": {
"resource": "field",
"descriptionType": "manual",
"toolDescription": "Lists the IDs and names of all data fields."
},
"credentials": {
"klickTippApi": {
"id": "NTht3frPxvENgu0k",
"name": "Mykhaylo's KlickTipp"
}
},
"typeVersion": 2
},
{
"id": "53627bbf-b097-4e58-b1cc-1013c1f00481",
"name": "옵트인 프로세스 목록 조회",
"type": "n8n-nodes-klicktipp.klicktippTool",
"position": [
-1700,
100
],
"parameters": {
"resource": "opt-in",
"descriptionType": "manual",
"toolDescription": "Lists the IDs and names of all opt-in processes."
},
"credentials": {
"klickTippApi": {
"id": "NTht3frPxvENgu0k",
"name": "Mykhaylo's KlickTipp"
}
},
"typeVersion": 2
},
{
"id": "e7de706e-00c8-4b63-a703-8fbe30a03303",
"name": "옵트인 프로세스 정보 가져오기",
"type": "n8n-nodes-klicktipp.klicktippTool",
"position": [
-1560,
100
],
"parameters": {
"listId": "={{ $fromAI(\"optInId\", \"The opt-in process ID.\", \"number\", \"\") }}",
"resource": "opt-in",
"operation": "get",
"descriptionType": "manual",
"toolDescription": "Returns the complete data of an opt-in process by ID."
},
"credentials": {
"klickTippApi": {
"id": "NTht3frPxvENgu0k",
"name": "Mykhaylo's KlickTipp"
}
},
"typeVersion": 2
},
{
"id": "ee7e4a59-fc33-4315-80e0-b30b914e9749",
"name": "리디렉션 URL 가져오기",
"type": "n8n-nodes-klicktipp.klicktippTool",
"position": [
40,
100
],
"parameters": {
"email": "={{ $fromAI(\"email\", \"The contact's email address.\", \"string\", \"\") }}",
"listId": "={{ $fromAI(\"optInId\", \"The opt-in process ID.\", \"number\", \"\") }}",
"resource": "opt-in",
"operation": "getRedirect",
"descriptionType": "manual",
"toolDescription": "Gets the redirection URL for a specific opt-in process."
},
"credentials": {
"klickTippApi": {
"id": "NTht3frPxvENgu0k",
"name": "Mykhaylo's KlickTipp"
}
},
"typeVersion": 2
},
{
"id": "5741d612-c22b-4395-8ab1-f037f4d17381",
"name": "태그 목록 조회",
"type": "n8n-nodes-klicktipp.klicktippTool",
"position": [
260,
100
],
"parameters": {
"descriptionType": "manual",
"toolDescription": "Lists the IDs and names of all tags."
},
"credentials": {
"klickTippApi": {
"id": "NTht3frPxvENgu0k",
"name": "Mykhaylo's KlickTipp"
}
},
"typeVersion": 2
},
{
"id": "2f8e5766-d62a-4252-ac5b-41a6c2bf7dc4",
"name": "태그 생성",
"type": "n8n-nodes-klicktipp.klicktippTool",
"position": [
380,
100
],
"parameters": {
"name": "={{ $fromAI(\"tagName\", \"The tag name\", \"string\", \"\") }}",
"operation": "create",
"description": "={{ $fromAI(\"tagDescription\", \"The tag description\", \"string\", \"\") }}",
"descriptionType": "manual",
"toolDescription": "Creates a new manual tag."
},
"credentials": {
"klickTippApi": {
"id": "NTht3frPxvENgu0k",
"name": "Mykhaylo's KlickTipp"
}
},
"typeVersion": 2
},
{
"id": "7597bdf8-033b-40ac-8a3f-3729bbf94d92",
"name": "태그 정보 가져오기",
"type": "n8n-nodes-klicktipp.klicktippTool",
"position": [
500,
100
],
"parameters": {
"tagId": "={{ $fromAI(\"tagId\", \"The tag ID\", \"number\", \"\") }}",
"operation": "get",
"descriptionType": "manual",
"toolDescription": "Returns the name and description of a tag."
},
"credentials": {
"klickTippApi": {
"id": "NTht3frPxvENgu0k",
"name": "Mykhaylo's KlickTipp"
}
},
"typeVersion": 2
},
{
"id": "4e50743f-af39-4f28-9125-0df08802dc10",
"name": "태그 삭제",
"type": "n8n-nodes-klicktipp.klicktippTool",
"position": [
620,
100
],
"parameters": {
"tagId": "={{ $fromAI(\"tagId\", \"The tag ID\", \"number\", \"\") }}",
"operation": "delete",
"descriptionType": "manual",
"toolDescription": "Deletes a tag."
},
"credentials": {
"klickTippApi": {
"id": "NTht3frPxvENgu0k",
"name": "Mykhaylo's KlickTipp"
}
},
"typeVersion": 2
},
{
"id": "054c7fcb-efff-4ce0-ac95-70514385c6f0",
"name": "태그 업데이트",
"type": "n8n-nodes-klicktipp.klicktippTool",
"position": [
740,
100
],
"parameters": {
"name": "={{ $fromAI(\"tagName\", \"The tag name\", \"string\", \"\") }}",
"tagId": "={{ $fromAI(\"tagId\", \"The tag ID\", \"number\", \"\") }}",
"operation": "update",
"description": "={{ $fromAI(\"tagDescription\", \"The tag description\", \"string\", \"\") }}",
"descriptionType": "manual",
"toolDescription": "Updates a tag."
},
"credentials": {
"klickTippApi": {
"id": "NTht3frPxvENgu0k",
"name": "Mykhaylo's KlickTipp"
}
},
"typeVersion": 2
}
],
"active": true,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "6b23235b-34c2-4d5b-a73c-297929347484",
"connections": {
"7597bdf8-033b-40ac-8a3f-3729bbf94d92": {
"ai_tool": [
[
{
"node": "f77dc3f1-296f-407f-998c-d0c962462c99",
"type": "ai_tool",
"index": 0
}
]
]
},
"5741d612-c22b-4395-8ab1-f037f4d17381": {
"ai_tool": [
[
{
"node": "f77dc3f1-296f-407f-998c-d0c962462c99",
"type": "ai_tool",
"index": 0
}
]
]
},
"2f8e5766-d62a-4252-ac5b-41a6c2bf7dc4": {
"ai_tool": [
[
{
"node": "f77dc3f1-296f-407f-998c-d0c962462c99",
"type": "ai_tool",
"index": 0
}
]
]
},
"4e50743f-af39-4f28-9125-0df08802dc10": {
"ai_tool": [
[
{
"node": "f77dc3f1-296f-407f-998c-d0c962462c99",
"type": "ai_tool",
"index": 0
}
]
]
},
"054c7fcb-efff-4ce0-ac95-70514385c6f0": {
"ai_tool": [
[
{
"node": "f77dc3f1-296f-407f-998c-d0c962462c99",
"type": "ai_tool",
"index": 0
}
]
]
},
"a16c8d05-433e-4459-a0a9-3c4453f2c86a": {
"ai_tool": [
[
{
"node": "f77dc3f1-296f-407f-998c-d0c962462c99",
"type": "ai_tool",
"index": 0
}
]
]
},
"3b4d7467-faf8-4c9a-a80d-23154008544b": {
"ai_tool": [
[
{
"node": "f77dc3f1-296f-407f-998c-d0c962462c99",
"type": "ai_tool",
"index": 0
}
]
]
},
"d1d2384f-d798-41e7-9af1-01b2fe787b94": {
"ai_tool": [
[
{
"node": "f77dc3f1-296f-407f-998c-d0c962462c99",
"type": "ai_tool",
"index": 0
}
]
]
},
"906017de-8a73-4e2d-892c-79792e3e4f26": {
"ai_tool": [
[
{
"node": "f77dc3f1-296f-407f-998c-d0c962462c99",
"type": "ai_tool",
"index": 0
}
]
]
},
"5bbf6355-3037-4d59-b893-f6de4e3e4527": {
"ai_tool": [
[
{
"node": "f77dc3f1-296f-407f-998c-d0c962462c99",
"type": "ai_tool",
"index": 0
}
]
]
},
"bc2ddd85-5df9-412e-ba4f-cefea205bde5": {
"ai_tool": [
[
{
"node": "f77dc3f1-296f-407f-998c-d0c962462c99",
"type": "ai_tool",
"index": 0
}
]
]
},
"b45bfda8-7a10-4456-bd16-cf7254eec398": {
"ai_tool": [
[
{
"node": "f77dc3f1-296f-407f-998c-d0c962462c99",
"type": "ai_tool",
"index": 0
}
]
]
},
"0a1a32e3-88c9-4a37-82b9-0d52f9284119": {
"ai_tool": [
[
{
"node": "f77dc3f1-296f-407f-998c-d0c962462c99",
"type": "ai_tool",
"index": 0
}
]
]
},
"ee7e4a59-fc33-4315-80e0-b30b914e9749": {
"ai_tool": [
[
{
"node": "f77dc3f1-296f-407f-998c-d0c962462c99",
"type": "ai_tool",
"index": 0
}
]
]
},
"1c33eb1b-f0e7-4e76-ba2e-925737a80196": {
"ai_tool": [
[
{
"node": "f77dc3f1-296f-407f-998c-d0c962462c99",
"type": "ai_tool",
"index": 0
}
]
]
},
"d67f04aa-5821-4ab0-b68f-e33eac33338f": {
"ai_tool": [
[
{
"node": "f77dc3f1-296f-407f-998c-d0c962462c99",
"type": "ai_tool",
"index": 0
}
]
]
},
"2bdb8896-4f51-4f70-a0b9-6592272aa201": {
"ai_tool": [
[
{
"node": "f77dc3f1-296f-407f-998c-d0c962462c99",
"type": "ai_tool",
"index": 0
}
]
]
},
"e7de706e-00c8-4b63-a703-8fbe30a03303": {
"ai_tool": [
[
{
"node": "f77dc3f1-296f-407f-998c-d0c962462c99",
"type": "ai_tool",
"index": 0
}
]
]
},
"49313a57-acc9-4244-b273-ffbf86c9b625": {
"ai_tool": [
[
{
"node": "f77dc3f1-296f-407f-998c-d0c962462c99",
"type": "ai_tool",
"index": 0
}
]
]
},
"f23efcff-e9a1-4e28-9005-4d3e2d217ca9": {
"ai_tool": [
[
{
"node": "f77dc3f1-296f-407f-998c-d0c962462c99",
"type": "ai_tool",
"index": 0
}
]
]
},
"65dcfb83-65c7-48d6-8f8f-3a8be88c00ea": {
"ai_tool": [
[
{
"node": "f77dc3f1-296f-407f-998c-d0c962462c99",
"type": "ai_tool",
"index": 0
}
]
]
},
"53627bbf-b097-4e58-b1cc-1013c1f00481": {
"ai_tool": [
[
{
"node": "f77dc3f1-296f-407f-998c-d0c962462c99",
"type": "ai_tool",
"index": 0
}
]
]
}
}
}자주 묻는 질문
이 워크플로우를 어떻게 사용하나요?
위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.
이 워크플로우는 어떤 시나리오에 적합한가요?
고급 - 고객관계관리, AI 챗봇
유료인가요?
이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.
관련 워크플로우 추천
Telegram AI 대리자를 통해 KlickTipp의 연락처를 관리
Telegram 로봇과 GPT-4o 에이전트를 사용하여 KlickTipp 연락처 관리
Set
Switch
Telegram
+
Set
Switch
Telegram
47 노드KlickTipp
고객관계관리
Airtable MCP
Airtable의 AI 기반 연락처 관리, 자연어 명령 지원
Airtable Tool
Mcp Trigger
Airtable Tool
Mcp Trigger
10 노드David Olusola
고객관계관리
KlickTipp와 사용자 정의私信를 사용하여 Instagram 댓글을 잠재 고객으로 변환
KlickTipp 및 사용자 정의 개별 메시지를 사용하여 Instagram 댓글을 잠재 고객으로 변환
If
Switch
Webhook
+
If
Switch
Webhook
12 노드KlickTipp
리드 육성
[eBay] 이행 API MCP 서버
eBay 이행 API 작업(AI 에이전트 및 MCP 서버)
Http Request Tool
Mcp Trigger
Http Request Tool
Mcp Trigger
21 노드David Ashby
고객관계관리
AI驱动의多平台어시스턴트 - Google套件、LinkedIn및Twitter
基于Google套件、LinkedIn및Twitter의AI驱动多平台어시스턴트
Code
Discord
Webhook
+
Code
Discord
Webhook
65 노드Jay Emp0
개인 생산성
CSO 대리인 및 판매 팀
사용OpenAI多에이전트团队및CSO编排构建完整판매部门
Agent
Agent Tool
Tool Think
+
Agent
Agent Tool
Tool Think
18 노드Yaron Been
고객관계관리
워크플로우 정보
난이도
고급
노드 수31
카테고리2
노드 유형4
저자
KlickTipp
@KlickTippReach more people. 100% GDPR compliant. Quickly create automated email campaigns, SMS and marketing automations. Market your knowledge independently of Google & Co., sell lucrative products and activate your customers.
외부 링크
n8n.io에서 보기 →
이 워크플로우 공유