OmniGraffle BindCraft
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_document_infoA | Get information about the current OmniGraffle document: name, canvases, current canvas, and graphics count |
| create_documentA | Create a new OmniGraffle document, optionally from a built-in template |
| save_documentA | Save the current OmniGraffle document |
| list_templatesA | List all available OmniGraffle templates |
| create_canvasB | Create a new canvas in the current document |
| list_canvasesA | List all canvases in the current document with their graphics count |
| switch_canvasB | Switch to a different canvas by index (0-based) |
| set_canvas_sizeC | Set the size of the current canvas |
| create_shapeC | Create a shape on the current canvas with position, size, text, and styling |
| create_shapes_batchA | Create multiple shapes at once. Returns an array of created shape IDs. More efficient than calling create_shape multiple times. |
| update_graphicC | Update properties of an existing graphic by ID |
| delete_graphicsB | Delete one or more graphics by ID |
| get_graphicsA | List all graphics on the current canvas with their properties (ID, type, position, size, text, style) |
| clear_canvasA | Remove all graphics from the current canvas |
| connect_shapesB | Connect two shapes with a line/arrow. The line automatically routes between the shapes. |
| connect_shapes_batchA | Connect multiple pairs of shapes at once with full styling. Supports auto-routing: when line_type is 'auto', picks straight for vertical/horizontal neighbors, orthogonal for cross-column, curved for feedback loops. |
| create_lineB | Create a standalone line between two points (not attached to shapes) |
| set_magnetsA | Set magnet (connection) points on a shape. Magnets define where lines can attach. |
| auto_layoutA | Apply automatic layout to the current canvas. OmniGraffle will arrange all connected shapes. |
| create_layerB | Create a new layer on the current canvas |
| list_layersA | List all layers on the current canvas |
| group_graphicsC | Group multiple graphics together |
| ungroupB | Ungroup a group graphic |
| align_graphicsC | Align multiple graphics relative to each other |
| export_canvasB | Export the current canvas to an image file (PNG, PDF, or SVG) |
| run_omni_jsA | Execute arbitrary Omni Automation JavaScript inside OmniGraffle. The code runs in OmniGraffle's JS context with access to the full Omni Automation API. Use for operations not covered by other tools. |
| run_jxaA | Execute JXA (JavaScript for Automation) code via osascript. Use for operations that need the macOS scripting bridge, such as file system access combined with OmniGraffle control. |
| run_applescriptA | Execute AppleScript code. Use for operations that work better with AppleScript syntax. |
| search_iconsA | Search IconPark icons by keyword. Returns matching icon names that can be used with insert_icon. 2658 icons available across 38 categories. |
| list_icon_categoriesA | List all IconPark icon categories with their icon counts |
| suggest_iconsB | Get icon suggestions for a scientific diagram context. Provide a description and get relevant icon names. |
| insert_iconA | Insert an IconPark icon onto the OmniGraffle canvas as an image. The icon is rendered as a PNG with optional color customization. |
| create_node_with_iconB | Create a labeled shape with an icon inside — perfect for scientific diagram nodes. The icon is placed above the text label within the shape. |
| list_palettesA | List available scientific color palettes (Nature, Science, Cell, Lancet, Minimal, Vibrant) |
| get_paletteB | Get a specific color palette with all color values ready to use |
| list_diagram_templatesB | List available scientific diagram templates with their node structures and suggested palettes/icons |
| get_diagram_templateA | Get full details of a diagram template including nodes, suggested icons, and palette |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 37 tools
Most tools have clearly distinct purposes, but some overlap exists (e.g., connect_shapes vs connect_shapes_batch, run_* tools) that could cause minor confusion. Descriptions help differentiate, but an agent might still select the wrong tool occasionally.
The majority of tools follow verb_noun pattern (create_shape, list_canvases), but a few deviate (auto_layout, ungroup) and run_applescript/run_jxa use different casing. Overall consistent and readable.
37 tools is on the higher side, covering many features of OmniGraffle and including auxiliary tools (icon search, palettes). While each serves a purpose, the set feels somewhat heavy and could be streamlined by removing rarely-used scripting tools.
The tool set covers core CRUD operations, layout, grouping, exporting, and includes batch operations and scripting. Minor gaps like missing import or full shape modification properties, but generally well-rounded for diagram creation and automation.