MCP Servers

A collection of Model Context Protocol servers, templates, tools and more.

A repo to list the BrushCue MCP

Created 5/12/2026
Updated about 5 hours ago
Repository documentation and setup instructions

BrushCue MCP Server

BrushCue MCP is the Model Context Protocol server for BrushCue, a node-based, GPU-accelerated image editing system. It lets MCP clients work with BrushCue projects, assets, graph nodes, renders, and publishing workflows through the same core editing model used by brushcue.com.

Public endpoint:

https://api.brushcue.com/mcp

The server uses OAuth for public MCP clients. Compatible clients should discover the authorization flow and prompt users to sign in with their BrushCue account.

Capabilities

  • Browse organizations and projects available to the authenticated BrushCue user.
  • Create and rename BrushCue projects.
  • Create editing sessions from project revisions.
  • Inspect the current project graph, including nodes and connections.
  • Add, connect, rename, configure, delete, and collapse graph nodes.
  • Create primitive constants for graph inputs, including numbers, strings, vectors, RGB, and RGBA colors.
  • Create new nodes from BrushCue node definitions loaded through brushcue_context.
  • Set expression inputs and slider inputs on graph node slots.
  • Upload, list, and retrieve image, video, and font assets.
  • Execute graph nodes locally for primitive outputs.
  • Render composition outputs asynchronously through BrushCue cloud rendering.
  • Poll render status and retrieve completed render download URLs.
  • Show inline preview and upload widgets in MCP clients that support MCP app resources.
  • Publish an editing session as the latest BrushCue project revision.
  • Inspect generated WGSL shader source for custom shader nodes.

MCP Tools

Context

| Tool | Capability | | --- | --- | | brushcue_context | Loads the BrushCue editing context, including node types, operations, options, and expression syntax. |

Organizations and Projects

| Tool | Capability | | --- | --- | | list_organizations | Lists organizations the authenticated user belongs to. | | list_projects | Lists projects across the user's organizations. | | create_project | Creates a new project in an organization. | | rename_project | Renames an existing project. | | create_session | Creates an editing session for a project revision. | | publish_session | Saves the current session as a new project revision and makes it the latest revision. |

Assets

| Tool | Capability | | --- | --- | | list_assets | Lists ready assets, optionally filtered by image, video, or font. | | get_asset | Gets asset metadata and a presigned download URL. | | create_asset | Creates an asset record and returns a presigned upload URL. | | finish_upload_asset | Marks an uploaded asset as ready. | | render_upload_widget | Opens an upload widget for clients that support MCP app UI resources. |

Project State and Rendering

| Tool | Capability | | --- | --- | | get_project_state | Returns the current graph state for a session, including nodes and connections. | | run_node | Executes a node. Primitive outputs return immediately; composition outputs create an async cloud render. | | get_run | Polls an async render and returns status plus a download URL when complete. | | render_run_preview | Displays a completed render in an inline preview widget for supported clients. |

Graph Editing

| Tool | Capability | | --- | --- | | make_connection | Connects one node's output to another node's input slot. | | make_node_with_definition | Creates a node by BrushCue node definition name. | | make_int_constant | Creates an integer constant node. | | make_float_constant | Creates a float constant node. | | make_string_constant | Creates a string constant node. | | make_vector2i_constant | Creates a two-component integer vector constant node. | | make_vector2f_constant | Creates a two-component float vector constant node. | | make_rgb_constant | Creates an RGB color constant node. | | make_rgba_constant | Creates an RGBA color constant node. | | set_expression | Sets an expression input on a node slot. | | set_slider | Sets a slider input on a node slot. | | set_name | Sets a node display name. | | delete_or_collapse | Deletes a node, or collapses a composition node into its dependency when possible. | | view_custom_shader_source | Shows generated WGSL source for custom shader nodes. |

Typical Workflow

  1. Call list_projects or create_project.
  2. Call create_session for the project.
  3. Call brushcue_context to load available node definitions and expression syntax.
  4. Call get_project_state to inspect the current graph.
  5. Use graph editing tools to add, connect, and configure nodes.
  6. Call run_node and poll get_run for render output.
  7. Call render_run_preview when an inline preview is useful.
  8. Call publish_session to save the session back to BrushCue.

Related Links

Quick Setup
Installation guide for this server

Installation Command (package not published)

git clone https://github.com/ditotechnologies/brushcue-mcp
Manual Installation: Please check the README for detailed setup instructions and any additional dependencies required.

Cursor configuration (mcp.json)

{ "mcpServers": { "ditotechnologies-brushcue-mcp": { "command": "git", "args": [ "clone", "https://github.com/ditotechnologies/brushcue-mcp" ] } } }