Bulk CMS 업데이트
Webflow CMS 아이템을 포괄적인 검증, 세부 승인 및 롤백 기능과 함께 생성하거나 업데이트합니다.
중요 사항
모든 작업에 Webflow MCP 도구를 항상 사용하세요:
- 사이트 목록을 보려면 Webflow MCP의
data_sites_tool을list_sites액션과 함께 사용하세요 - CMS 컬렉션 목록을 보려면 Webflow MCP의
data_cms_tool을get_collection_list액션과 함께 사용하세요 - 컬렉션 스키마를 가져오려면 Webflow MCP의
data_cms_tool을get_collection_details액션과 함께 사용하세요 - 기존 아이템을 검색하려면 Webflow MCP의
data_cms_tool을list_collection_items액션과 함께 사용하세요 - 아이템을 생성하려면 Webflow MCP의
data_cms_tool을create_collection_items액션과 함께 사용하세요(초안 또는 발행) - 아이템을 업데이트하려면 Webflow MCP의
data_cms_tool을update_collection_items액션과 함께 사용하세요(초안 또는 발행) - 초안 아이템을 발행하려면 Webflow MCP의
data_cms_tool을publish_collection_items액션과 함께 사용하세요 - 시작하기 전에 모범 사례를 확인하려면 Webflow MCP의
webflow_guide_tool을 사용하세요 - Webflow 작업에 다른 도구나 방법을 사용하지 마세요
- 모든 도구 호출에는 필수
context매개변수(15-25단어, 3인칭 시점)를 포함해야 합니다
지침
1단계: 사이트 및 컬렉션 선택
- 사이트 가져오기: 대상 사이트를 식별합니다. 사용자가 사이트 ID를 제공하지 않으면 요청하세요.
- 컬렉션 나열: Webflow MCP의
data_cms_tool을get_collection_list액션과 함께 사용하여 사용 가능한 컬렉션을 표시합니다. - 사용자에게 컬렉션 선택 요청: 사용자가 작업할 컬렉션을 지정합니다.
- 컬렉션 스키마 가져오기: Webflow MCP의
data_cms_tool을get_collection_details액션과 함께 사용하여 다음을 검색합니다.- 모든 필드 정의 및 유형
- 필수 필드와 선택적 필드
- 필드 검증(최대 길이, 패턴 등)
- 참조 필드 대상
2단계: 데이터 수집 및 파싱
-
작업 유형 질문: 사용자가 원하는 작업을 명확히 합니다.
- 새 아이템만 생성
- 기존 아이템만 업데이트
- 생성 및 업데이트 모두
-
사용자로부터 데이터 수신: 유연한 형식으로 데이터를 수락합니다.
- 구조화된 형식(JSON 유사)
- 자연어 설명
- CSV 스타일 데이터
- 불릿 리스트
-
파싱 및 정규화: 사용자 데이터를 구조화된 형식으로 변환합니다.
-
기존 아이템 가져오기(업데이트가 포함된 경우): Webflow MCP의
data_cms_tool을list_collection_items액션과 함께 사용하여 현재 데이터를 가져옵니다.중요 - 효율적인 아이템 조회:
- 특정 아이템을 이름으로 검색할 때는 항상
name매개변수를 사용하여 필터링하세요(예:name: "Pikachu") - slug로 검색할 때는
slug매개변수를 사용하여 필터링하세요 - 모든 아이템을 먼저 가져온 다음 결과를 검색하지 마세요. 이는 API 호출과 토큰을 낭비합니다.
- 모든 아이템을 표시해야 하거나 대상 아이템을 모를 때만 전체 목록을 가져오세요.
- 특정 아이템을 이름으로 검색할 때는 항상
3단계: 검증 및 분석
- 모든 데이터 검증:
- 필드 이름: 모든 필드 이름이 스키마에 존재하는지 확인합니다.
- 필수 필드: 모든 필수 필드가 제공되었는지 확인합니다.
- 필드 유형: 데이터 유형이 스키마와 일치하는지 검증합니다.
- 제약 조건: 최대 길이, 패턴, 허용 값을 확인합니다.
- Slug: slug가 고유하고 유효한지 확인합니다.
- 참조 필드: 참조된 아이템이 존재하는지 확인합니다.
- 충돌 감지:
- 중복 slug(배치 내 또는 기존 아이템과)
- 누락된 필수 필드
- 잘못된 데이터 유형
- 제약 조건 위반
- 영향 분석:
- 생성 vs 업데이트 수 계산
- 변경될 필드 식별
- 배치 크기 및 처리 시간 계산
4단계: 미리보기 및 세부 승인
- 상세 미리보기 생성:
- 각 아이템을 검증 상태와 함께 표시
- 문제에 대한 경고 표시
- 업데이트의 경우 변경 사항(diff) 표시(이전 → 새로움)
- 생성의 경우 모든 필드 값 표시
- 선택적 승인을 위해 각 아이템에 번호 매기기
- 세부 승인 옵션 제시:
- 사용자가 처리할 특정 아이템을 선택할 수 있도록 허용
- 옵션: "모두", "없음", 특정 번호, 번호 범위
- 예상 처리 시간 표시
- 발행 옵션 제공:
- 즉시 발행(
*_live엔드포인트 사용) - 초안으로 생성(일반 엔드포인트 + 수동 발행 사용)
- 즉시 발행(
5단계: 실행 및 보고
- 롤백 데이터 저장: 변경 사항을 적용하기 전에 다음을 저장합니다.
- 업데이트된 모든 아이템의 원래 값
- 타임스탬프
- 작업 세부 정보
- 배치 처리:
- 배치당 최대 50개 아이템
- 진행률 표시기 표시
- 속도 제한을 우아하게 처리
- 작업 실행: 사용자 선택에 따라 적절한 Webflow MCP 도구 사용
- 오류를 우아하게 처리:
- 단일 아이템 실패 시 계속 처리
- 성공 및 실패를 별도로 추적
- 상세한 오류 메시지 제공
- 종합 보고서 생성:
- 요약(성공/실패 횟수)
- 아이템별 상세 결과
- 생성/업데이트된 아이템의 ID
- 실패한 아이템의 오류 세부 정보
- 롤백 옵션 제공: 필요한 경우 사용자가 변경 사항을 취소할 수 있도록 허용
예제
사용자 프롬프트:
Webflow MCP에 관한 블로그 게시물 2개를 추가하고 첫 번째 블로그의 제목을 "Best"에서 "Top"으로 업데이트해 줘.
1단계: 사이트 및 컬렉션 선택
📋 Bulk CMS 업데이트 설정
사용 가능한 사이트:
1. MCP 데모#1
2. MCP 데모#2
3. MCP 데모#3
사이트를 선택하세요 (1-3):
사용자 선택: 1
MCP 데모#1의 사용 가능한 컬렉션:
└── 블로그 게시물 (9개 아이템)
필드: name, slug, post-body, post-summary, main-image, thumbnail-image, featured, color
블로그 게시물 컬렉션으로 진행하시겠습니까? (예/아니오)
사용자 확인: 예
2단계: 데이터 수집
🔍 컬렉션 스키마: 블로그 게시물
필수 필드:
- name (PlainText, 최대 256자)
- slug (PlainText, 최대 256자, 영숫자만 가능)
선택적 필드:
- post-body (RichText)
- post-summary (PlainText)
- main-image (Image)
- thumbnail-image (Image)
- featured (Switch, true/false)
- color (Color, 16진수 형식)
요청을 파싱합니다:
- Webflow MCP에 관한 새 게시물 2개 생성
- 첫 번째 게시물 업데이트: "Best" → "Top"
아이템 생성 중...
3단계: 검증 및 미리보기
📋 미리보기: Bulk CMS 업데이트
컬렉션: 블로그 게시물
작업: 아이템 2개 생성 + 아이템 1개 업데이트
---
### 🆕 생성할 아이템 (2개)
[1] ✓ 새 게시물
name: "Webflow MCP: The Future of Web Development"
slug: "webflow-mcp-future-web-development"
post-summary: "Discover how Webflow MCP is revolutionizing..."
post-body: "<h1>The Future is Here</h1><p>..."
featured: true
color: "#9B59B6"
✅ 모든 검증 통과
[2] ✓ 새 게시물
name: "Why Webflow MCP Will Transform Your Workflow in 2026"
slug: "webflow-mcp-transform-workflow-2026"
post-summary: "Learn how Webflow MCP's integration..."
post-body: "<h1>Transform Your Workflow</h1><p>..."
featured: true
color: "#3498DB"
✅ 모든 검증 통과
---
### ✏️ 업데이트할 아이템 (1개)
[3] ✓ 기존 아이템 업데이트
아이템 ID: 69615f84fc6ce1aa444d24d5
Slug: why-webflow-is-best-2026-ai
변경 사항:
name: "Why Webflow is the Best Choice for 2026" → "Why Webflow is the Top Choice for 2026"
✅ 모든 검증 통과
---
**요약:**
- ✅ 2개 아이템이 생성됩니다
- ✅ 1개 아이템이 업데이트됩니다
- ⚠️ 경고 0개
- ❌ 오류 0개
**발행 옵션:**
1. 즉시 발행 (권장)
2. 초안으로 저장
어떤 아이템을 처리하시겠습니까?
- "모두"를 입력하면 3개 아이템 모두 처리
- 숫자를 입력하면 해당 아이템 건너뛰기 (예: "2"를 입력하면 아이템 2 건너뛰기)
- "없음"을 입력하면 취소
발행 옵션 선택 (1/2): _
아이템 선택: _
사용자 선택: 1, 모두
⚠️ 다음 작업을 수행하려고 합니다:
- 새 블로그 게시물 2개 생성(라이브로 발행)
- 기존 블로그 게시물 1개 업데이트(변경 사항 라이브로 발행)
계속하려면 "확인"을 입력하세요.
사용자 확인: 확인
4단계: 실행 및 결과
🔄 벌크 업데이트 처리 중...
아이템 생성 중: ██████████ 100% (2/2)
아이템 업데이트 중: ██████████ 100% (1/1)
✅ Bulk CMS 업데이트 완료!
---
### 🆕 생성된 아이템 (2개)
✓ [1] "Webflow MCP: The Future of Web Development"
ID: 6961640c66de07bed9aacf3e
Slug: webflow-mcp-future-web-development
발행: 2026년 1월 9일 오후 8:24
✓ [2] "Why Webflow MCP Will Transform Your Workflow in 2026"
ID: 6961640c66de07bed9aacf41
Slug: webflow-mcp-transform-workflow-2026
발행: 2026년 1월 9일 오후 8:24
---
### ✏️ 업데이트된 아이템 (1개)
✓ [3] "Why Webflow is the Top Choice for 2026"
ID: 69615f84fc6ce1aa444d24d5
변경: 제목 업데이트됨
발행: 2026년 1월 9일 오후 8:24
---
**요약:**
- ✅ 2개 아이템이 성공적으로 생성됨
- ✅ 1개 아이템이 성공적으로 업데이트됨
- ❌ 실패 0개
- ⏱️ 3.2초 만에 완료
**총 아이템 수:** 11개 (이전 9개)
📋 롤백 가능:
마지막 업데이트: 방금 3개 아이템 수정됨
5분 이내에 "실행 취소"를 입력하여 모든 변경 사항 되돌리기
대안: 검증 경고 포함
📋 미리보기: Bulk CMS 업데이트
[1] ⚠️ 새 게시물
name: "Test Post"
slug: "test"
post-summary: "Hi"
⚠️ 경고: post-summary가 너무 짧습니다(< 20자) - SEO에 영향을 줄 수 있음
⚠️ 경고: slug가 너무 일반적입니다 - 더 설명적인 slug를 고려하세요
⚠️ 경고: post-body가 누락됨 - 콘텐츠가 비어 있음
✅ 필수 필드 있음 (진행 가능)
[2] ❌ 새 게시물
name: "Another Post!!!"
slug: "another post"
❌ 오류: slug에 공백이 포함됨 (하이픈만 있는 영숫자여야 함)
❌ 오류: name에 허용되지 않는 특수 문자가 포함됨
🔴 진행 불가능 - 먼저 오류 수정
---
**요약:**
- ✅ 1개 아이템 생성 가능 (경고 있음)
- ❌ 1개 아이템에 오류 있음 (생성 불가)
아이템 2를 수정하거나 건너뛰시겠습니까? (수정/건너뛰기)
지침
1단계: 필수 요구 사항
사이트 및 컬렉션 선택:
- 항상
data_sites_tool을list_sites액션과 함께 사용하여 실제 사이트 목록을 가져오세요. - 사이트 ID를 추정하지 마세요.
- 컬렉션 이름과 아이템 수를 표시하세요.
- 데이터를 받기 전에 필드 스키마를 표시하세요.
- 사용자와 컬렉션 선택을 확인하세요.
2단계: 데이터 파싱
유연한 입력 형식: 여러 형식으로 데이터를 수락합니다.
- 구조화된 형식 (JSON 유사):
생성:
- name: "Post Title"
slug: "post-slug"
featured: true
- 자연어:
"'Getting Started'라는 블로그 게시물을 slug 'getting-started'로 추가해 줘"
- CSV 스타일:
name,slug,featured
"Post 1","post-1",true
"Post 2","post-2",false
- 불릿 리스트:
- 게시물 1: "Title" (slug: title-slug)
- 게시물 2: "Another" (slug: another-slug)
파싱 규칙:
- 형식 변형에 관대합니다.
- 누락된 선택적 필드는 추론합니다.
- 모호한 경우 명확히 질문합니다.
- 필수 필드 값을 추정하지 마세요.
효율적인 아이템 조회: 업데이트할 기존 아이템을 가져올 때 필터 매개변수를 사용하여 API 호출을 최소화하세요.
# 좋음 - 아이템 이름을 알 때 이름으로 필터링
webflow_data_cms_tool(action: "list_collection_items", collection_id, name: "Pikachu")
# 좋음 - slug를 알 때 slug로 필터링
webflow_data_cms_tool(action: "list_collection_items", collection_id, slug: "pikachu")
# 나쁨 - 모든 아이템을 가져온 다음 결과를 검색
webflow_data_cms_tool(action: "list_collection_items", collection_id) # 100개 아이템 반환
# 그런 다음 결과에서 "Pikachu" 수동 검색...
- 특정 아이템을 검색할 때는 항상
name또는slug매개변수를 사용하세요. - 이렇게 하면 API 호출, 응답 크기 및 토큰 사용량이 줄어듭니다.
- 모든 아이템을 표시하거나 대상을 알 수 없는 경우에만 필터링되지 않은 목록을 가져오세요.
3단계: 검증 규칙
필드 이름 검증:
- 모든 필드 이름이 스키마에 존재하는지 확인하세요.
- 대소문자를 구분하여 일치시킵니다.
- 오타에 대한 수정 제안을 표시합니다.
- 예: "autor" → "author"를 의미합니까?
필수 필드:
- Webflow CMS의 경우
name과slug는 항상 필수입니다. - 스키마에서 컬렉션별 필수 필드를 확인하세요.
- 누락된 모든 필수 필드를 명확하게 나열하세요.
- 필수 필드가 누락된 경우 진행할 수 없습니다.
필드 유형 검증:
PlainText:
- 최대 길이 제약 조건 확인
- 지정된 패턴 검증
- HTML 허용 안 됨
RichText:
- 유효한 HTML이어야 함
- 닫히지 않은 태그 확인
- 일반적인 HTML 요소 허용
Image/File:
- 파일 ID 또는 URL 허용
- 가능한 경우 파일 존재 확인
- 대체 텍스트는 선택 사항
Switch (Boolean):
- 수락: true/false, yes/no, 1/0
- 부울로 정규화
Color:
- 16진수 형식이어야 함 (#RRGGBB)
- 16진수 문자 검증
- 예: #FF5733 ✓, red ✗
참조 필드:
- 기존 아이템 ID를 참조해야 함
- 참조된 아이템이 존재하는지 확인
- 명확성을 위해 참조된 아이템 이름 표시
Slug 검증:
- 중요: 하이픈만 있는 영숫자여야 함
- 공백, 밑줄 또는 특수 문자 없음
- 최대 256자
- 고유해야 함(기존 + 배치 확인)
- 누락된 경우 제목에서 slug 자동 제안
- 예:
- ❌ "My Post!" → ⚠️ 특수 문자 포함
- ✅ "my-post" → 유효함
제약 조건 검증:
- 최대 길이: 제한에 가까우면 경고, 초과하면 오류
- 패턴: 스키마의 정규식 패턴 테스트
- 허용 값: 열거된 옵션과 비교
4단계: 미리보기 및 승인
미리보기 형식:
생성 작업의 경우:
[1] ✓ 새 게시물
field1: "value1"
field2: "value2"
field3: "value3"
✅ 모든 검증 통과
업데이트 작업의 경우:
[2] ✓ 기존 아이템 업데이트
아이템 ID: xxx
Slug: existing-slug
변경 사항:
field1: "old value" → "new value"
field2: (변경 없음)
field3: "old" → "new"
✅ 모든 검증 통과
경고가 있는 아이템의 경우:
[3] ⚠️ 새 게시물
name: "Title"
⚠️ 경고: 선택적 필드 'post-body' 누락
⚠️ 경고: slug가 너무 일반적일 수 있음
✅ 진행 가능 (경고만 있음)
오류가 있는 아이템의 경우:
[4] ❌ 새 게시물
name: "Title!!!"
slug: "bad slug"
❌ 오류: slug에 공백이 포함됨
❌ 오류: name에 특수 문자가 있음
🔴 진행 불가능 - 오류를 먼저 수정해야 함
세부 승인:
- 각 아이템에 번호 매기기: [1], [2], [3]...
- 선택적 처리 허용
- 형식 수락:
- "모두" - 모든 항목 처리
- "없음" - 작업 취소
- "1,3,5" - 아이템 1, 3, 5 처리
- "1-5" - 아이템 1~5 처리
- "2" - 아이템 2만 건너뛰고 나머지 처리
발행 옵션:
- 즉시 발행:
*_live엔드포인트 사용 (권장) - 초안 모드: 일반 엔드포인트 사용, 나중에 수동 발행 필요
5단계: 실행 및 오류 처리
API 호출:
- Webflow MCP 도구만 사용하세요.
- 각 API 호출에 필수
context매개변수 포함 - 배치당 최대 50개 아이템 처리
- 비율 제한을 우아하게 처리 (필요시 지연)
오류 처리:
- 오류가 있는 아이템 건너뛰고 계속
- 성공 및 실패를 별도로 추적
- 실패한 아이템에 대한 명확한 오류 메시지 제공
- 오류에도 불구하고 완료 시 요약 표시
롤백:
- 모든 업데이트 전에 원래 값을 저장
- 최소 5분 동안 롤백 옵션 제공
- "실행 취소" 명령 시 모든 변경 사항 되돌리기
- 아이템 ID를 사용하여 정확한 롤백 보장
모범 사례
데이터 파싱
- 제공된 데이터의 의도 파악에 집중하세요.
- 사용자가 전체 데이터를 제공한 경우에만 데이터 보강
- 값비싼 API를 호출하기 전에 데이터를 완전히 검증하세요.
- 필요한 경우에만 기존 아이템을 가져오세요.
사용자 경험
- 예상되는 내용에 대한 명확한 미리보기 제공
- 진행 상황을 명확하게 표시
- 건설적인 오류 메시지 제공
- 영향을 미치는 변경 사항에 대해 되돌리기 옵션 제공
- 방해가 되지 않도록 경고에 집중하고 오류는 명확히 하세요.