Tool Reference

Point your AI agent at this page to quickly learn all MCP capabilities. ButterKit exposes 44 MCP tools across 5 groups. Every tool that operates on a document requires a documentId, which you obtain from document_list.

Read-only tools (the list, get, and snapshot tools, design_export_preview, and the App Store Connect check and list tools) are marked as read-only, so MCP clients that support it can run them without asking for approval each time.

Document Tools

Manage open documents.

ToolDescription
document_listList all open documents. Returns each document’s ID, file path, artboard count, and base language.
document_openOpen a .butterkit file from disk.
document_createCreate a new blank document.
document_snapshotGet a summary of a document’s state: artboard counts, languages, metadata languages.
document_saveSave a document to disk.
document_closeClose a document.

Parameters

  • document_open requires path (absolute path to .butterkit file).
  • document_snapshot, document_save, document_close require documentId.

Design Tools

Create and modify artboards, text, devices, and backgrounds.

Read

ToolDescription
design_list_artboardsList all artboards with IDs, names, sizes, and variant info.
design_get_artboardGet full artboard detail: text blocks, image blocks, devices, background, camera.
design_list_templatesList available design templates. Optionally filter by sizePresetId.
design_list_size_presetsList artboard size presets (iPhone, iPad, Mac, etc.). Each preset includes its assetPurpose: screenshot, header, searchResults, or universal.
design_list_device_assetsList valid assetName values for design_upsert_device, with display names.

Artboard CRUD

ToolDescription
design_create_artboardCreate a new artboard. Provide name and either sizePresetId or widthPx/heightPx.
design_delete_artboardDelete an artboard and all its language variants. Requires artboardId.
design_apply_templateApply a design template to an artboard (sets devices, background, text styles). Requires artboardId and templateId.

Background

ToolDescription
design_set_backgroundSet artboard background. type is "color", "gradient", or "image". Provide colorHex for solid, topHex/bottomHex for gradient, or imagePath for image.

set_background Image Parameters

ParameterDescription
imagePathAbsolute path to a PNG, JPEG, or HEIC file. The image is copied into the document. Must be within the user’s configured Agent Import Folder or the MCPAssets staging directory.
fill"fit", "fill" (default), or "stretch". Can be sent without imagePath to change the fill of an existing image background.

Text Blocks

ToolDescription
design_upsert_text_blockCreate or update a text block. Omit textBlockId to create new.
design_remove_text_blockRemove a text block by textBlockId.

upsert_text_block Parameters

ParameterDescription
stringThe text content.
fontFamilyFont family name.
weightOne of: ultralight, thin, light, regular, medium, semibold, bold, heavy, black.
sizePtFont size in points.
colorHexText color as hex string.
alignmentOne of: leading, center, trailing.
paddingTopTop padding as a percentage (0 to 100).
paddingSidesSide padding as a percentage (0 to 40).
roleText block role.

Image Blocks

ToolDescription
design_upsert_image_blockCreate or update an overlay image on an artboard. Omit imageBlockId to create new. Supports image file import, role, scale, position, opacity, rotation, and ordering.
design_remove_image_blockRemove an overlay image from an artboard.

upsert_image_block Parameters

ParameterDescription
imageBlockIdUUID of existing image block to update (omit to create new).
imagePathAbsolute path to the image file. Required when creating a new image block. Must be within the user’s configured Agent Import Folder or the MCPAssets staging directory.
roleRole/name shown in the Images inspector.
xPctHorizontal position percentage (-100 to 200, default 50).
yPctVertical position percentage (-100 to 200, default 50).
scalePctImage scale percentage (0.1 to 200, default 30).
opacityImage opacity percentage (0 to 100, default 100).
rotationDegClockwise rotation in degrees about the image center (0 to 360, default 0).
index0-based order position within the artboard’s image list.

3D Device Models

ToolDescription
design_upsert_deviceAdd or update a 3D device model. Omit modelId to add new.
design_set_device_screenshotSet or clear the screenshot on a device’s screen. Requires modelId. Provide screenshotPath to import an image, or set clear to true to remove it.
design_remove_deviceRemove a device model by modelId.

upsert_device Parameters

ParameterDescription
assetNameDevice asset name (e.g. "iPhone18ProMax", "iPhoneDuo", "iPadPro129"). Use design_list_device_assets for all valid values.
deviceStyleOne of: "realistic", "clay", "uiOnly".
realisticFinishiPhone 18 Pro Max finish: iphone18pro.burgundy.v1, iphone18pro.glacier.v1, iphone18pro.silver.v1, iphone18pro.black.v1, or original. Preserved when switching to Clay or UI Only.
clayColorHexClay color as hex (only applies when deviceStyle is "clay").
hingeAngleDegiPhone Duo hinge angle from 0 (closed) to 180 (flat).
showsDisplayCutoutShow the camera cutout on supported devices (iPhone 18 Pro Max display or iPhone Duo cover screen). Defaults to true. UI Only hides it while preserving this preference.
rotationDegRotation as [x, y, z] in degrees.
scaleDevice scale factor.
positionOffsetPosition offset as [x, y, z].

set_device_screenshot Parameters

ParameterDescription
modelIdUUID of the device model (from design_get_artboard).
screenshotPathAbsolute path to the screenshot image. Must be within the user’s configured Agent Import Folder or the MCPAssets staging directory.
screenRole"primary" (default) or "cover". On iPhone Duo, primary spans both inner halves and cover targets the outer cover screen.
clearSet to true to clear the screen instead of importing a file.

Screenshot Folder

ToolDescription
design_link_screenshot_folderLink a folder of screenshots that auto-map to devices by locale and device type. Requires folderPath (absolute path to the screenshot folder).
design_refresh_screenshotsRe-scan the linked folder and apply images to matching devices.

Export Tools

Render artboards to images.

ToolDescription
design_export_artboardsExport artboards as PNG files to a directory at their native (1x) size. Requires outputDir. Optionally filter by artboardIds.
design_export_previewRender a single artboard and return it as a base64-encoded PNG for visual inspection. Requires artboardId.

Localization Tools

Manage languages, translations, and App Store metadata.

Languages

ToolDescription
localization_list_languagesList existing and available languages with variant counts.
localization_set_base_languageSet the base (source) language code for the document.
localization_add_languageAdd a target language. Requires languageCode. Creates variant artboards for all base artboards. Set autoTranslate (default true) to auto-translate text.
localization_remove_languageRemove a language and all its variant artboards.

Translation

ToolDescription
localization_set_translated_textManually set translated text on a variant artboard’s text block. Requires artboardId, textBlockId, translatedString.
localization_translate_artboardQueue auto-translation of a base artboard’s text into a target language. Requires artboardId and languageCode.

App Store Metadata

ToolDescription
localization_get_metadataGet App Store metadata (description, promotionalText, whatsNew) for a language. Optional languageCode (omit for the base language).
localization_set_metadataSet metadata fields. Optional languageCode (omit for the base language).
localization_list_metadata_languagesList languages that have metadata configured.
localization_translate_metadataAuto-translate base metadata into a target language.

set_metadata Parameters

ParameterLimit
descriptionMax 4,000 characters
promotionalTextMax 170 characters
whatsNewMax 4,000 characters

App Store Connect Tools

Upload screenshots, Header and Search Results artwork, and metadata to App Store Connect. Requires API credentials configured in the App Store Connect section under ButterKit > Settings > Integrations.

ToolDescription
asc_check_credentialsCheck whether ASC API credentials are configured.
asc_test_connectionTest the ASC API connection.
asc_list_appsList all apps accessible with the configured API key.
asc_list_versionsList App Store versions for an app, showing which are editable. Requires appId. Optional platform.
asc_create_versionCreate a new App Store version. Requires appId and versionString. Optional platform.
asc_upload_screenshotsRender artboards and upload as screenshots. Requires documentId, appStoreVersionId, locale. Optional platform and artboardIds (array of artboard UUIDs to upload; omit for all eligible artboards for the platform).
asc_upload_creative_assetRender one Header, Search Results, or shared artboard and assign it to an editable iOS version for a locale. Requires documentId, appStoreVersionId, locale, artboardId. Replaces the existing artwork for that placement; shared artwork replaces both Header and Search Results. Does not submit for review or publish.
asc_upload_metadataUpload metadata for a locale. Requires documentId, appStoreVersionId, locale. Optional languageCode (ButterKit language code to source metadata from, e.g. en, fr).

Platforms

The platform parameter accepts IOS, IPADOS, MAC_OS, WATCH_OS, or VISION_OS. When omitted, it defaults to the platform configured in ButterKit’s App Store Connect settings. WATCH_OS maps to the iOS version, so Apple Watch screenshots require an editable IOS version, and uploads with WATCH_OS skip artboards that aren’t Apple Watch sizes.

Header and Search Results Artwork

An artboard’s purpose comes from its size preset. Create Header, Search Results, or shared artwork by passing a preset whose assetPurpose is header, searchResults, or universal (see design_list_size_presets) to design_create_artboard. Upload it with asc_upload_creative_asset; asc_upload_screenshots handles regular screenshots only. The artboard must have artwork for the requested locale’s language.


ID Reference

All IDs are obtained from the corresponding list tools:

IDObtained from
documentIddocument_list or document_open
artboardIddesign_list_artboards
templateIddesign_list_templates
sizePresetIddesign_list_size_presets
textBlockIddesign_get_artboard
imageBlockIddesign_get_artboard
modelIddesign_get_artboard
assetNamedesign_list_device_assets
appIdasc_list_apps
appStoreVersionIdasc_list_versions

Language Codes

  • Translation: ISO 639-1 codes (e.g. "en", "es", "fr", "ja", "de").
  • App Store Connect: Apple locale format (e.g. "en-US", "fr-FR", "ja").

Quick Help