Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
MURAL_CLIENT_IDYesYour Mural client ID
MURAL_REDIRECT_URINoOptional redirect URI for OAuthhttp://localhost:8080/callback
MURAL_CLIENT_SECRETYesYour Mural client secret
MURAL_REFRESH_TOKENYesYour Mural refresh token

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_workspacesA

List all workspaces the authenticated user is a member of.

Args:
    limit: Max results to return.
    next_token: Pagination token from a previous response.
list_roomsA

List rooms in a workspace that the authenticated user has access to.

Args:
    workspace_id: The workspace ID.
    limit: Max results to return.
    next_token: Pagination token from a previous response.
list_murals_in_roomA

List murals in a room.

Args:
    room_id: The room ID (integer).
    limit: Max results to return.
    next_token: Pagination token from a previous response.
get_muralA

Get details of a single mural.

Args:
    mural_id: The mural ID (format: "workspaceId.timestamp", e.g. "workspace1234.1608152669000").
get_mural_widgetsA

Get all widgets on a mural. Use type_filter to narrow results.

Args:
    mural_id: The mural ID.
    type_filter: Comma-separated widget types to filter. Options: areas, arrows, comments, files, sticky notes, texts, icons, images, shapes.
    parent_id: Filter widgets by their parent area ID.
    limit: Max results to return.
    next_token: Pagination token from a previous response.
get_mural_widgetC

Get a single widget by its ID.

Args:
    mural_id: The mural ID.
    widget_id: The widget ID.
create_muralA

Create a new mural in a room.

Args:
    room_id: The room ID to create the mural in (required).
    title: Title of the mural.
    background_color: Background color in hex with alpha (e.g. "#FFFFFFFF").
    width: Width of the mural in px (3000-60000, default 9216).
    height: Height of the mural in px (3000-60000, default 6237).
    infinite: If true, canvas is borderless and grows as you add widgets.
update_muralC

Update a mural's properties.

Args:
    mural_id: The mural ID.
    title: New title.
    background_color: New background color in hex with alpha.
delete_muralB

Delete a mural.

Args:
    mural_id: The mural ID to delete.
create_sticky_notesA

Create one or more sticky note widgets on a mural (limit 1000).

Each widget object supports:
  - x, y (required): Position in px.
  - shape (required): "circle" or "rectangle".
  - text: Plain text content.
  - htmlText: HTML-formatted text (overrides text).
  - width, height: Size in px (default 138).
  - style: { backgroundColor, bold, italic, underline, strike, font, fontSize, textAlign, border }.
  - parentId: ID of parent area widget.
  - tags: Array of tag IDs.

Args:
    mural_id: The mural ID.
    widgets: Array of sticky note objects.
create_shapesA

Create one or more shape widgets on a mural (limit 1000).

Each widget object supports:
  - x, y (required): Position in px.
  - shape (required): One of: ellipse, rectangle, rounded_square, rhombus_smart, triangle_smart,
    hexagon_smart, pentagon_smart, diamond, process, decision, terminator, start, end, delay,
    data, database, document, multiple_documents, predefined_process, manual_input, manual_loop,
    preparation, stored_data, connector, merge, or, summing_junction, display, direct_data,
    internal_storage, papertape, loop_limit, off_page_connector, cloud, cross, star, badge,
    ribbon, step, trapezoid, octagon, speech_bubble_left, speech_bubble_right, speech_bubble_center,
    thinking_bubble_left, thinking_bubble_right, arrow_right, arrow_left, arrow_down, arrow_top,
    arrow_left_right, brace_left, brace_right, note_left, note_right, teardrop_bubble, right_triangle.
  - text: Plain text content.
  - htmlText: HTML-formatted text.
  - width, height: Size in px (default 138).
  - style: { backgroundColor, borderColor, borderStyle, borderWidth, bold, italic, underline, strike, font, fontColor, fontSize, textAlign }.
  - parentId: ID of parent area widget.

Args:
    mural_id: The mural ID.
    widgets: Array of shape objects.
create_titlesA

Create one or more title widgets on a mural (limit 1000). Titles auto-grow width to fit text.

Each widget object supports:
  - text: The title text (supports HTML: <b>, <i>, <u>, <s>, <span style="color:...">>).
  - x, y: Position in px (default 0).
  - width: Width in px (default 293).
  - height: Height in px (default 62).
  - style: { backgroundColor, font, fontSize (default 48), textAlign }.
  - parentId: ID of parent area widget.

Args:
    mural_id: The mural ID.
    widgets: Array of title objects.
create_textboxesA

Create one or more textbox widgets on a mural (limit 1000). Textboxes wrap text to fixed width.

Each widget object supports:
  - text: The textbox text (supports HTML: <b>, <i>, <u>, <s>, <span style="color:...">>).
  - x, y: Position in px (default 0).
  - width: Width in px (default 296).
  - height: Height in px (default 28).
  - style: { backgroundColor, font, fontSize (default 24), textAlign }.
  - parentId: ID of parent area widget.

Args:
    mural_id: The mural ID.
    widgets: Array of textbox objects.
create_arrowA

Create an arrow (connector) widget on a mural.

Args:
    mural_id: The mural ID.
    x: Horizontal position in px.
    y: Vertical position in px.
    width: Width of the bounding box in px.
    height: Height of the bounding box in px.
    points: Array of {x, y} coordinate objects defining the arrow path (min 2 points).
    arrow_type: "straight" (default), "curved", or "orthogonal".
    tip: "single" (default), "double", or "no tip".
    start_ref_id: ID of the widget the arrow starts from (snaps to it).
    end_ref_id: ID of the widget the arrow ends at (snaps to it).
    style: { strokeColor (hex+alpha), strokeStyle ("solid"|"dashed"|"dotted-spaced"|"dotted"), strokeWidth (1-7) }.
    label: { format: {color, fontFamily, bold, italic, textAlign, fontSize}, labels: [{x, y, height, width, text}] }.
    parent_id: ID of parent area widget.
create_areaA

Create an area (swimlane/zone) widget on a mural.

Args:
    mural_id: The mural ID.
    x: Horizontal position in px (default 0).
    y: Vertical position in px (default 0).
    width: Width in px (default 460).
    height: Height in px (default 503).
    title: Title text displayed on the area.
    layout: "free" (default), "column", or "row".
    show_title: Whether to display the title (default true).
    style: { backgroundColor, borderColor, borderStyle ("solid"|"dotted"), borderWidth (1-7), titleFontSize }.
    parent_id: ID of parent area widget (for nested areas).
create_commentA

Create a comment widget on a mural.

Args:
    mural_id: The mural ID.
    x: Horizontal position in px.
    y: Vertical position in px.
    message: The comment text.
    reference_widget_id: ID of the widget this comment is attached to.
    parent_id: ID of parent area widget.
update_sticky_noteB

Update a sticky note widget on a mural.

Args:
    mural_id: The mural ID.
    widget_id: The widget ID of the sticky note.
    properties: Object with fields to update. Supported fields:
        x, y, width, height, rotation, text, htmlText,
        style: { backgroundColor, bold, italic, underline, strike, font, fontSize, textAlign, border },
        tags, title, hyperlink, hyperlinkTitle, parentId, hidden.
update_shapeA

Update a shape widget on a mural.

Args:
    mural_id: The mural ID.
    widget_id: The widget ID of the shape.
    properties: Object with fields to update. Supported fields:
        x, y, width, height, rotation, text, htmlText,
        style: { backgroundColor, borderColor, borderStyle, borderWidth, bold, italic, underline, strike, font, fontColor, fontSize, textAlign },
        title, parentId, hidden.
update_textA

Update a text widget (title or textbox) on a mural.

Args:
    mural_id: The mural ID.
    widget_id: The widget ID of the text/title/textbox.
    properties: Object with fields to update. Supported fields:
        x, y, width, height, rotation, text,
        style: { backgroundColor, font, fontSize, textAlign },
        title, hyperlink, hyperlinkTitle, parentId, hidden.
update_arrowA

Update an arrow (connector) widget on a mural.

Args:
    mural_id: The mural ID.
    widget_id: The widget ID of the arrow.
    properties: Object with fields to update. Supported fields:
        x, y, width, height, points, arrowType ("straight"|"curved"|"orthogonal"),
        tip ("single"|"double"|"no tip"), startRefId, endRefId,
        style: { strokeColor, strokeStyle, strokeWidth },
        label: { format: {...}, labels: [...] }, parentId.
update_areaA

Update an area (swimlane/zone) widget on a mural.

Args:
    mural_id: The mural ID.
    widget_id: The widget ID of the area.
    properties: Object with fields to update. Supported fields:
        x, y, width, height, title, layout ("free"|"column"|"row"), showTitle,
        style: { backgroundColor, borderColor, borderStyle, borderWidth, titleFontSize },
        parentId, hidden.
update_commentA

Update a comment widget on a mural.

Args:
    mural_id: The mural ID.
    widget_id: The widget ID of the comment.
    properties: Object with fields to update. Supported fields:
        x, y, message, referenceWidgetId, parentId.
delete_widgetB

Delete any widget from a mural by its ID.

Args:
    mural_id: The mural ID.
    widget_id: The widget ID to delete.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/alymohamedhassan/mural-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server