Horizontal

WorksImages, video and designCode and development

SVG Lab

SVG Lab MCP: the Design Engine for AI. App screens, icons, illustrations and charts as SVG.

Addresshttps://svglab.app/mcp/agents
Claude Codeclaude mcp add --transport http svglab https://svglab.app/mcp/agents
For Cursor and other clients
{
  "mcpServers": {
    "svglab": {
      "type": "http",
      "url": "https://svglab.app/mcp/agents"
    }
  }
}

Watch out

Has tools that change things: 44 of them

The server itself marks these tools as deleting or overwriting data (destructiveHint): have the agent ask you before it calls them.

Test
Works: Handshake succeeded
Tools
90 tools
Handshake
1.8 s
Transport
streamable-http · 2025-06-18
Tested
6 November 2026
Registry name
app.svglab/svglab v0.1.3
Listed
18 October 2026
Updated
18 October 2026
Website
svglab.app/mcp-server
Source
github.com/ottoman9/svglab-mcp
The last 1 tests
WhenResultTime
2026-11-06 12:11 UTCHandshake succeeded1.8 s

The 90 tools it listed

"Read only" and "Changes data" are the server's own marks. Underlined parameters are required.

  1. account_statusRead only

    Check account access

    Report the plan, access, SVG Lab credits left and what actions cost.

  2. add_artboard

    Add artboard

    Add a screen, slide, page or post (preset sizes it). What a control opens (dropdown, filter, menu) is add_hidden_ui.

    width height x y name background show_background preset tone

  3. add_hidden_ui

    Add hidden UI

    Use when a control opens hidden UI: adds a sized, linked dropdown, side, sheet, dialog or state board beside its screen.

    screen trigger kind to name height

  4. add_texture

    Add texture

    Add hatch, stipple, facet or strata marks clipped to a shape of a drawing on its "Drawing · <illustration>" board. On a screen the marks are refused as a picture drawn onto it.

    shape_id kind angle spacing jitter seed color width opacity coverage ink name

  5. alignChanges data

    Align shapes

    Align shapes to a shared edge or centre.

    shape_ids mode

  6. align_to_artboardChanges data

    Align to artboard

    Position shapes relative to their artboard.

    shape_ids horizontal vertical

  7. apply_layout_fixesChanges data

    Apply layout alignment fixes

    Move misaligned layout children to their suggested positions.

    target artboard group shape_ids min_font_size ignore_pairs containment

  8. bind_slotChanges data

    Bind artwork to a layout slot

    Fit artwork into a layout slot and keep it bound to it.

    shape_ids layout_id path mode clip detach

  9. boolean_opChanges data

    Combine shapes

    Union, subtract, intersect or exclude shapes into one new path.

    op shape_ids

  10. check_contactsRead only

    Check part contacts

    Measure whether parts touch what they belong to.

    pairs attachments tolerance artboard display_width

  11. check_contrastRead only

    Check colour contrast

    Compute WCAG contrast between two colours.

    foreground background target font_size font_weight

  12. clip_shapesChanges data

    Clip shapes

    Clip or mask shapes with another shape.

    target_ids clip_id as_mask

  13. clip_to_artboardChanges data

    Clip to artboard

    Clip shapes that cross their artboard's frame.

    artboard shape_ids include_clipped

  14. compare_drawingRead only

    Compare drawing with picked image

    Measure your drawing against the picked image: overlay, difference map, pixels off and the shape misses left; candidates score edits before you send them. measure reads the picked image itself (a gridded crop, colour samples, colour runs).

    artboard reference_id region regions candidates ignore measure

  15. create_icon

    Create icon

    Draw a built-in monoline icon (docs {components} names them).

    icon x y size color stroke_width artboard name

  16. create_layout

    Create layout

    Build a screen or section from a layout tree; returns boxes, ids and measured warnings. With a shell (Claude Code): write the fields to a JSON file, curl it to the upload link new_project gave and pass only upload_id, so the user approves a short call.

    verbose artboard x y width height root upload_id

  17. create_path

    Create path

    Draw one path from anchors with optional absolute handles. With a shell (Claude Code): write the fields to a JSON file, curl it to the upload link new_project gave and pass only upload_id, so the user approves a short call.

    name style opacity style_ref artboard points closed mirror fill_handles corner_angle smooth tension subpaths upload_id

  18. create_shapes

    Create shapes in one batch

    Draw up to 80 shapes, text, paths and pencil strokes in one call; illustrations are copied from a reference. With a shell (Claude Code): write the fields to a JSON file, curl it to the upload link new_project gave and pass only upload_id, so the user approves a short call.

    shapes artboard upload_id

  19. current_projectRead only

    Show current project

    Show the current project and its link.

  20. define_stylesChanges data

    Define style presets

    Define named style presets. With a shell (Claude Code): write the fields to a JSON file, curl it to the upload link new_project gave and pass only upload_id, so the user approves a short call.

    styles upload_id

  21. delete_shapesChanges data

    Delete shapes

    Delete shapes.

    shape_ids

  22. describe_documentRead only

    Describe document

    Describe the artboards and shapes.

    artboard name_contains ids limit offset

  23. design_tokensChanges data

    Set design tokens

    Change the project's design tokens. With a shell (Claude Code): write the fields to a JSON file, curl it to the upload link new_project gave and pass only upload_id, so the user approves a short call.

    preset reset set user_named_fonts imagery upload_id

  24. detach_symbolChanges data

    Detach symbol instance

    Turn one symbol instance into editable shapes.

    shape_id

  25. distributeChanges data

    Distribute shapes

    Space three or more shapes evenly.

    shape_ids axis

  26. docsRead only

    Read the reference

    SVG Lab's reference: start-here, each tool's full details, design guides and the illustration routine. docs {fonts} lists the type catalog; docs {components} lists the components, icons and layout node types.

    tool tools guide guides lesson lessons query skill reference fonts components

  27. draw_svgChanges data

    Draw SVG drawing

    Upload the SVG you wrote by hand of the picked image onto its drawing artboard, with differences: every difference you still see, however small ([] at shape_misses 0). Auto-traced SVG (potrace, vtracer, colour quantising, any script that turns pixels into paths) is refused. With a shell (Claude Code): curl the .svg to the upload link new_project gave and pass upload_id instead of svg, so the user approves a short call.

    artboard svg upload_id name reference_id differences variant

  28. duplicate

    Duplicate shapes

    Copy shapes in place or at an offset.

    shape_ids offset

  29. edit_pathChanges data

    Edit path

    Change a path's anchors and handles in place. With a shell (Claude Code): write the fields to a JSON file, curl it to the upload link new_project gave and pass only upload_id, so the user approves a short call.

    shape_id coordinate_space artboard subpath_index move_points set_handles insert_point delete_point set_points set_tangent set_tension closed smooth tension upload_id

  30. export_artboard

    Export artboard

    Export an artboard as SVG, with a preview card and a link to a PNG picture.

    artboard outline_text background part export_id

  31. export_code

    Export code

    Export screens as code (HTML, React, SwiftUI, Compose, Flutter) or layered SVG, with tokens and assets, as a ZIP link.

    format artboards file

  32. export_document

    Export the deck or document

    The finished deck or document by link: PDF, editable PowerPoint (pptx) or post images.

    format artboards file_name

  33. find_referencesRead only

    Find drawing references

    SVG Lab's reference pictures for one planned illustration (illustration, query): Creative Commons first, each with its licence, no stock-agency previews; candidates are for you only.

    query style count illustration

  34. fit_artboardChanges data

    Fit artboard to artwork

    Fit the active artboard to the artwork on it, plus optional padding.

    padding

  35. fit_to_boxChanges data

    Fit shapes into box

    Scale and move shapes together into a box; placing an illustration removes its drawing board.

    shape_ids x y width height mode artboard

  36. fit_to_childrenChanges data

    Fit container to content

    Resize a container to wrap its children.

    container_id child_ids padding

  37. flipChanges data

    Flip shapes

    Flip shapes horizontally or vertically.

    shape_ids axis

  38. generate_illustration

    Draw with SVG Lab's vector model

    Draw a planned illustration with SVG Lab's vector model: editable SVG from a text brief, the faster route (500 credits).

    illustration prompt artboard

  39. get_assetsRead only

    Get asset files

    Get drawings and icons as SVG or PNG files by asset id or artboard; a ZIP link for many.

    artboard assets format scales

  40. groupChanges data

    Group shapes

    Group shapes.

    shape_ids artboard name

  41. illustration_jobsRead only

    Vector drawing progress

    Progress of drawings by SVG Lab's vector model: status, seconds, group_id once placed.

  42. inspect_layoutRead only

    Inspect layout

    Measure overlap, overflow and alignment; changes nothing.

    target artboard group shape_ids min_font_size ignore_pairs containment

  43. inspect_pathRead only

    Inspect path

    Read a path's anchors, handles and construction issues.

    shape_id audit display_width corners preview subpath_index anchor_indices crop max_size background

  44. list_artboardsRead only

    List artboards

    List the artboards.

  45. list_design_stylesRead only

    List style presets

    List style presets.

  46. list_layoutsRead only

    List layouts

    List this project's layouts.

  47. list_projectsRead only

    List projects

    List the user's projects.

  48. list_shapesRead only

    List shapes

    List shapes with ids, boxes and stacking order.

    artboard group name_contains limit offset all

  49. list_symbolsRead only

    List symbols

    List the symbols.

  50. lookRead only

    Look at an artboard

    Render an artboard with measured facts, or compare a region with a reference.

    artboard artboards flow before_after region scale critique brief reference_id reference_region inspect_shape

  51. make_responsive

    Show on other phones

    Show a phone screen on other phones and foldables, reflowed, on new artboards.

    artboard devices sizes

  52. make_symbolChanges data

    Make symbol

    Turn shapes into a reusable symbol.

    shape_ids name

  53. measure_optical_centerRead only

    Measure optical centre

    Report the optical-centre correction without moving anything.

    shape_ids container_id axis

  54. measure_textRead only

    Measure text

    Measure how text wraps and renders, without drawing it.

    opacity content font_size font_family font_weight font_style text_anchor vertical_anchor letter_spacing line_height max_width

  55. mirrorChanges data

    Mirror shapes

    Make a mirrored copy, or join a half outline with its reflection.

    join snap shape_ids axis at gap artboard merge

  56. name_groupChanges data

    Name group

    Name a group.

    group name

  57. new_project

    New project

    Start a project: kind "ui" (apps, sites) or "marketing" (decks, pitch decks, posters, ads, posts, flyers, reports).

    name imagery kind from_project planning

  58. normalize_radiiChanges data

    Match corner radii

    Give rectangles one corner radius.

    shape_ids radius

  59. normalize_spacingChanges data

    Even out spacing

    Set one equal gap between shapes.

    shape_ids axis gap

  60. offset_path

    Offset path

    Draw a new path at a set distance outside or inside a path.

    shape_id distance

  61. open_project

    Open project

    Open a saved project.

    project_id

  62. optical_centerChanges data

    Optically centre icon

    Move an icon so its visual centre sits on its container's centre.

    shape_ids container_id axis

  63. pause_editor

    Pause the server editor

    Save and close the server editor.

  64. pencil

    Draw pencil stroke

    Draw a freehand stroke the way the Pencil tool does. With a shell (Claude Code): write the fields to a JSON file, curl it to the upload link new_project gave and pass only upload_id, so the user approves a short call.

    name style opacity style_ref artboard points closed wobble wobble_units ink upload_id

  65. place_image

    Place image

    Place a photograph in a box.

    data_url url photo x y width height fit corner_radius scrim artboard name

  66. place_symbol

    Place symbol

    Place an instance of a symbol.

    symbol_id name x y

  67. plan_illustrationsChanges data

    Plan illustrations

    List the illustrations each screen needs (none, one or several); the reply gives per_screen and the routes for the user to approve.

    illustrations

  68. read_screenRead only

    Read screen structure

    Read a screen's layout tree, sizing, text, paint, taps, asset ids and tokens, to build it in code.

    artboard node max_nodes

  69. reorderChanges data

    Change stacking order

    Change stacking order.

    shape_ids mode reference_id

  70. repeatChanges data

    Repeat shapes

    Copy shapes into a row, grid or circle.

    shape_ids mode count axis gap columns row_gap artboard radius center_x center_y rotate

  71. resizeChanges data

    Resize shapes

    Set the exact width or height of shapes.

    shape_ids width height anchor

  72. resolve_overflowChanges data

    Pull shapes inside frame

    Move shapes back inside a frame.

    shape_ids artboard container_id padding shrink

  73. scatter

    Scatter shapes

    Place many seeded copies of one item inside an area.

    region count item seed size_jitter rotation_jitter min_distance avoid_ids artboard name

  74. search_photosRead only

    Search stock photos

    Search Unsplash and Pexels for photographs; nothing is placed.

    query orientation source limit preview

  75. set_active_artboard

    Switch active artboard

    Make an artboard the active one.

    artboard

  76. set_artboardChanges data

    Edit artboard

    Resize, move, rename, recolour or delete an artboard; notes holds a slide's speaker notes.

    artboard width height x y name background show_background notes tone move_content delete

  77. set_filterChanges data

    Set blur or shadow

    Set blur, soft shadows and opacity, or clear them.

    shape_ids blur shadow shadows opacity region artboard

  78. set_gradientChanges data

    Set gradient fill

    Paint fill or stroke with a linear or radial gradient.

    shape_ids type stops angle focal_x focal_y target units spread coordinates def_id artboard

  79. set_lockedChanges data

    Lock or unlock shapes

    Lock or unlock shapes.

    shape_ids locked

  80. set_patternChanges data

    Set pattern fill

    Fill shapes with a built-in pattern.

    shape_ids pattern color

  81. set_reference_image

    Load reference image

    Load the find_references picture picked for a planned illustration (or the user's own picture as data_url); the reply shows it. Not in the design.

    illustration candidate data_url name

  82. set_styleChanges data

    Set style

    Change fill, stroke, caps, joins, taper or opacity.

    shape_ids fill stroke stroke_width stroke_linecap stroke_linejoin stroke_taper stroke_taper_amount opacity

  83. set_textChanges data

    Edit text

    Change text content or typography.

    shape_ids content font_size font_family font_weight font_style letter_spacing line_height text_anchor

  84. smooth_pathChanges data

    Smooth path

    Fill missing handles, refit curves, or turn a stroke into ink.

    shape_id mode protect corners display_width split_extrema tolerance corner_angle tension subpath_index ink

  85. snap_to_gridChanges data

    Snap to grid

    Snap shapes to a grid.

    shape_ids as_unit grid size artboard

  86. text_on_pathChanges data

    Put text on a path

    Set a text shape along a path.

    text_id path_id offset side flipped

  87. transformChanges data

    Move, scale or rotate

    Move, scale or rotate shapes.

    shape_ids dx dy scale rotate

  88. ungroupChanges data

    Ungroup shapes

    Break groups into their shapes.

    shape_ids

  89. update_layoutChanges data

    Update layout

    Patch or replace a layout made by create_layout. With a shell (Claude Code): write the fields to a JSON file, curl it to the upload link new_project gave and pass only upload_id, so the user approves a short call.

    layout_id verbose patches root x y width height upload_id

  90. upload_assetChanges data

    Upload image or file

    Place the user's own image or SVG file.

    url data_url asset_id as x y width height fit corner_radius scrim artboard name purpose shape_ids tile_size

Is this yours?

Claim it to hear the moment it breaks, correct this page and add your own ways to use it.

A test is the handshake and the tool list: no tool was called. Names and descriptions are as listed by whoever registered the server; we haven't checked them.

Back to Tested MCP Servers