Kalpana Docs
Designer MCP

Images, fonts and shaders

What a design may use: the workspace's fonts and images, the user's uploads and shader fills.

list_fonts

Font families in Kalpana's library for this workspace: the global library and the workspace's uploads. Only these can be used.

ParameterTypeRequiredDefaultDescription
familystringNo—A family name. Its styles come back when the name matches exactly, ignoring case; otherwise the families whose name contains it; otherwise close_matches.
  • Returns: Without family, every family with its number of styles. With it, as above, each style with its name, weight and italic.

find_images

The workspace's images (photos, logos, product shots), newest first, with a numbered preview sheet. Without filters the reply also names the workspace's collections.

ParameterTypeRequiredDefaultDescription
collectionstringNo—Only images in this collection, by name.
searchstringNo—Only images whose file name contains this.
limitintegerNo61 to 12.
  • Returns: Each image's image key (for designs), asset_id (for batch rows), name and pixel size, and the preview sheet. A cut-out with transparent margins also gets visible_box [x, y, w, h], where its subject sits in image px, to place and crop it by.

upload_images

Bring the user's own images into the workspace: PNG, JPEG or WebP, up to 5 MB each.

ParameterTypeRequiredDefaultDescription
collectionstringNo—Collection to put them in, by name; made when it does not exist.
filesobject[]No—Up to 20 files the agent will upload itself: sha256 (lowercase hex), content_type (image/png, image/jpeg or image/webp) and size_bytes (at most 5,242,880).
doneobject[]No—Up to 20 uploaded files to record: sha256 and the file name.
  • Without files: returns a link to the workspace's Images page (or the collection's) where the user drops the images in; afterwards find_images with that collection finds them.
  • With files: returns an upload_url per file. PUT each file's bytes to it with that Content-Type, then call again with done. The reply gives each image's image key and asset_id.

Image data is never sent as base64. Images already on the web can be placed straight from their https URL.


list_shaders

Free. List the procedural fills a layer can use: dot grids and halftone, grain and mesh gradients, god rays, noise, waves, dithering and more. Use one as a layer fill with {shader, preset, params, speed}; speed: 0 keeps it still. Each shader has a look line saying what it looks like.

ParameterTypeRequiredDefaultDescription
namestringNo—One shader, by name: its settings with defaults, presets and named options. Omit to list them all, with a picture of every shader.

The image filter shaders (halftone-cmyk, halftone-dots, image-dithering, lens-distortion, water) filter a photo. With no image filter of their own, they filter the image fill under them, as that fill frames it.

Was this page helpful?

Updated 5 Nov 2026

On this page