Create Lucid Embed
_lucid_create_embedFull Description
Internal tool for MCP Apps extension only. Creates an embed for a Lucid document, returning an embed ID.
Parameters (1 required)
document_idstringSimplify your workflow by using Claude to generate foundational Lucidchart diagrams directly from your conversation. Beyond seamless diagram creation, this integration acts as a digital bridge, allowing you to instantly search, retrieve, share, and summarize your existing Lucid documents right within Claude. Whether you are jumpstarting a new process map or extracting insights from complex boards, you can now eliminate the bottleneck of context-switching and provide your AI with the visual context it needs to accelerate your work.
_lucid_create_embedInternal tool for MCP Apps extension only. Creates an embed for a Lucid document, returning an embed ID.
document_idstring_lucid_create_embed_session_tokenInternal tool for MCP Apps extension only. Creates a session token for an existing embed, returning a token and embed URL.
embed_idstringoriginstringfetchRetrieves the content of a specific Lucid document by its ID.
Args: id: Valid UUID of the document
idstringlucid_create_diagram_from_specificationCreates a Lucid document using the Standard Import format (.lucid file).
The Standard Import format allows creating rich diagrams with shapes, lines, groups, layers, images, and data-backed elements. lucid_create_diagram_from_specification creates a .lucid ZIP file containing a document.json with your specification.
Args: title: The title for the new document standard_import_json: JSON string in Lucid Standard Import format product: Target product - either "lucidchart" or "lucidspark" use_assisted_layout: When true (default), automatically arranges shapes with optimal spacing and alignment. Set to false when precise positioning matters, or when the diagram uses containers, swim lanes, BPMN pools, or other structures where shape placement within specific regions is meaningful — auto-layout may move shapes out of their intended containers.
Example prompts for lucid_create_diagram_from_specification:
to a yellow diamond below it labeled 'Decision'"
'Process' in the middle (blue), 'Output' on the right (red), with arrows connecting them"
Standard Import JSON Format: The JSON must follow Lucid's Standard Import specification. Basic structure:
{ "version": 1, "pages": [ { "id": "page1", "title": "Page 1", "shapes": [ { "id": "shape1", "type": "rectangle", "boundingBox": {"x": 100, "y": 100, "w": 200, "h": 100}, "text": "Hello World" } ], "lines": [ { "id": "line1", "lineType": "straight", "endpoint1": { "type": "shapeEndpoint", "style": "none", "shapeId": "shape1", "position": {"x": 1, "y": 0.5} }, "endpoint2": { "type": "positionEndpoint", "style": "arrow", "position": {"x": 400, "y": 250} }, "stroke": { "color": "#000000", "width": 2, "style": "solid" }, "text": [ { "text": "connects to", "position": 0.5, "side": "middle" } ] } ] } ] }
PAGE PROPERTIES:
SHAPE TYPE REGISTRY: Use these exact type names in your Standard Import JSON:
Standard Library:
Shape Library:
Container Library: NOTE: Containers are intended to contain other shapes, not text. Shapes can be added to a container by placing them within the boundaries of the container.
CONTAINER TITLES: Some containers support an optional "containerTitle" property that displays a title above the container. Containers that support containerTitle: rectangleContainer, roundedRectangleContainer, circleContainer, pillContainer Containers that do NOT support containerTitle: braceContainer, bracketContainer, diamondContainer, swimLanes Example: {"type": "rectangleContainer", "boundingBox": {...}, "containerTitle": {"text": "My Container Title"}}
Containers do not have a "text" property.
// Vertical swim lanes (side-by-side columns) {"type": "swimLanes", "boundingBox": {"w": 1000, "h": 800}, "vertical": true, "lanes": [{"title": "Lane 1", "width": 500, ...}, {"title": "Lane 2", "width": 500, ...}]} // Sum: 500+500=1000 (matches boundingBox.w ✓)
// Horizontal swim lanes (stacked rows) {"type": "swimLanes", "boundingBox": {"w": 1000, "h": 800}, "vertical": false, "lanes": [{"title": "Lane 1", "width": 400, ...}, {"title": "Lane 2", "width": 400, ...}]} // Sum: 400+400=800 (matches boundingBox.h ✓) - "width" here means row height!
Flowchart Library:
Example: {"type": "braceNote", "rightFacing": true, "braceWidth": 15, "boundingBox": {...}, ...}
Example: {"type": "predefinedProcess", "sideWidth": 0.1, "boundingBox": {...}, ...}
Lucidspark Library:
UML Library:
BPMN 2.0 Library:
Table Library:
Common Shape Properties:
Shape Ordering (Z-Index): Shapes are rendered in the order they appear in the shapes array. Shapes defined LATER in the array appear IN FRONT OF (on top of) shapes defined earlier. If you need a shape to appear behind other shapes, place it earlier in the shapes array.
Line Properties:
Endpoint Types: IMPORTANT: The "style" property on each endpoint specifies the line ending decoration that appears AT THAT ENDPOINT. For a directional arrow pointing from shape A to shape B:
Example: A line with an arrow pointing from shape1 to shape2: {"endpoint1": {"type": "shapeEndpoint", "style": "none", "shapeId": "shape1"}, "endpoint2": {"type": "shapeEndpoint", "style": "arrow", "shapeId": "shape2"}}
{type: "shapeEndpoint", style: "arrow", shapeId: "shape1", position: {x: 0.5, y: 0.5}}
{type: "positionEndpoint", style: "arrow", position: {x: 100, y: 100}}
{type: "lineEndpoint", style: "arrow", lineId: "line1", position: 0.5}
Property Formats:
Size Limits:
productstringstandard_import_jsonstringtitlestringuse_assisted_layoutbooleanTruelucid_create_document_share_linkCreates a new share link for a document with specified permissions.
Args: document_id: Valid UUID of the document to share role: Access permission level - one of: "view", "comment", "edit", "editandshare" restrict_to_account: Limit access to account members only (default: True) expires: Optional ISO 8601 timestamp for link expiration (e.g., "2025-12-31T23:59:59Z") allow_anonymous: Allow anonymous access via the share link (default: False)
Returns: The acceptUrl string for the created share link
document_idstringrolestringallow_anonymousbooleanFalseexpiresstringnullrestrict_to_accountbooleanTruelucid_create_mind_mapCreates a Lucid document containing a mind map from structured node data.
Use this tool when the user wants to create a mind map or hierarchical topic diagram. Provide the topics as a flat list of nodes with parent-child relationships.
Each node must have:
There must be exactly one root node (with null/missing parentId).
Example nodes: [ {"id": "1", "text": "Main Topic", "parentId": null}, {"id": "2", "text": "Subtopic A", "parentId": "1"}, {"id": "3", "text": "Subtopic B", "parentId": "1"}, {"id": "4", "text": "Detail A1", "parentId": "2"} ]
Args: title: Document title (max 3000 characters) nodes: List of node dicts with id, text, and optional parentId fields (max 1000 nodes) product: Target product - "lucidchart" (default) or "lucidspark"
Returns: JSON with the created document details including document ID and edit URL
nodesarraytitlestringproductstringlucidchartlucid_create_org_chartCreates a Lucidchart document containing an org chart from structured node data.
Use this tool when the user wants to create an organizational chart, team structure, or reporting hierarchy diagram. Provide the people/roles as a flat list of nodes with manager-report relationships.
Each node must have:
Optional fields per node:
There must be exactly one root node (with null/missing managerId).
Example nodes: [ {"id": "1", "name": "Alice Smith", "managerId": null, "role": "CEO"}, {"id": "2", "name": "Bob Jones", "managerId": "1", "role": "VP Engineering"}, {"id": "3", "name": "Carol White", "managerId": "1", "role": "VP Marketing"}, {"id": "4", "name": "Dave Brown", "managerId": "2", "role": "Senior Engineer"} ]
Args: title: Document title (max 3000 characters) nodes: List of node dicts with id, name, and optional managerId/role/imageUrl fields (max 1000 nodes)
Returns: JSON with the created document details including document ID and edit URL
nodesarraytitlestringlucid_create_sequence_diagramCreates a Lucid document containing a UML sequence diagram from PlantUML markup.
Use this tool when the user wants to create a UML sequence diagram showing interactions between participants over time. Provide the diagram definition using PlantUML sequence diagram syntax.
Styling: Diagrams are automatically styled with Lucid blue theme colors (blue participants, blue arrows, light blue fills). You do not need to add color directives for a good-looking diagram. However, you can optionally override colors on individual elements (see Color Support below).
IMPORTANT
PlantUML Sequence Diagram Syntax Reference:
Participants:
Note: Do NOT use "Name" as Name when display name and alias are identical (e.g. participant "Alice" as Alice). Just use participant Alice.
Messages (arrow styles):
Grouping:
Notes:
Other:
Color Support (optional - diagrams are styled by default):
(or: participant "Display Name" as alias #hexcolor)
Example markup: @startuml actor User participant "Web App" as app participant "API Server" as api database "Database" as db
User -> app : Login request activate app app -> api : POST /auth activate api api -> db : Query user activate db db --> api : User data deactivate db api --> app : JWT token deactivate api app --> User : Login success deactivate app @enduml
Args: title: Document title (max 3000 characters) markup: PlantUML sequence diagram markup (max 50KB) product: Target product - "lucidchart" (default) or "lucidspark"
Returns: JSON with the created document details including document ID and edit URL
markupstringproductstringtitlestringlucid_export_document_as_PNGExports a Lucid document page as a PNG image.
document_idstringpageinteger1searchSearches for documents in Lucid based on keywords.
Args: query: String containing space-separated keywords to be searched for (max 400 characters)
Returns: Search results with document titles, IDs, and URLs, sorted by relevance. Returns up to 200 results (API maximum).
querystringshare_document_with_collaboratorsShare a Lucid document with collaborators by granting them access.
This tool searches for users by their email addresses, then grants them the specified collaborator role on the document.
Args: document_id: The UUID of the document to share emails: List of email addresses to share the document with (max 100) role: The collaborator role to grant. Options:
Returns: JSON string with results for each email address, indicating success or failure
document_idstringemailsarrayrolestringeditandshare