compress_images
Compress images
Make images smaller, by quality or to a target file size (e.g. under 500 KB for a form). Keeps each file’s format unless asked; files that already fit are left as they are; PNGs reach a size by reducing colours. Saved next to the originals as name-compressed.ext.
Parametersfilesrequiredformatqualitymax_edgetarget_kboutput_dirallow_resize
resize_images
Resize images
Resize images to a width, a height or both. fit "inside" keeps the whole picture within the box, "cover" fills the box and crops (keeping the interesting part), "contain" fits it whole and pads the rest. Never enlarges unless asked. Social sizes: see the one-design://presets/sizes resource. Saved as name-WIDTHxHEIGHT.ext.
Parametersfitfilesrequiredwidthformatheightenlargepercentqualitybackgroundoutput_dir
make_qr_code
Make QR codes
QR codes for links or any text, in your colours, as PNG or SVG (default folder: ~/Downloads/one-design), with a preview. Free makes 1 at a time; Pro makes up to 50 in one go. Keep strong contrast between the colours so phones can scan it.
Parameterssizecolourformatcontentcontentsbackgroundoutput_patherror_correction
lock_link
Lock a link behind a password
Turns any web address into a one.design link that asks for a password before opening it. The address is encrypted here (AES-256-GCM); the result carries it in the link itself, so no server stores it. Anyone with the link and the password can open it.
Parametersurlrequiredhintpasswordrequired
convert_images
Convert images
Convert images between WebP, JPEG, PNG and AVIF, including iPhone HEIC photos (on a Mac). Choose the quality, optionally shrink big images, and keep or strip metadata. Saved next to the originals with the new extension (never over them). For PDF pages to images use pdf_toolkit with action "to_images".
Parametersfilesrequiredformatqualitymax_edgemetadatabackgroundoutput_dir
Fit the whole photo onto a square, portrait or story canvas without cropping, and fill the space around it with a blurred copy of the photo or a colour (matched to the photo by default). Canvas by name (square, instagram-square, portrait, instagram-portrait, portrait-34, story, landscape, x-post, linkedin, og, link-preview, pinterest, banner, dribbble) or width and height. Saved next to the originals as name-WIDTHxHEIGHT.jpg.
Parametersblurfillfilesrequiredwidthcolourdarkenformatheightmarginpresetshadowquality+2 more
Rename a set of files (any kind) with one pattern made of text and tokens: {name} the current name, {n} a number counting up ({n:3} for 001), {date} the file’s date as 2026-10-02, {w}x{h} the image size in pixels, {ext} the extension. The extension is always kept at the end. Starts with mode "preview", which only lists old → new and changes nothing; "copy" makes renamed copies in a new folder; "rename" renames in place.
Parametersmodefilesrequiredstartdigitsletterspatternlower_extoutput_dir
make_web_image_set
Make a web image set
Responsive image sizes for a website in one go (WebP and JPEG by default, AVIF or PNG too), into a folder per image, with a ready <picture>/srcset HTML snippet (also saved as snippet.html). Widths larger than an image are skipped, so nothing is enlarged. [Pro tool.]
Parametersaltfilesrequiredsizeswidthsformatsqualityoutput_dirurl_prefix
Make SVG files smaller with SVGO (editor data, comments and metadata out, paths simplified), keeping the viewBox, then render before and after to check they look the same. Saved next to the originals as name-slim.svg; a file that can’t get smaller is left as it is.
Parametersfilesrequiredlevelprettykeep_idsprecisionkeep_titleoutput_dirremove_size
Crop each image to several sizes at once, keeping the interesting part (or the centre). Sizes by name (square, instagram-square, portrait, instagram-portrait, portrait-34, story, landscape, x-post, linkedin, og, link-preview, pinterest, banner, dribbble), as an aspect ratio like "4:5" (the largest crop of that shape, at the image’s own resolution), or as {name, width, height}. Saved next to the originals as name-<size>.ext. [Pro tool.]
Parameterscropfilesrequiredsizesformatqualityoutput_dir
Split one image into an Instagram profile grid, numbered in posting order (post tile 01 first: Instagram shows the newest post top-left, so the bottom-right tile goes first), or into carousel slides that line up seamlessly as people swipe. Presets: ig-row, ig-grid-2, ig-grid-3, ig-grid-4 (3 columns, 3:4 tiles), ig-grid-sq (3×3 square), ig-grid-45 (3×2, 4:5; the default), ig-pano-2, ig-pano-3, ig-pano-5 (4:5 carousels), ig-pano-sq, li-carousel (square), tiktok, story-pano (9:16). Any setting given overrides the preset. Saved in a new folder next to the image. [Pro tool.]
Parametersfilerequiredmoderowsshapeformatpresetslidescolumnsfocus_xfocus_yqualityoutput_dir+1 more
make_listing_photos
Make listing photos
Product photos framed for each marketplace: a near-white border is trimmed, then the product is centred on the marketplace’s canvas at its usual fill. Amazon 2000×2000 (85%), eBay 1600×1600 (80%), Etsy 2000×1600 (75%), Shopify 2048×2048 (80%), Instagram Shop 1080×1350 (75%), Google Shopping 1200×1200 (80%). Works best with products shot on white; the photo’s own background is kept (removing it needs Cutout on one.design). Saved next to the originals as name-<marketplace>.jpg. [Pro tool.]
Parameterstrimfilesrequiredqualitybackgroundoutput_dirfill_percentmarketplaces
make_campaign_kit
Make a campaign kit
One creative into a matched set of sizes for social posts, stories, link previews and display ads, in one folder. Each size either fills the frame (crop keeping the interesting part) or fits the whole creative over a blurred copy of itself. Sizes: ig-post 1080×1080, ig-portrait 1080×1350, ig-portrait-34 1080×1440, story 1080×1920, x-post 1600×900, dribbble 1600×1200, link 1200×628, youtube 1280×720, li-banner 1584×396, mrec 300×250, leaderboard 728×90, skyscraper 160×600, mobile-banner 320×50. Text layouts (headline, button) are on one.design/campaign-kit. [Pro tool.]
Parametersfitfilerequirednamescalesizesformatqualityoutput_dir
clean_metadata
Remove hidden metadata
Remove hidden details from photos before sharing: GPS location, camera, dates, author, XMP edit history, IPTC captions, comments and AI labels / Content Credentials (C2PA). JPEG, PNG and WebP are cleaned losslessly (the picture itself is not re-saved); other formats (HEIC, AVIF, TIFF, GIF) are re-saved without metadata. Reports what each file was hiding. Saved as name-clean.ext next to the original.
Parametersfilesrequiredoutput_dirkeep_rotationfix_orientationkeep_colour_profile
redact_images
Redact screenshots
Cover names, emails, card numbers and other private details in screenshots. Give boxes in pixels (or 0–1 fractions of the width and height); the same boxes are applied to every file, for matching screenshots. "marker" (a hand-drawn stroke) and "solid" replace the pixels so nothing can be recovered; "pixelate" and "blur" look softer but short text like numbers can sometimes be guessed, so use marker or solid for card numbers and passwords. The image is re-drawn, so hidden metadata goes too. Saved as name-redacted.ext.
Parametersblockboxesrequiredfilesrequiredstyleunitscolourformatqualityoutput_dir
Work with PDFs on this computer: "merge" (files in order into one), "split" (each page, or ranges like "1-3, 5, 7-" each its own PDF), "extract" (one PDF of chosen pages), "reorder" (a new page order), "rotate" (pages by 90/180/270), "info" (pages, sizes, title, author, producer), "remove_metadata" (clear title, author, subject, keywords, creator, producer, dates and XMP), "to_images" (pages to PNG or JPEG; needs poppler’s pdftoppm installed). Pages are copied as they are, so text stays text. Page numbers start at 1. Saved next to the first PDF (or in output_dir), never over a file.
Parametersdpianglefilesrequiredorderpagesactionrequiredoutput_dirimage_format
make_proof_sheet
Make a proof sheet PDF
A folder of images into one tidy PDF: a contact sheet (2–6 columns) or one image per page, on A4 or US Letter, with file names under the images and an optional title and date header. Images are embedded as JPEG thumbnails sized to their place on the page, so the file stays small. Saved next to the first image (or where you say) as proof-sheet.pdf or your-title.pdf. [Pro tool.]
Parametersdatepagefilesrequiredtitlelayoutmargincolumnsqualitycaptionsorientationoutput_path
check_delivery
Check images against a delivery spec
Check a batch of images against a delivery spec before sending it: formats, file size, exact/min/max width and height, shape (aspect ratio), transparency, colour space, DPI, embedded metadata and file naming. Start from a preset ("web": Website images, "instagram": Instagram feed, "marketplace": Marketplace product photos, "appicon": App Store icon, "print": Print handover (large JPEG/PNG)) or "custom", and override any rule. Reports pass / needs attention / fail per file and which tool fixes each problem. Changes nothing. [Pro tool.]
Parametersfilesrequiredmax_kbpresetratiosformatsmin_dpimax_namemetadatalowercasemax_widthmin_widthno_spaces+8 more
make_cards
Make cards from spreadsheet rows
Spreadsheet rows into branded social cards, one PNG (or JPEG) per row, using the site’s templates: "poster" (big type on your colour, photo optional), "editorial" (full-bleed photo, white type), "split" (photo plus a colour panel) or "product" (product on a light panel with price and badge). Columns feed the tag, headline, subhead, button (cta) and price, and an image column names each row’s photo file; they are matched by header name unless you map them. Saved in a new folder under ~/Downloads/one-design (or output_dir). [Pro tool.]
Parameterscsvlogorowssizepanelaccentformatcolumnsqualitytemplatebody_fontbackground+4 more
watermark_images
Watermark images
Stamp a text or logo mark on a batch of images, like the site’s Watermark: a tiled diagonal pattern (the default) or a single mark in one of nine positions. Text can be anything, e.g. “© Your Studio 2026”, “Draft”, “Confidential” or “Proof”. Size is a share of each image’s shorter side. Saved next to the originals as name-marked.ext (or into output_dir); originals are never changed.
Parametersfontlogosizetextanglefilesrequiredcolourformatmarginshadowopacityquality+3 more
make_icon_pack
Make an icon pack
Favicons, app icons and a web manifest from one logo, like the site’s Icon Pack: favicon.ico (16, 32 and 48 px), favicon-16x16.png, favicon-32x32.png, favicon.svg (from an SVG logo), apple-touch-icon.png (180 px), icon-192.png, icon-512.png, icon-512-maskable.png (logo kept inside Android’s safe zone), site.webmanifest and snippet.html with the <head> tags. Saved in a new folder (icon-pack) in ~/Downloads/one-design. Best from an SVG or a PNG of 512 px or more.
Parameterslogorequiredpaddingadaptiveapp_namemaskablebackgroundoutput_dirshort_namedark_colourlogo_colourtheme_colorlight_colour+2 more
make_logo_package
Make a logo package
One master logo into a delivery folder, like the site’s Logo Package: a folder per variant (original colours, black, white, black on white, white on black, plus any brand colours you add with their combinations), each with png/ at the widths you choose (transparent unless the variant has a background), jpg/ on a solid background and svg/ when the master is an SVG, and a README.txt of what’s where. Saved as name-logo in ~/Downloads/one-design. Colour variants work best on flat logos. [Pro tool.]
Parametersjpgsvglogorequirednameblackwhitesquarewidthscolourspaddingoriginaloutput_dir+3 more
frame_screenshots
Frame screenshots
Screenshots dressed to share, like the site’s Screen Frame: inside a drawn browser window (title bar with three dots and an address), phone, tablet or laptop, or as a plain rounded card, on a gradient, colour, blurred copy, image or transparent background, at a social canvas size. Devices keep their real screen shape; screenshots are cropped to fill them from the top. Saved next to the originals as name-framed.png (or .jpg). The frames are simple drawings, not any maker’s artwork. [Pro tool.]
Parametersurltonefilesrequiredframenotchstylewidthcanvascolourformatheightshadow+7 more
make_store_screenshots
Make App Store and Google Play screenshots
Store screenshots with a title and your app’s screenshot in a drawn device, like the site’s Store Shots, at the sizes the stores ask for: iOS iPhone 6.9″ 1290×2796 (Apple scales it for every smaller iPhone), iPad 13″ 2064×2752; Android phone 1080×1920, tablet 1440×2560. Up to 10 per device for the App Store, 8 for Google Play. Templates: above (title at the top, device rising from the bottom), below (device above, title underneath), plain (rounded card, no device), tilted, bigtitle (large headline on the left), pair (two devices per slide, two screenshots each), iso (device turned in perspective), full (screenshot fills the image, title over a fade). JPEG (stores reject images with transparency), into a new folder in ~/Downloads/one-design. [Pro tool.]
Parametersfontdeviceslidesplatformtemplatebackgroundoutput_dirscreenshotsrequiredtext_colourdevice_colourbackground_image
make_bento
Make a bento grid
Photos, numbers and colour as rounded tiles in one image, like the site’s Bento. Templates and their tiles in reading order (left to right, top to bottom): mosaic-5 (photo (big), photo, text "+38%", photo, photo (big)); hero-2 (photo (big), photo, text "10k"); hero-left-4 (photo (big), photo, text "4.9", colour, photo); three-cols (photo, photo, photo); big-strip (photo (big), photo, text "2026", photo); six-even (photo, photo, photo, photo, photo, photo); stat-board (text "Q3 in numbers", photo, text "2.4M", text "38%", text "120"); feature-3 (photo (big), text "10k", text "98%", text "24/7"); case-cover (text "Case study", photo (big), colour, photo). Give photos to fill the photo tiles in order, and optionally tiles to replace each slot in that same order (a photo, a text tile, or a plain colour); slots you don't replace keep the template’s own. Saved as bento-<template>.png in ~/Downloads/one-design.
Parametersgapfonttileswidthcanvasformatheightphotosradiuspaddingqualitytemplate+3 more
Turn images into stamps, like the site’s Stamp Maker: "postage" (the picture on paper with perforated edges, a value like “1st” or “£1.50” and a caption), "rubber" (pressed in one ink with a double border, worn edges and a caption) or "seal" (round, inked, with your text around the ring). Rubber stamps and seals print a photo’s tones as an ink dot pattern for a dark or light surface; logos print by their shape. Transparent PNGs up to 1,400 px, saved next to the originals as name-<style>-stamp.png.
Parametersinktiltwearfilesrequiredpapershapestyletonesvaluebordercaptionsurface+3 more
make_stat_shot
Make a milestone image (Stat Shot)
A milestone as a shareable image, like the site’s Stat Shot: a big number or short text (e.g. “10,000”), a label (“followers on X”), an optional tag, message, name, handle, date and profile photo. Layouts: big (the number as large as it fits), centre, profile (a card with your photo), chart (a line climbing to the top right), badge (the number in a ring), headline (the label as a large headline: a new job, a launch), board (each character on a flip tile). Backgrounds: plain, gradient, glow, grid, dots, rays, waves, confetti, or image. Sizes: square 1080×1080, portrait 1080×1350, portrait-34 1080×1440, story 1080×1920, landscape 1600×900. PNGs in ~/Downloads/one-design. On the Free plan each image carries a small “Made with one.design” credit in the bottom right corner, as on the site; Pro has none.
Parametersdimdatefontnamelabelphotosizesvalueaccenthandlekickerlayout+6 more
plan_and_pricing
Plans and pricing
The current plan, what Free and Pro include (tools, batch sizes, QR codes, Brand Libraries) and the price. Use it when someone asks what’s free, hits a limit, or asks about upgrading.
Takes no parameters.
buy_pro
Buy One Design Pro
Starts checkout for One Design Pro (Lifetime, paid once) and opens it in the browser. Only when the person asks to buy or upgrade. If they are signed in (sign_in), the purchase goes on that account; if not, Stripe asks for an email and the account is made or found from it. Payment happens on Stripe’s page, never here.
Parametersopen_in_browser
sign_in
Sign in to One Design
Sends a 6-digit sign-in code to an email address, to unlock Pro here for someone who bought it. Then call verify_sign_in with the code. Accounts are optional; Free works without one.
Parametersemailrequired
verify_sign_in
Finish signing in
Finishes signing in with the code from the email, then checks the account’s plan. The session is saved on this computer (~/.config/one-design).
Parameterscoderequiredemailrequired
Forgets the saved sign-in on this computer. Back to Free here.
Takes no parameters.
manage_billing
Manage billing
Opens Stripe’s billing page for the signed-in account: receipts, invoices, card, or cancelling a subscription.
Parametersopen_in_browser
brand_library
Your Brand Libraries
Reads the Brand Libraries synced to the signed-in one.design account: colours (name and HEX), fonts, logos. Use the colours in other tools (QR codes, watermarks, store shots, bento). save_logos writes the logos to a folder so other tools can use them.
Parameterslibraryoutput_dirsave_logos
list_tools
All One Design tools
Every tool on one.design: what it does, whether it’s Free or Pro, and which MCP tool does it here (or that it runs on the site).
Takes no parameters.
open_in_one_design
Open a tool on one.design
Opens a tool on one.design in the browser. For the tools that run an AI model on the device and so only work on the site: Cutout (background removal), Blur Faces, Magic Eraser, Brand Guidelines. Works for any tool, and for the pricing, account and Brand Library pages.
Parameterstoolrequiredopen_in_browser