Remote Model Context Protocol server for VizScript — the scripting language powering Viz Engine broadcast graphics.
{
"mcpServers": {
"vizscript": {
"url": "https://vizscript.mcp.felipeiasi.dev/"
}
}
}
claude mcp add \ --transport http \ vizscript \ https://vizscript.mcp.felipeiasi.dev/
# In any OpenAI MCP client config { "type": "url", "server_label": "vizscript", "server_url": "https://vizscript.mcp.felipeiasi.dev/" }
# In Open WebUI: Settings > Tools # Add MCP Server URL: https://vizscript.mcp.felipeiasi.dev/ # Or via mcphost CLI: mcphost --transport http \ https://vizscript.mcp.felipeiasi.dev/
FindSubContainer on any Container. It searches breadth-first. You can chain names with $:
Dim c As Containerc = Scene.FindContainer("MyGroup$Label")c.Active = True
ShowOneChildContainer(index) to show a single child and hide the rest.
ContainsMouseCursor() to check if the mouse is over your container. Note: picking callbacks can impact render performance.
OnInitParameters and handle changes in OnParameterChanged:
Sub OnInitParameters()RegisterParameterInt("speed", "Speed", 5, 1, 100)RegisterParameterColor("col", "Color", CColor(1,0,0))End Sub
Sub OnParameterChanged(parameterName As String)If parameterName = "speed" ThenDim val As Integer = GetParameterInt("speed")End IfEnd Sub
Int, Double, String, Bool, Color, Container, and more.
.Map property:
Scene.Map["player_score"] = 42 — set from Script 1
Dim s As Integer = (Integer)Scene.Map["player_score"] — read from Script 2
Scene.Map.RegisterChangedCallback("player_score") then implement OnSharedMemoryVariableChanged(map, mapKey).
Dim dir As Directordir = Stage.FindDirector("Default")dir.StartAnimation()
StopAnimation(), ContinueAnimation(), PauseAnimation(), SetAnimationToEnd(), Reverse(). Check dir.IsAnimationRunning to see if it’s playing.
System.SendCommand with the INVOKE or SET action. Works for both scene-level and container-level plugins:
System.SendCommand("RENDERER*FUNCTION*DataReader*initialize INVOKE")
System.SendCommand("RENDERER*TREE*$all$base*FUNCTION*Autofollow*distance SET 100.0")
THIS_SCENE instead of RENDERER.
System.SendCommand from VizScript or send via TCP port 6100:
RENDERER*TREE*$all$title*GEOM*TEXT SET Breaking NewsRENDERER*TREE*$all$overlay*ACTIVE SET 1RENDERER*TREE*$all$bg*MATERIAL*DIFFUSE SET 0.8 0.2 0.1RENDERER*TREE*$all$logo*TEXTURE*IMAGE SET IMAGE*News/logo
$ separator: $all$base$kerne, or branch numbers: 1/3/3, or control channels: @MyControl.
VizScript MCP gives any AI assistant instant access to the complete VizScript documentation — the scripting language used in Viz Engine for broadcast graphics and real-time 3D.
It implements the Model Context Protocol (MCP) over Streamable HTTP, so it works with Claude, ChatGPT, Ollama, and any MCP-compatible client. The server runs on the edge with sub-50ms response times worldwide.
Instead of searching through docs manually, your AI can look up types, search properties, find methods, and get code examples in real time.
This is a community project by Felipe Iasi and is not officially affiliated with or endorsed by Vizrt. VizScript and Viz Engine are trademarks of Vizrt. The documentation data was parsed from publicly available reference files.