# Webcake Storefront MCP server

Agent View of the PolicyLayer registry record for Webcake Storefront: identity, probed posture, risk grade, and all 287 tools classified. HTML page: https://policylayer.com/tools/webcake-storefront

## Facts

- Server id: `webcake-storefront-mcp`
- Install: `npx -y webcake-storefront-mcp`
- Homepage: git+https://github.com/vuluu2k/webcake-storefront-mcp.git
- Registry record: grade F, identity unverified
- Lifecycle: active
- Rate-limited: no
- Tools: 287
- Tool categories present: Destructive, Execute, Read, Write
- Tags: webcake storefront, admin, automation
- Record last modified: 2026-07-07T04:33:20.279Z

## Tools (287)

| Tool | Category | Risk | Record |
| --- | --- | --- | --- |
| `clear_page_draft` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/clear-page-draft.md |
| `delete_affiliate_accounts` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-affiliate-accounts.md |
| `delete_affiliate_products` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-affiliate-products.md |
| `delete_appointment_addresses` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-appointment-addresses.md |
| `delete_appointment_calendars` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-appointment-calendars.md |
| `delete_appointment_classifies` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-appointment-classifies.md |
| `delete_appointment_employees` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-appointment-employees.md |
| `delete_article` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-article.md |
| `delete_automation` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-automation.md |
| `delete_collection` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-collection.md |
| `delete_contacts` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-contacts.md |
| `delete_course` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-course.md |
| `delete_courses` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-courses.md |
| `delete_domain` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-domain.md |
| `delete_employees` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-employees.md |
| `delete_global_section` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-global-section.md |
| `delete_global_source` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-global-source.md |
| `delete_page` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-page.md |
| `delete_partner_feeds` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-partner-feeds.md |
| `delete_product` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-product.md |
| `delete_product_category` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-product-category.md |
| `delete_redirect_urls` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-redirect-urls.md |
| `delete_saved_filter` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-saved-filter.md |
| `delete_site_utms` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-site-utms.md |
| `delete_subscribers` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/delete-subscribers.md |
| `empty_media_trash` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/empty-media-trash.md |
| `remove_font` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/remove-font.md |
| `remove_font_group` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/remove-font-group.md |
| `remove_reviews` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/remove-reviews.md |
| `unblock_all_phone_customers` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/unblock-all-phone-customers.md |
| `uninstall_app` | Destructive | Critical | https://policylayer.com/tools/webcake-storefront/uninstall-app.md |
| `debug_function` | Execute | High | https://policylayer.com/tools/webcake-storefront/debug-function.md |
| `invoke_tool` | Execute | High | https://policylayer.com/tools/webcake-storefront/invoke-tool.md |
| `publish_site` | Execute | High | https://policylayer.com/tools/webcake-storefront/publish-site.md |
| `rebuild_sitemap` | Execute | High | https://policylayer.com/tools/webcake-storefront/rebuild-sitemap.md |
| `run_function` | Execute | High | https://policylayer.com/tools/webcake-storefront/run-function.md |
| `send_mail` | Execute | High | https://policylayer.com/tools/webcake-storefront/send-mail.md |
| `toggle_debug_render` | Execute | High | https://policylayer.com/tools/webcake-storefront/toggle-debug-render.md |
| `update_http_function` | Execute | High | https://policylayer.com/tools/webcake-storefront/update-http-function.md |
| `verify_domain` | Execute | High | https://policylayer.com/tools/webcake-storefront/verify-domain.md |
| `auto_translate` | Read | Low | https://policylayer.com/tools/webcake-storefront/auto-translate.md |
| `check_domain` | Read | Low | https://policylayer.com/tools/webcake-storefront/check-domain.md |
| `count_orders_by_status` | Read | Low | https://policylayer.com/tools/webcake-storefront/count-orders-by-status.md |
| `fetch_images_for_alt_fill` | Read | Low | https://policylayer.com/tools/webcake-storefront/fetch-images-for-alt-fill.md |
| `find_customer` | Read | Low | https://policylayer.com/tools/webcake-storefront/find-customer.md |
| `get_active_promotions` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-active-promotions.md |
| `get_affiliate_programs` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-affiliate-programs.md |
| `get_affiliate_statistic` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-affiliate-statistic.md |
| `get_app` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-app.md |
| `get_article` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-article.md |
| `get_build_guide` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-build-guide.md |
| `get_category` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-category.md |
| `get_collection` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-collection.md |
| `get_combo_items` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-combo-items.md |
| `get_course` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-course.md |
| `get_course_members` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-course-members.md |
| `get_current_context` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-current-context.md |
| `get_device_templates` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-device-templates.md |
| `get_element` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-element.md |
| `get_email_templates` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-email-templates.md |
| `get_file_versions` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-file-versions.md |
| `get_global_section` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-global-section.md |
| `get_global_section_element` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-global-section-element.md |
| `get_global_source_contents` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-global-source-contents.md |
| `get_global_source_detail` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-global-source-detail.md |
| `get_global_source_element` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-global-source-element.md |
| `get_http_function` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-http-function.md |
| `get_http_function_snippet` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-http-function-snippet.md |
| `get_insight` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-insight.md |
| `get_insight_today` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-insight-today.md |
| `get_intake_guide` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-intake-guide.md |
| `get_media_capacity` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-media-capacity.md |
| `get_order` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-order.md |
| `get_page_draft` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-page-draft.md |
| `get_page_element` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-page-element.md |
| `get_page_schema` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-page-schema.md |
| `get_page_source` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-page-source.md |
| `get_page_versions` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-page-versions.md |
| `get_ppd_variation_template` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-ppd-variation-template.md |
| `get_price_contact` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-price-contact.md |
| `get_product` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-product.md |
| `get_product_measurement` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-product-measurement.md |
| `get_promotion` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-promotion.md |
| `get_promotion_items` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-promotion-items.md |
| `get_pwa` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-pwa.md |
| `get_review` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-review.md |
| `get_review_products` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-review-products.md |
| `get_shipping` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-shipping.md |
| `get_site_custom_code` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-site-custom-code.md |
| `get_site_info` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-site-info.md |
| `get_source_cart` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-source-cart.md |
| `get_variation` | Read | Low | https://policylayer.com/tools/webcake-storefront/get-variation.md |
| `ingest_html` | Read | Low | https://policylayer.com/tools/webcake-storefront/ingest-html.md |
| `ingest_url` | Read | Low | https://policylayer.com/tools/webcake-storefront/ingest-url.md |
| `list_affiliate_accounts` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-affiliate-accounts.md |
| `list_affiliate_orders` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-affiliate-orders.md |
| `list_affiliate_payouts` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-affiliate-payouts.md |
| `list_affiliate_products` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-affiliate-products.md |
| `list_api_keys` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-api-keys.md |
| `list_appointment_addresses` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-appointment-addresses.md |
| `list_appointment_calendars` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-appointment-calendars.md |
| `list_appointment_classifies` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-appointment-classifies.md |
| `list_appointment_employees` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-appointment-employees.md |
| `list_appointments` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-appointments.md |
| `list_apps` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-apps.md |
| `list_articles` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-articles.md |
| `list_automations` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-automations.md |
| `list_bindings` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-bindings.md |
| `list_blocked_phones` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-blocked-phones.md |
| `list_cached_results` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-cached-results.md |
| `list_categories` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-categories.md |
| `list_cms_files` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-cms-files.md |
| `list_collections` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-collections.md |
| `list_combos` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-combos.md |
| `list_contacts` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-contacts.md |
| `list_courses` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-courses.md |
| `list_customer_tags` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-customer-tags.md |
| `list_customers` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-customers.md |
| `list_domains` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-domains.md |
| `list_elements` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-elements.md |
| `list_employees` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-employees.md |
| `list_entity_logs` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-entity-logs.md |
| `list_events` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-events.md |
| `list_font_groups` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-font-groups.md |
| `list_fonts` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-fonts.md |
| `list_global_sections` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-global-sections.md |
| `list_global_sources` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-global-sources.md |
| `list_google_merchants` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-google-merchants.md |
| `list_image_elements` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-image-elements.md |
| `list_invitations` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-invitations.md |
| `list_materials` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-materials.md |
| `list_media_all` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-media-all.md |
| `list_media_content` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-media-content.md |
| `list_media_folders` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-media-folders.md |
| `list_my_sites` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-my-sites.md |
| `list_notifications` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-notifications.md |
| `list_orders` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-orders.md |
| `list_page_contents` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-page-contents.md |
| `list_page_drafts` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-page-drafts.md |
| `list_pages` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-pages.md |
| `list_partner_feed_products` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-partner-feed-products.md |
| `list_partner_feeds` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-partner-feeds.md |
| `list_ppd` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-ppd.md |
| `list_product_brands` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-product-brands.md |
| `list_product_suppliers` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-product-suppliers.md |
| `list_product_tags` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-product-tags.md |
| `list_products` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-products.md |
| `list_promotions` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-promotions.md |
| `list_publish_histories` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-publish-histories.md |
| `list_redirect_urls` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-redirect-urls.md |
| `list_reviews` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-reviews.md |
| `list_ribbons` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-ribbons.md |
| `list_saved_filters` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-saved-filters.md |
| `list_site_utms` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-site-utms.md |
| `list_subscribers` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-subscribers.md |
| `list_template_themes` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-template-themes.md |
| `list_themes` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-themes.md |
| `list_tool_groups` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-tool-groups.md |
| `list_translations` | Read | Low | https://policylayer.com/tools/webcake-storefront/list-translations.md |
| `new_page_skeleton` | Read | Low | https://policylayer.com/tools/webcake-storefront/new-page-skeleton.md |
| `Products` | Read | Low | https://policylayer.com/tools/webcake-storefront/products.md |
| `query_collection_records` | Read | Low | https://policylayer.com/tools/webcake-storefront/query-collection-records.md |
| `read_cached_result` | Read | Low | https://policylayer.com/tools/webcake-storefront/read-cached-result.md |
| `read_image` | Read | Low | https://policylayer.com/tools/webcake-storefront/read-image.md |
| `read_images` | Read | Low | https://policylayer.com/tools/webcake-storefront/read-images.md |
| `refuse_invitation` | Read | Low | https://policylayer.com/tools/webcake-storefront/refuse-invitation.md |
| `scan_unique_images` | Read | Low | https://policylayer.com/tools/webcake-storefront/scan-unique-images.md |
| `search_global_section_elements` | Read | Low | https://policylayer.com/tools/webcake-storefront/search-global-section-elements.md |
| `search_global_source_elements` | Read | Low | https://policylayer.com/tools/webcake-storefront/search-global-source-elements.md |
| `search_images` | Read | Low | https://policylayer.com/tools/webcake-storefront/search-images.md |
| `search_page_elements` | Read | Low | https://policylayer.com/tools/webcake-storefront/search-page-elements.md |
| `search_products` | Read | Low | https://policylayer.com/tools/webcake-storefront/search-products.md |
| `search_promotions` | Read | Low | https://policylayer.com/tools/webcake-storefront/search-promotions.md |
| `search_tools` | Read | Low | https://policylayer.com/tools/webcake-storefront/search-tools.md |
| `semantic_search_themes` | Read | Low | https://policylayer.com/tools/webcake-storefront/semantic-search-themes.md |
| `sync_sitemap` | Read | Low | https://policylayer.com/tools/webcake-storefront/sync-sitemap.md |
| `validate_page` | Read | Low | https://policylayer.com/tools/webcake-storefront/validate-page.md |
| `accept_invitation` | Write | Medium | https://policylayer.com/tools/webcake-storefront/accept-invitation.md |
| `add_domain` | Write | Medium | https://policylayer.com/tools/webcake-storefront/add-domain.md |
| `add_draft_section` | Write | Medium | https://policylayer.com/tools/webcake-storefront/add-draft-section.md |
| `add_section` | Write | Medium | https://policylayer.com/tools/webcake-storefront/add-section.md |
| `add_site_languages` | Write | Medium | https://policylayer.com/tools/webcake-storefront/add-site-languages.md |
| `append_site_custom_code` | Write | Medium | https://policylayer.com/tools/webcake-storefront/append-site-custom-code.md |
| `assign_customer_tags` | Write | Medium | https://policylayer.com/tools/webcake-storefront/assign-customer-tags.md |
| `block_phone_customers` | Write | Medium | https://policylayer.com/tools/webcake-storefront/block-phone-customers.md |
| `build_page` | Write | Medium | https://policylayer.com/tools/webcake-storefront/build-page.md |
| `commit_page_draft` | Write | Medium | https://policylayer.com/tools/webcake-storefront/commit-page-draft.md |
| `create_appointment_address` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-appointment-address.md |
| `create_appointment_calendar` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-appointment-calendar.md |
| `create_appointment_classify` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-appointment-classify.md |
| `create_appointment_employee` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-appointment-employee.md |
| `create_article` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-article.md |
| `create_automation` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-automation.md |
| `create_blog_category` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-blog-category.md |
| `create_cms_file` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-cms-file.md |
| `create_collection` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-collection.md |
| `create_contact` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-contact.md |
| `create_course` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-course.md |
| `create_font_group` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-font-group.md |
| `create_global_section` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-global-section.md |
| `create_global_source` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-global-source.md |
| `create_or_update_review` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-or-update-review.md |
| `create_page` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-page.md |
| `create_partner_feed` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-partner-feed.md |
| `create_product` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-product.md |
| `create_product_category` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-product-category.md |
| `create_products_from_device_templates` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-products-from-device-templates.md |
| `create_redirect_url` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-redirect-url.md |
| `create_saved_filter` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-saved-filter.md |
| `create_site` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-site.md |
| `create_site_from_template` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-site-from-template.md |
| `create_site_utm` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-site-utm.md |
| `create_subscriber` | Write | Medium | https://policylayer.com/tools/webcake-storefront/create-subscriber.md |
| `duplicate_appointment_calendars` | Write | Medium | https://policylayer.com/tools/webcake-storefront/duplicate-appointment-calendars.md |
| `edit_http_function` | Write | Medium | https://policylayer.com/tools/webcake-storefront/edit-http-function.md |
| `install_app` | Write | Medium | https://policylayer.com/tools/webcake-storefront/install-app.md |
| `invite_employee` | Write | Medium | https://policylayer.com/tools/webcake-storefront/invite-employee.md |
| `mark_notification_read` | Write | Medium | https://policylayer.com/tools/webcake-storefront/mark-notification-read.md |
| `moderate_reviews` | Write | Medium | https://policylayer.com/tools/webcake-storefront/moderate-reviews.md |
| `new_element` | Write | Medium | https://policylayer.com/tools/webcake-storefront/new-element.md |
| `new_row` | Write | Medium | https://policylayer.com/tools/webcake-storefront/new-row.md |
| `new_section` | Write | Medium | https://policylayer.com/tools/webcake-storefront/new-section.md |
| `remove_ppd` | Write | Medium | https://policylayer.com/tools/webcake-storefront/remove-ppd.md |
| `rename_site` | Write | Medium | https://policylayer.com/tools/webcake-storefront/rename-site.md |
| `restore_file_version` | Write | Medium | https://policylayer.com/tools/webcake-storefront/restore-file-version.md |
| `save_email_templates` | Write | Medium | https://policylayer.com/tools/webcake-storefront/save-email-templates.md |
| `save_file_version` | Write | Medium | https://policylayer.com/tools/webcake-storefront/save-file-version.md |
| `save_translations` | Write | Medium | https://policylayer.com/tools/webcake-storefront/save-translations.md |
| `set_default_language` | Write | Medium | https://policylayer.com/tools/webcake-storefront/set-default-language.md |
| `set_image_alts` | Write | Medium | https://policylayer.com/tools/webcake-storefront/set-image-alts.md |
| `set_product_published` | Write | Medium | https://policylayer.com/tools/webcake-storefront/set-product-published.md |
| `start_page_draft` | Write | Medium | https://policylayer.com/tools/webcake-storefront/start-page-draft.md |
| `switch_site` | Write | Medium | https://policylayer.com/tools/webcake-storefront/switch-site.md |
| `sync_partner_feed` | Write | Medium | https://policylayer.com/tools/webcake-storefront/sync-partner-feed.md |
| `toggle_confirm_mode` | Write | Medium | https://policylayer.com/tools/webcake-storefront/toggle-confirm-mode.md |
| `update_affiliate_account` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-affiliate-account.md |
| `update_affiliate_order_program` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-affiliate-order-program.md |
| `update_affiliate_payout_status` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-affiliate-payout-status.md |
| `update_affiliate_product_program` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-affiliate-product-program.md |
| `update_app` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-app.md |
| `update_app_review` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-app-review.md |
| `update_appointment_address` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-appointment-address.md |
| `update_appointment_calendar` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-appointment-calendar.md |
| `update_appointment_classify` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-appointment-classify.md |
| `update_appointment_employee` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-appointment-employee.md |
| `update_article` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-article.md |
| `update_auth` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-auth.md |
| `update_automation` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-automation.md |
| `update_cms_file` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-cms-file.md |
| `update_collection_columns` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-collection-columns.md |
| `update_course` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-course.md |
| `update_domain` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-domain.md |
| `update_employee_permissions` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-employee-permissions.md |
| `update_global_source` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-global-source.md |
| `update_global_source_contents` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-global-source-contents.md |
| `update_global_source_element` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-global-source-element.md |
| `update_global_source_elements` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-global-source-elements.md |
| `update_media_content` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-media-content.md |
| `update_media_folder` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-media-folder.md |
| `update_page` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-page.md |
| `update_page_content` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-page-content.md |
| `update_page_element` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-page-element.md |
| `update_page_elements` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-page-elements.md |
| `update_page_source` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-page-source.md |
| `update_partner_feed` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-partner-feed.md |
| `update_price_contact` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-price-contact.md |
| `update_product` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-product.md |
| `update_product_category` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-product-category.md |
| `update_product_measurement` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-product-measurement.md |
| `update_pwa` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-pwa.md |
| `update_redirect_url` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-redirect-url.md |
| `update_saved_filter` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-saved-filter.md |
| `update_shipping` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-shipping.md |
| `update_site_custom_code` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-site-custom-code.md |
| `update_site_settings` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-site-settings.md |
| `update_site_slug` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-site-slug.md |
| `update_site_utm` | Write | Medium | https://policylayer.com/tools/webcake-storefront/update-site-utm.md |
| `upload_images` | Write | Medium | https://policylayer.com/tools/webcake-storefront/upload-images.md |
| `upload_media_base64` | Write | Medium | https://policylayer.com/tools/webcake-storefront/upload-media-base64.md |
| `upsert_affiliate_product` | Write | Medium | https://policylayer.com/tools/webcake-storefront/upsert-affiliate-product.md |
| `upsert_customer_tag` | Write | Medium | https://policylayer.com/tools/webcake-storefront/upsert-customer-tag.md |
| `upsert_material` | Write | Medium | https://policylayer.com/tools/webcake-storefront/upsert-material.md |
| `upsert_ppd` | Write | Medium | https://policylayer.com/tools/webcake-storefront/upsert-ppd.md |
| `upsert_product_brand` | Write | Medium | https://policylayer.com/tools/webcake-storefront/upsert-product-brand.md |
| `upsert_product_supplier` | Write | Medium | https://policylayer.com/tools/webcake-storefront/upsert-product-supplier.md |
| `upsert_product_tag` | Write | Medium | https://policylayer.com/tools/webcake-storefront/upsert-product-tag.md |
| `upsert_ribbon` | Write | Medium | https://policylayer.com/tools/webcake-storefront/upsert-ribbon.md |

## Tool descriptions

- `clear_page_draft` — Delete a local page draft (does NOT delete any backend page already created from it).
- `delete_affiliate_accounts` — Remove affiliate accounts.
- `delete_affiliate_products` — Remove products from the affiliate program.
- `delete_appointment_addresses` — Delete appointment locations by id.
- `delete_appointment_calendars` — Delete booking calendars by id.
- `delete_appointment_classifies` — Delete appointment classifies by id.
- `delete_appointment_employees` — Delete appointment employees by id.
- `delete_article` — Delete a blog article
- `delete_automation` — Delete one or more automations by id.
- `delete_collection` — Delete a collection (table) and all its records by id. Irreversible.
- `delete_contacts` — Delete contacts by id.
- `delete_course` — Delete a course by id (also deletes its tracks).
- `delete_courses` — Delete multiple courses by id.
- `delete_domain` — Detach/delete a custom domain from the site.
- `delete_employees` — Remove employees (and any pending invitations) by site_permission id.
- `delete_global_section` — Delete a global section (Header/Footer/block) and remove its node from every page source. Two-step safety: dry_run=true (default) shows which pages would change; dry_run=false performs the atomic save.
- `delete_global_source` — Delete a global source and its published version
- `delete_page` — Delete a page
- `delete_partner_feeds` — Delete product feeds by id.
- `delete_product` — Delete one or more products by id.
- `delete_product_category` — Delete one or more product categories by id.
- `delete_redirect_urls` — Delete redirect URLs by id.
- `delete_saved_filter` — Delete (or dismiss, if not owner) a saved filter by id.
- `delete_site_utms` — Delete UTM links by id.
- `delete_subscribers` — Delete subscribers by id.
- `empty_media_trash` — Permanently delete all trashed media folders and content.
- `remove_font` — Remove a font by id.
- `remove_font_group` — Remove a font group by id.
- `remove_reviews` — Delete one or more reviews by id.
- `unblock_all_phone_customers` — Remove all blocked customer phone numbers for the site.
- `uninstall_app` — Uninstall (remove) an installed application from the current site. Pass the app
- `debug_function` — Run JS code in debug mode (without deploying). Returns execution result and console logs
- `invoke_tool` — Run any WebCake tool by exact name with its arguments (discover names + schemas via search_tools). Arguments are validated before running. Use this for tools that are not loaded natively.
- `publish_site` — Publish the whole site live — snapshots all current page sources into the live (published) version. Note: BuilderX publishes at the SITE level, not per page; publishing makes every saved page go live. Two-step safety: dry_run=true (defau…
- `rebuild_sitemap` — Rebuild the whole sitemap (async background job).
- `run_function` — Run a deployed HTTP function. function_name excludes method prefix. Example:
- `send_mail` — Trigger a CMS automation to send an email (same endpoint @webcake/app/automation sendMail uses). Requires the automation_id — get it from list_automations.
- `toggle_debug_render` — Toggle debug render mode for a CMS file
- `update_http_function` — Write the FULL HTTP function file content. Best for: writing new features, major refactors, or changes that touch multiple functions. For small targeted edits (fix one function, add one function), use edit_http_function instead. After up…
- `verify_domain` — Run DNS verification for a domain and enqueue SSL issuance.
- `auto_translate` — Machine-translate a JSON blob from one language to another. \
- `check_domain` — Check whether a domain is available/valid without attaching it.
- `count_orders_by_status` — Get order count grouped by status. Useful for dashboard overview
- `fetch_images_for_alt_fill` — One-shot helper for filling image_alt across the site. Returns image bytes + element metadata in a single response so Claude can describe everything in one pass, then call set_image_alts once. Workflow: 1. Call this tool with scope/limit…
- `find_customer` — Find a customer by ID, phone number, or email
- `get_active_promotions` — Get all currently active promotions (is_activated=true and within start_time/end_time range)
- `get_affiliate_programs` — Get the affiliate commission programs (order-level and product-level) configured for the site.
- `get_affiliate_statistic` — Get aggregate affiliate statistics (clicks, orders, commission, payouts) for the site.
- `get_app` — Get one installed app by its type code (returns null if not installed). App type codes: ${APP_TYPE_REFERENCE}. You may pass the number or the name.
- `get_article` — Get article details by ID
- `get_build_guide` — Get the BuilderX page authoring guide: page shape, the grid layout model, styling, breakpoints, forms/data, and the build workflow. Read this before building or heavily editing a page.
- `get_category` — Get a single product category by id (includes custom sort product ids).
- `get_collection` — Get a specific collection
- `get_combo_items` — Get items (products/variations) and bonus products that compose a combo. Returns combo_items (required items with count) and bonus_items (free gifts)
- `get_course` — Get a course by id (tracks, downloads, etc.).
- `get_course_members` — List members (enrolled customers) of a course.
- `get_current_context` — Show current connection context: which site_id, API URL, session, and account info. Call this first to confirm you
- `get_device_templates` — Get the device-template groups for the Product Design app.
- `get_element` — Get the full detail of an element type: category, container flag, summary, an ATTRIBUTES reference (the meaningful specials/config keys + their purpose/allowed values, events, and dataset binding targets), and a live skeleton node (the a…
- `get_email_templates` — Get the site
- `get_file_versions` — View version history of a CMS file. Each version includes its saved content — to restore, pass that content back to update_http_function (the http_function file) or update_cms_file, or use restore_file_version.
- `get_global_section` — Get one global section as a COMPACT tree (3-5x fewer tokens than raw JSON). Each line: ID [type]
- `get_global_section_element` — Get full detail (style, config, specials, events, bindings, responsive bp1..bp4, children IDs) of a single element inside a global section.
- `get_global_source_contents` — Get multilingual contents for global sources by component type
- `get_global_source_detail` — Get full detail of a global source — compact tree view showing all elements. Each line: ID [type]
- `get_global_source_element` — Get full detail of a single element (style, config, specials, events, bindings, responsive, children).
- `get_http_function` — Get the main HTTP function file. Choose the right mode for your task: - overview=true: function names + line ranges only, NO code body. Use for: browsing, understanding structure, finding which function to read. - overview=false (DEFAULT…
- `get_http_function_snippet` — Read specific function(s) by name. Much more token-efficient than reading the full file
- `get_insight` — Get analytics insight over a time range (defaults to last 7 days on the UI).
- `get_insight_today` — Get today
- `get_intake_guide` — Get the INTAKE questionnaire + build flow to run BEFORE creating a new site/store/page. Call this at the start of any fresh build: ask the user this one short batch (plain words, with defaults), restate the plan, get a yes, THEN build. S…
- `get_media_capacity` — Get media storage capacity/usage for the site.
- `get_order` — Get full order details by ID: customer info, items, payment, shipping, discounts, etc.
- `get_page_draft` — Inspect a local page draft: its meta, the section ids, total section count, and (if a commit is in progress) the page_id + committed_count.
- `get_page_element` — Get full detail of a single element by its ID (e.g.
- `get_page_schema` — Get the authoritative JSON Schema (Draft 2020-12) for a page source
- `get_page_source` — Get page source overview: section count, element type counts, and all custom CSS classes. Use this first, then use search_page_elements to find specific elements
- `get_page_versions` — View version history of a page
- `get_ppd_variation_template` — Get the per-variation print/design templates for a product (PPD app).
- `get_price_contact` — Get the
- `get_product` — Get full product details by ID: name, description, price, variations, images, attributes, SEO, etc.
- `get_product_measurement` — Get the product measurement-unit tree (units with exchange values).
- `get_promotion` — Get full promotion details by ID: name, type, schedule, discount rules, coupon settings, items, bonus products, etc.
- `get_promotion_items` — Get products/variations/categories attached to a promotion. Returns items with discount details (fixed_prices, level_info, coupon_item_info)
- `get_pwa` — Get the site
- `get_review` — Get one review (with its replies / nested data) by id.
- `get_review_products` — List the products a review is attached to (by review id).
- `get_shipping` — Get the site
- `get_site_custom_code` — Get custom code of the site (CSS/JS). Two modes: - Default: returns ALL 4 code fields (full content) - With field filter: returns only the specified field(s) — saves tokens when you only need CSS or JS Add include_guide=true on first cal…
- `get_site_info` — Get full site information: name, domain, settings (colors, typography, layout, language, payment methods, etc.)
- `get_source_cart` — Get all cart global sources with compact tree view. Shows full element hierarchy — no need to call get_global_source_detail separately.
- `get_variation` — Get a single product variation by its id.
- `ingest_html` — Parse reference HTML into a structural blueprint (title, headings, paragraphs, images, buttons, colour palette) you can rebuild as BuilderX sections with new_section. Not a 1:1 clone.
- `ingest_url` — Fetch a public URL and parse it into a structural blueprint (see ingest_html). Note: client-rendered (React/Vue) pages may return little content.
- `list_affiliate_accounts` — List affiliate accounts (registered affiliates / referrers).
- `list_affiliate_orders` — List affiliate-attributed orders (referrals that converted).
- `list_affiliate_payouts` — List affiliate payout requests/records.
- `list_affiliate_products` — List products enrolled in the affiliate program (with their commission settings).
- `list_api_keys` — List the site
- `list_appointment_addresses` — List appointment locations/addresses.
- `list_appointment_calendars` — List booking calendars (services with availability rules) for the current site.
- `list_appointment_classifies` — List appointment classifies (service categories/types).
- `list_appointment_employees` — List appointment employees (people that appointments can be assigned to).
- `list_appointments` — List booked appointments for the current site.
- `list_apps` — List the site
- `list_articles` — List blog articles (metadata only, without HTML content). Use get_article to get full content
- `list_automations` — List the site
- `list_bindings` — List every dynamic-data BINDING target: the datasets (product, cart_item, order, order_item, post, category, customer, customer_address, …) and their exact field names (
- `list_blocked_phones` — List blocked phone numbers (e.g. blacklisted customers).
- `list_cached_results` — List the large results currently held in the session cache (id, label, size, age).
- `list_categories` — List all product categories of the site
- `list_cms_files` — List all CMS files (HTTP functions, cron jobs, ...) for the site
- `list_collections` — List all database collections (tables) for the site. Returns collection names, table names, and field counts. Use get_collection for full schema details
- `list_combos` — List all combo/bundle products of the site. Use get_combo_items for combo composition details
- `list_contacts` — List contact-form submissions.
- `list_courses` — List courses (Course app).
- `list_customer_tags` — List customer tags for the site.
- `list_customers` — List/search the site
- `list_domains` — List custom domains attached to the site (plus the free subdomain).
- `list_elements` — List all BuilderX element/component types you can place on a page, grouped by category with a one-line summary and whether each is a container.
- `list_employees` — List the site
- `list_entity_logs` — List the activity/change logs for a specific entity (e.g. an order). Requires the entity id and type.
- `list_events` — List every interaction EVENT you can attach to a node: the triggers (eventName: click/hover/success/submit/…) and the actions (open_page, scroll_to, toggle, open_popup, add_to_cart, buy_now, phone_call, open_link, …) with the exact extra…
- `list_font_groups` — List font groups (font families with weights).
- `list_fonts` — List the site
- `list_global_sections` — List reusable global sections (Header, Footer, shared content blocks) — SLIM summary only. Each entry: id, name, slot (header/footer/block), element count + type histogram + custom classes. The full element tree is large, so it is NOT re…
- `list_global_sources` — List global sources (cart, popup, etc.). Returns compact summary per source. Always provide component to filter by type — the API may not return all types without a filter.
- `list_google_merchants` — List the Google Merchant records linked to the site (read-only).
- `list_image_elements` — Find all image elements across pages + global sources, with element_id, current alt, src, and the field path where alt is/should be written. Use as the first step before generating alt text via vision (read_image) and writing back with s…
- `list_invitations` — List site invitations for the current account.
- `list_materials` — List product materials for the site.
- `list_media_all` — List folders and content together in one call.
- `list_media_content` — List media-library content (images/videos/files), optionally filtered by folder.
- `list_media_folders` — List media-library folders (optionally under a parent folder).
- `list_my_sites` — List all sites accessible by the current account. Use this to find a site_id before switching
- `list_notifications` — List notifications for the current account.
- `list_orders` — List orders of the site (metadata only). Use get_order for full details including items
- `list_page_contents` — List multi-language contents of a page
- `list_page_drafts` — List local page drafts for the current site (summaries only: id, name, slug, type, section count, commit progress, updated_at).
- `list_pages` — List all pages of the site (metadata only, without source)
- `list_partner_feed_products` — List the products inside a specific product feed.
- `list_partner_feeds` — List product feeds for sale channels (Google Shopping, Facebook, etc.).
- `list_ppd` — List Personal Product Design assignments (products enabled for personalization).
- `list_product_brands` — List product brand tags for the site.
- `list_product_suppliers` — List product supplier tags for the site.
- `list_product_tags` — List product tags (paginated, searchable by name).
- `list_products` — List products of the site (metadata only: id, name, slug, price, image, status). Use get_product for full details
- `list_promotions` — List all promotions/discounts of the site (metadata only). Use get_promotion for full details
- `list_publish_histories` — List the site
- `list_redirect_urls` — List SEO redirect URLs (301 redirects) for the site.
- `list_reviews` — List product reviews (admin view) for the current site. Requires the product_review app installed. \
- `list_ribbons` — List ribbons (product sale badges) for the site.
- `list_saved_filters` — List saved table filters for a given table (e.g.
- `list_site_utms` — List marketing UTM links (with view/order stats over the time window).
- `list_subscribers` — List newsletter subscribers.
- `list_template_themes` — Search/list the public Webcake template marketplace (api.storecake.io). Use to match customer brief against existing templates by keyword. Returns id, name, preview_url, thumbnail, categories
- `list_themes` — List all custom themes of the site. Returns theme name, colors, typographies, transitions, and which one is active
- `list_tool_groups` — List every WebCake tool group, how many tools it has, and whether it is loaded natively or reached on-demand via search_tools + invoke_tool.
- `list_translations` — List translations for a resource type in a target language. Resources: ${RESOURCES.join(
- `new_page_skeleton` — Return an empty but valid page source: { sections: [] }. Add sections built with new_section, then save with build_page.
- `query_collection_records` — Query records from a collection (custom data table) by table name. Supports paging + an optional
- `read_cached_result` — Read a slice of a large cached result produced by another tool (look for
- `read_image` — Fetch an image URL and return its bytes for vision analysis by the AI client. Pair with scan_unique_images to inspect images already on the site. After receiving the image, describe it (subject, style, palette, composition, mood, lightin…
- `read_images` — Batch fetch multiple image URLs in parallel. Use when comparing several references or extracting motifs across a set. Capped at 5 images per call to keep context manageable. For each image, describe subject/style/palette/composition/mood…
- `refuse_invitation` — Refuse a site invitation.
- `scan_unique_images` — Scan all images used across page sources, global sources, and global sections. Returns a unique list of image URLs with which elements use each one. Useful for: image audit, finding broken/duplicated CDN URLs, bulk replace planning, them…
- `search_global_section_elements` — Search/filter elements within a global section (Header/Footer/block) without dumping the whole tree. Filter by type, id substring, custom_class, text, or has_bind / has_events / has_custom_class.
- `search_global_source_elements` — Search/filter elements within a global source. No component param needed. Examples: - Find all buttons: type=
- `search_images` — Search stock photos (Pexels) for a page/product. IMPORTANT: the storefront only renders images served from the WebCake CDN (image domains are whitelisted) — raw Pexels URLs will NOT display. By default this re-hosts each result on the We…
- `search_page_elements` — Search/filter elements within a page source. Returns matching elements with full detail (id, type, style, text, classes, etc.). Examples: - Find all buttons: type=
- `search_products` — Search products by keyword. Returns matching products with basic info
- `search_promotions` — Search/filter promotions with advanced filters: by type, status (coming_soon/in_progress/finished), keyword, date range
- `search_tools` — Find WebCake tools by keyword across the FULL catalog — including capabilities NOT loaded natively (marketing/CRM, translations, media, appointments, affiliate, reviews, domains/SEO/shipping, brands/tags/ribbons, courses, sale channels, …
- `semantic_search_themes` — Semantic search across the theme marketplace using bge-m3 embeddings (cosine similarity). Use when the brief is a natural-language description of industry + features (e.g.
- `sync_sitemap` — Sync a resource type into the site
- `validate_page` — Validate a page source ({ sections: [...] }). Returns errors (block saving: duplicate/missing ids, missing types) and warnings (unknown types, form fields without field_name, dangling event targets) plus stats. Always run this before bui…
- `accept_invitation` — Accept a site invitation.
- `add_domain` — Attach a custom domain to the site. Triggers DNS/ownership validation.
- `add_draft_section` — Append ONE section to a local page draft (NO network — this is the durable per-section cache step that can
- `add_section` — Append a section to an EXISTING page
- `add_site_languages` — Set the full list of enabled languages for the site (used to add, remove, toggle, or change currency — always send the complete updated list). Requires the multilingual app installed.
- `append_site_custom_code` — Append or prepend code to a custom code field WITHOUT reading the existing content first. Use this when you need to ADD new CSS rules, JS code, or script tags — no need to read first. For full rewrites, use update_site_custom_code instead.
- `assign_customer_tags` — Add or remove tags on multiple customers at once.
- `block_phone_customers` — Block customer phone numbers (upsert the given list).
- `build_page` — Create a brand-new page AND set its full content source in one step. Two-step safety: call with dry_run=true (default) to validate and preview, then dry_run=false to actually create + save. The source must be { sections: [...] } — build …
- `commit_page_draft` — Persist a local page draft to the backend INCREMENTALLY (one section per request, 120s timeout each) so no single huge request can time out. dry_run=true (default) validates the assembled page and previews stats. dry_run=false creates th…
- `create_appointment_address` — Create an appointment location. Region ids are optional (Vietnamese geo ids).
- `create_appointment_calendar` — Create a booking calendar. \
- `create_appointment_classify` — Create an appointment classify (service type).
- `create_appointment_employee` — Create an appointment employee (assignee).
- `create_article` — Create a blog article so blog/post pages (post-list, grid-blog, post-overlay) have content. Built via the dashboard command pipeline: title + optional summary, HTML content, image URLs, and category linkage. Pass category_ids from create…
- `create_automation` — Create an automation. Checks the Automation app is installed first and installs it if needed. An automation = { name, type, status, rule }.
- `create_blog_category` — Create a blog/article category. Returns the new category id — pass it to create_article
- `create_cms_file` — Create a new CMS file. Types:
- `create_collection` — Create a new collection (custom data TABLE). It starts with the system columns (id/inserted_at/updated_at/creator_id); pass
- `create_contact` — Create a contact entry.
- `create_course` — Create a course linked to a product. \
- `create_font_group` — Create a font group (e.g. a Google Font family by URL).
- `create_global_section` — Create a reusable global section (Header / Footer / shared block) the way the builder does: persists a global_section record AND embeds the same section node into page sources so it actually renders across the site (header → top of every…
- `create_global_source` — Create a new global source component. Component types:
- `create_or_update_review` — Create a new review, edit an existing one, or post a shop reply. Omit \
- `create_page` — Create a new (empty) page. For a page with content use build_page instead. type is a KIND (main/store/member/blog/custom/error/maintain) mapped to the numeric backend type; pass seo so it doesn
- `create_partner_feed` — Create a product feed.
- `create_product` — Create a product so the storefront has real merchandise (grid-product / slider-product bindings need this). Simple use: pass name + price (+ images, category_ids). One default variation with the price/stock is created for you. Advanced u…
- `create_product_category` — Create a product category (so grid-category / a category page has something to show, and products can be filed under it). Returns the new category id — pass it to create_product
- `create_products_from_device_templates` — Create products from selected device-template groups (Product Design app).
- `create_redirect_url` — Create a redirect from one path to another.
- `create_saved_filter` — Create a saved table filter.
- `create_site` — Create a brand-new storefront site for the current account, then (by default) switch to it and return an EMPTY, CLEAN site (no sample products/categories) ready for element composition. The backend auto-seeds off-theme sample products + …
- `create_site_from_template` — Create a NEW site from a marketplace TEMPLATE (the dedicated
- `create_site_utm` — Create a UTM tracking link.
- `create_subscriber` — Add a newsletter subscriber (upsert by email or phone).
- `duplicate_appointment_calendars` — Duplicate booking calendars by id (creates copies).
- `edit_http_function` — Edit the HTTP function file by function name — best for targeted changes (fix a bug, rename, add one function). For writing multiple new functions or major refactors, use update_http_function with full content instead. Actions: -
- `install_app` — Install (register) an application on the current site so its features become usable. For example, automations need the
- `invite_employee` — Invite an employee to the site by email.
- `mark_notification_read` — Mark a notification as read.
- `moderate_reviews` — Approve or hide reviews (change moderation status). \
- `new_element` — Build a single structurally-valid element node from the real builder factory. Returns the node — edit its specials/style, then place it in a section
- `new_row` — Build a multi-column ROW container: children laid out SIDE BY SIDE (not stacked). This is how real pages build feature cards, category tiles, footer columns, a 2-col hero, etc. The row is RESPONSIVE — it auto-collapses to fewer columns o…
- `new_section` — Build a complete section node with children laid out in the builder
- `remove_ppd` — Disable Personal Product Design for the given ids.
- `rename_site` — Rename the site (display name).
- `restore_file_version` — Roll a CMS file back to a saved version in one step: reads the version
- `save_email_templates` — Create/update the transactional email templates. Each block is { title, content, status }.
- `save_file_version` — Save a version snapshot of a CMS file for rollback
- `save_translations` — Save translations for a resource type in a target language. Resources: ${RESOURCES.join(
- `set_default_language` — Change which enabled language is the site default.
- `set_image_alts` — Batch-write alt text for image elements across pages + global sources. Groups updates by source so each source is fetched + saved exactly once. Workflow: list_image_elements → read_image (per src) → describe → set_image_alts(items). If a…
- `set_product_published` — Publish or unpublish one or more products quickly (without a full update).
- `start_page_draft` — Start a page draft (no network). Build a multi-section page safely: cache each section with add_draft_section, then commit_page_draft persists it to the backend INCREMENTALLY (resumable on timeout). Use this instead of build_page for lar…
- `switch_site` — Switch to a different site by site_id. All subsequent tool calls will target the new site. The choice is saved to local database — next session will auto-connect to this site. Use list_my_sites first to find the site_id
- `sync_partner_feed` — Publish/sync a feed
- `toggle_confirm_mode` — Toggle update confirmation mode. Controls whether update tools ask for user confirmation before saving. -
- `update_affiliate_account` — Update an affiliate account (e.g. commission rate, status).
- `update_affiliate_order_program` — Create/update the order-level affiliate commission program. \
- `update_affiliate_payout_status` — Update the status of affiliate payout(s). \
- `update_affiliate_product_program` — Create/update the product-level affiliate commission program.
- `update_app` — Update an installed app
- `update_app_review` — Update the product-review app
- `update_appointment_address` — Update an appointment location. Pass
- `update_appointment_calendar` — Update a booking calendar. Pass
- `update_appointment_classify` — Update an appointment classify. Pass
- `update_appointment_employee` — Update an appointment employee. Pass
- `update_article` — Update a blog article
- `update_auth` — Update authentication credentials. All values are saved to local database — next session auto-restores them. Get token and session_id from browser DevTools → Network tab → copy from any API request headers
- `update_automation` — Update an automation by id. Pass only the fields to change (name, description, type, status, rule).
- `update_cms_file` — Update the code content of an existing CMS file
- `update_collection_columns` — Add or change a collection
- `update_course` — Update a course by id (partial). Pass
- `update_domain` — Update a domain (rename or advanced settings such as redirect/SSL).
- `update_employee_permissions` — Change an employee
- `update_global_source` — Replace full source of a global source. IMPORTANT: Before calling this tool, you MUST: 1. Read existing source with get_global_source_detail first 2. Show the user what will change and get explicit confirmation 3. NEVER call without user…
- `update_global_source_contents` — Update multilingual contents (upsert). Each entry: global_source_id, language_code, content. IMPORTANT: Before calling, you MUST read existing contents with get_global_source_contents first, then show the user what will change and get ex…
- `update_global_source_element` — Update a single element within a global source. Two-step process: STEP 1: Call with dry_run=true (default) → returns diff of what will change. STEP 2: Show the diff to the user and ask for confirmation. NEVER proceed without explicit use…
- `update_global_source_elements` — Batch update multiple elements in one global source. Two-step process: STEP 1: Call with dry_run=true (default) → returns per-element diff. STEP 2: Show all diffs to the user and ask for confirmation. NEVER proceed without explicit user …
- `update_media_content` — Update a media content item (rename, move, or trash). Pass
- `update_media_folder` — Update a media folder (rename, move, or trash). Pass
- `update_page` — Update page properties (name, slug, settings, custom code)
- `update_page_content` — Create/update page content for a specific language. IMPORTANT: Before calling, you MUST read existing content with list_page_contents first, then show the user what will change and get explicit confirmation. NEVER update without user app…
- `update_page_element` — Update properties of a specific element in page source. Two-step process: STEP 1: Call with dry_run=true (default) → returns diff of what will change. STEP 2: Show the diff to the user and ask for confirmation. NEVER proceed without expl…
- `update_page_elements` — Batch update multiple elements in one page. Two-step process: STEP 1: Call with dry_run=true (default) → returns per-element diff. STEP 2: Show all diffs to the user and ask for confirmation. NEVER proceed without explicit user approval.…
- `update_page_source` — Directly update the full page source JSON. IMPORTANT: Before calling this tool, you MUST: 1. Read existing source with get_page_source first 2. Show the user what will change and get explicit confirmation 3. NEVER call without user appro…
- `update_partner_feed` — Update a product feed.
- `update_price_contact` — Set which products/categories are
- `update_product` — Update an existing product. Pass product_id + only the fields to change. To change price/stock, pass variations (get_product first to see the existing variation shape). Images must be hosted CDN urls (search_images cdn_url / upload_images).
- `update_product_category` — Update a product category (name, image, description, or visibility). Pass id + fields to change.
- `update_product_measurement` — Upsert product measurement units (full list). Each unit upserts by id; pass is_removed:true to delete one.
- `update_pwa` — Update the PWA manifest (the full manifest object replaces the existing one).
- `update_redirect_url` — Update a redirect URL. Pass
- `update_saved_filter` — Update a saved filter by id.
- `update_shipping` — Update shipping config. Pass
- `update_site_custom_code` — Update custom code (CSS/JS) for the entire site. Only sends fields you specify — others remain unchanged. IMPORTANT: Before calling, you MUST read existing code with get_site_custom_code first, then show the user what will change and get…
- `update_site_settings` — Update general site settings. The \
- `update_site_slug` — Change the site
- `update_site_utm` — Update a UTM link. Pass
- `upload_images` — Convert external image URLs, data: URIs, or LOCAL FILE PATHS into site-hosted CDN URLs by reading/downloading each image and re-uploading it to the WebCake backend. Use this whenever the user supplies their OWN images (their URLs or file…
- `upload_media_base64` — Upload an image to the media library from a base64 data URI. Returns the CDN URL.
- `upsert_affiliate_product` — Enroll/update a product in the affiliate program with its own commission. \
- `upsert_customer_tag` — Create or update a customer tag. Omit
- `upsert_material` — Create or update a product material. Supports nesting via parent_id. Omit
- `upsert_ppd` — Enable/update Personal Product Design for products (bulk).
- `upsert_product_brand` — Create or update a product brand. Omit
- `upsert_product_supplier` — Create or update a product supplier. Omit
- `upsert_product_tag` — Create or update a product tag. Omit
- `upsert_ribbon` — Create or update a ribbon (sale badge).

## Related servers

- UnClick (1658 tools) — https://policylayer.com/tools/io-github-malamutemayhem-unclick-mcp-server.md
- Nodebench (824 tools) — https://policylayer.com/tools/io-github-homenshum-nodebench.md
- Yaver (812 tools) — https://policylayer.com/tools/io-github-kivanccakmak-yaver.md
- Binance MCP Server (734 tools) — https://policylayer.com/tools/nirholas-binance-mcp.md
- Crow (587 tools) — https://policylayer.com/tools/kh0pper-crow.md
- Fortimanager (584 tools) — https://policylayer.com/tools/jmpijll-fortimanager-mcp.md
- TinyFn (572 tools) — https://policylayer.com/tools/io-tinyfn-tinyfn.md
- Mcp (571 tools) — https://policylayer.com/tools/io-github-2s-io-mcp.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=webcake-storefront · API: https://policylayer.com/registry/api · Recommended policies for every tool: https://policylayer.com/policies/webcake-storefront
