substance-designer-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SUBSTANCE_DESIGNER_MCP_LOG_LEVEL | No | Log level | INFO |
| SUBSTANCE_DESIGNER_MCP_READ_TIMEOUT | No | Read timeout in seconds | 5 |
| SUBSTANCE_DESIGNER_MCP_SESSION_PATH | No | Path to session file | ~/.substance-designer-mcp/session.json |
| SUBSTANCE_DESIGNER_MCP_WRITE_TIMEOUT | No | Write timeout in seconds | 30 |
| SUBSTANCE_DESIGNER_MCP_CONNECT_TIMEOUT | No | Connection timeout in seconds | 5 |
| SUBSTANCE_DESIGNER_MCP_PLUGIN_LOG_PATH | No | Path to plugin log file | ~/.substance-designer-mcp/logs/plugin.log |
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": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| sd_pingA | Report MCP, bridge, plugin, Designer version, session, and compatibility status. |
| sd_get_application_infoA | Read Designer version, Python, platform, open packages, graph, and capabilities. |
| sd_get_capabilitiesA | Read the runtime-probed capability matrix and verification status. |
| sd_list_packagesA | List packages currently open in Designer as structured references. |
| sd_save_packageA | Save one already-saved open package in place; never performs Save As. |
| sd_get_active_graphA | Read the current editable graph, package, node count, and selection count. |
| sd_list_graph_nodesB | List a bounded page of nodes from a structured graph reference. |
| sd_get_selectionB | Read the current graph node selection with a bounded result size. |
| sd_get_nodeA | Read one node by a structured current-session node reference. |
| sd_list_node_propertiesB | List runtime input and output properties, types, values, and connection state. |
| sd_create_nodeB | Create one verified atomic node at an explicit position without auto-connecting it. |
| sd_create_instance_nodeA | Create one instance from a resource returned by sd_search_library. |
| sd_move_nodesB | Move one to one hundred explicitly identified nodes to finite coordinates. |
| sd_delete_nodesA | Delete explicit nodes from one graph only when confirm is true. |
| sd_connect_nodesC | Connect explicit runtime properties after direction, type, and duplicate checks. |
| sd_disconnect_nodesC | Disconnect one explicit existing property connection. |
| sd_set_node_parameterC | Set a supported simple parameter after reading and validating its runtime SD type. |
| sd_search_library | Search resources in currently loaded packages without UI scraping or guessed URLs. |
| sd_create_package | Create one unsaved Designer user package through the official package API. |
| sd_create_graph | Create one empty compositing graph in an explicit open package. |
| sd_list_node_definitions | Search a bounded page of atomic definitions available in one graph. |
| sd_get_graph_snapshotA | Read a bounded versioned graph snapshot including explicit connections. |
| sd_open_graphC | Open one explicit graph resource in Designer's editor. |
| sd_create_graph_outputC | Create an Output node with explicit official usage metadata. |
| sd_save_package_as | Save an open package to an absolute .sbs path after explicit confirmation. |
| sd_validate_graph_patchA | Dry-run a versioned additive graph patch without changing Designer. |
| sd_apply_graph_patch | Apply a preflighted additive graph patch with rollback on failure. |
| sd_import_bitmap | Import one existing local bitmap resource and optionally instantiate it. |
| sd_export_package_sbsarB | Export one saved package to .sbsar with explicit publication settings. |
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 22 tools
Each tool has a clearly distinct purpose: connect, disconnect, delete, create, move, list, get, set, export, etc. Even similar-sounding tools like sd_create_node and sd_create_instance_node differ in that one creates an atomic node and the other creates an instance from a library resource.
All tools follow a consistent 'sd_verb_noun' pattern using snake_case. Verbs like connect, create, delete, get, list, set are all lowercase and nouns are clearly descriptive.
22 tools is a well-scoped number for a Substance Designer interaction layer. It covers graph, node, package, and utility operations without being excessive or sparse.
The tool set covers the full lifecycle of graph and node manipulation: creation, reading, updating (parameters, connections), deletion, and export. Also includes utilities like ping and capability checks. No obvious gaps in typical workflows.