Skip to main content
Detailed reference for all 10 tools exposed by the RunComfy MCP server. Each tool maps directly to a Serverless API (ComfyUI) endpoint.

Deployment management

list_deployments

List all Serverless API deployments in your account. Backs: GET /prod/v2/deployments Example arguments:
Example response (structuredContent):

get_deployment

Get one deployment by ID, optionally including its full workflow graph. Backs: GET /prod/v2/deployments/{deployment_id}
Tip: Call with include_payload=true to see every node’s ID and input names. Use those to build the overrides object for submit_request.
Example arguments:

create_deployment

Create a new Serverless API (ComfyUI) deployment from a cloud-saved workflow. Backs: POST /prod/v2/deployments Hardware SKUs:
Example arguments:
For LoRA deployments, create via the RunComfy UI (Trainer > LoRA Assets > Deploy), then use list_deployments to get the deployment_id.

update_deployment

Partially update a deployment. Only pass the fields you want to change. Backs: PATCH /prod/v2/deployments/{deployment_id} Example — pause a deployment:

delete_deployment

Permanently delete a deployment. This cannot be undone. Backs: DELETE /prod/v2/deployments/{deployment_id}
Consider update_deployment with is_enabled=false to pause instead of deleting.

Inference

submit_request

Submit an async inference request to a deployment. Backs: POST /prod/v2/deployments/{deployment_id}/inference Example — text-to-image with overrides:
File inputs — pass a public URL or Base64 data URI directly in the overrides value:
Or using Base64:
Use get_deployment with include_payload=true to discover the node IDs and input names for your workflow.

get_request_status

Poll a request’s current status. Backs: GET /prod/v2/deployments/{deployment_id}/requests/{request_id}/status Status lifecycle: in_queue > in_progress > completed (or cancelled). Example response:

get_request_result

Fetch the final outputs of a completed request. Backs: GET /prod/v2/deployments/{deployment_id}/requests/{request_id}/result Output URLs are hosted for 7 days after success. Download or copy them to your own storage for longer retention. Example response:

cancel_request

Cancel a queued or running request. Backs: POST /prod/v2/deployments/{deployment_id}/requests/{request_id}/cancel Returns cancelled if accepted, or not_cancellable if the request has already completed. Example response:

Advanced

call_instance_proxy

Call a ComfyUI backend endpoint on a live instance. Backs: POST /prod/v2/deployments/{deployment_id}/instances/{instance_id}/proxy/{comfy_backend_path} Example — unload models to free GPU memory:
Instance IDs are ephemeral — they are only valid while the instance is running. If the instance shuts down, submit a new request to get a fresh instance.