MCP Tools Reference

vpick provides 34 MCP tools that allow AI Agents (like Claude) to directly control the canvas, create nodes, generate images/videos/audio/music, and manage projects.

Canvas Browsing

Tool Description
get_canvas Get the entire canvas data (nodes and edges)
get_canvas_info Get canvas summary (node count, edge count, type distribution)
list_nodes List all nodes with position, size, status, and generated results
get_node Get complete data for a single node

Example: View Canvas

{ "method": "tools/call", "params": { "name": "get_canvas_info" } }

Returns:

{
  "nodeCount": 5,
  "edgeCount": 3,
  "nodeTypes": { "text": 1, "imageGenerator": 2, "videoGenerator": 1, "upload": 1 }
}

Node Operations

Tool Description
add_node Create a new node (supports all types)
update_node Update node content, parameters, or position
remove_nodes Delete one or more nodes
duplicate_nodes Duplicate nodes

Supported Node Types

type value Node Type
text Text
assistant AI Assistant
imageGenerator Image Generator
videoGenerator Video Generator
audioGenerator Audio Generator (Voice Over)
musicGenerator Music Generator
lipsyncGenerator Lipsync
vocalSeparator Vocal Separator
voiceChanger Voice Changer
audioCombine Audio Combine
combine Video Combine
upload Upload
list List
output Output
group Group

Example: Create a Video Generator Node

{
  "method": "tools/call",
  "params": {
    "name": "add_node",
    "arguments": {
      "type": "videoGenerator",
      "name": "Product Ad Video",
      "x": 600,
      "y": 200
    }
  }
}

Example: Set Node Parameters

{
  "method": "tools/call",
  "params": {
    "name": "update_node",
    "arguments": {
      "node_id": "node-abc123",
      "data": {
        "prompt": "A golden retriever running on the beach at sunset",
        "model": "kling-3.0/video",
        "duration": 5,
        "mode": "std"
      }
    }
  }
}

Connection Operations

Tool Description
connect_nodes Connect two nodes (specify handles)
disconnect_nodes Disconnect a connection

Common Handles

Source Handle Target Handle Description
text-out text-in Text connection
image-out image-in Image connection
image-out start-image-in Video start frame
image-out end-image-in Video end frame
video-out videos-in Video combine
audio-out audio-in Audio connection
list-out list-in List batch

Example: Connect Text to Video Generator

{
  "method": "tools/call",
  "params": {
    "name": "connect_nodes",
    "arguments": {
      "source_node_id": "node-text1",
      "source_handle": "text-out",
      "target_node_id": "node-video1",
      "target_handle": "text-in"
    }
  }
}

Generation

Tool Description
run_assistant Run AI Assistant (text generation)
run_image_generator Run image generation
run_video_generator Run video generation
run_audio_generator Run voice generation (TTS)
run_music_generator Run music generation
run_lipsync_generator Run lipsync
run_vocal_separator Run vocal separation
run_voice_changer Run voice changer
run_audio_combine Run audio mixing
run_combine Combine videos

Example: Generate a Video

{
  "method": "tools/call",
  "params": {
    "name": "run_video_generator",
    "arguments": { "node_id": "node-video1" }
  }
}

Note: Generation tools automatically check credits. If credits are insufficient and auto-recharge is enabled, it will charge automatically.

Workflows

Tool Description
create_workflow Create a workflow (define execution order)
run_workflow Run a created workflow

Workflows define multiple steps to execute in sequence. Perfect for "AI generates copy -> generate images -> generate videos -> combine" pipelines.

Project Management

Tool Description
list_projects List all projects
create_project Create a new project
switch_project Switch to a specific project

Layout & Groups

Tool Description
move_nodes Batch move node positions
auto_layout Auto-arrange nodes (grid / row / column)
create_group Create a visual group
update_group Update group (add/remove members, resize)
ungroup Dissolve a group

History & Upload

Tool Description
list_generated_files Query generation history
get_generation_stats View usage statistics by model
upload_image Download an image from URL and upload to canvas
list_models List all available models and their specs

@ Reference Syntax

Use @node_name in prompts to reference a connected node's output:

Generate a product photo based on @Product Description

Supported reference sources:

Important Notes

  1. Avoid parallel modifications: MCP calls for the same project should be executed sequentially to avoid race conditions
  2. Node naming: Use the name parameter when calling add_node for easy @ referencing
  3. Auto-positioning: Omit the y parameter and nodes will automatically be placed below existing nodes
  4. Duplicate prevention: Each generation tool uses claimNodeForProcessing() to prevent duplicate triggers