Skip to main content
Glama

Snapshot network graph

snapshot_td_graph
Read-only

Capture a serializable snapshot of a TouchDesigner network—nodes, connections, issues—for review, diffing, or documentation. Optional per-node parameters and a compact token-cheap mode.

Instructions

Read-only: capture a compact, serializable snapshot of a network — nodes, connections, structural issues, and optionally each node's parameters — for review, diffing, or documentation. Returns {nodeCount, connectionCount, issues[], nodes[], connections[]}. Set compact for a token-cheap whole-COMP read that hoists per-type default parameters and stores only each node's deltas. Feed two of these snapshots to diff_snapshots to see exactly what changed across an edit.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pathNoNetwork root to snapshot./project1
compactNoToken-cheap whole-COMP read: hoist each operator type's most-common parameter values into a shared `typeDefaults` map and store only each node's *deltas* from them (Embody-style read_tdn). Implies fetching parameters. Use for feeding a large network to an agent without paying for repeated identical values.
include_paramsNoAlso fetch each node's parameters (one request per node; capped for large graphs).
include_parameter_modesNoAlso preserve TouchDesigner parameter modes/expressions/binds where available. Compact mode implies this so reactive expressions are not flattened to their current value.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
pathYesThe network root that was snapshotted, echoing the request.
nodesYesEvery captured node, optionally with its parameters.
issuesYesPlain-language structural problems detected in the graph.
compactNoTrue when compact mode hoisted per-type default parameters and delta-encoded nodes.
nodeCountYesTotal number of nodes captured.
connectionsYesEvery wire as {source_path, target_path, …}, suitable for diffing.
typeDefaultsNoCompact mode only: each operator type's hoisted default parameter values; nodes store only their deltas from these.
connectionCountYesTotal number of connections captured.
params_truncatedYesTrue if params were requested (`include_params` or `compact`) but the graph exceeded the per-node fetch cap.
parameter_modes_truncatedNoTrue if parameter modes were requested (`include_parameter_modes` or `compact`) but the graph exceeded the per-node fetch cap.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed19 schema fields changedv0.5.0
    • addedInput schema / properties / compact
      Added value: +{
      +  "default": false,
      +  "description": "Token-cheap whole-COMP read: hoist each operator type's most-common parameter values into a shared `typeDefaults` map and store only each node's *deltas* from them (Embody-style read_tdn). Implies fetching parameters. Use for feeding a large network to an agent without paying for repeated identical values.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / include_parameter_modes
      Added value: +{
      +  "default": false,
      +  "description": "Also preserve TouchDesigner parameter modes/expressions/binds where available. Compact mode implies this so reactive expressions are not flattened to their current value.",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / compact
      Added value: +{
      +  "description": "True when compact mode hoisted per-type default parameters and delta-encoded nodes.",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / connectionCount / description
      Added value: +"Total number of connections captured."
    • addedOutput schema / properties / connections / description
      Added value: +"Every wire as {source_path, target_path, …}, suitable for diffing."
    • addedOutput schema / properties / issues / description
      Added value: +"Plain-language structural problems detected in the graph."
    • addedOutput schema / properties / nodeCount / description
      Added value: +"Total number of nodes captured."
    • addedOutput schema / properties / nodes / description
      Added value: +"Every captured node, optionally with its parameters."
    • addedOutput schema / properties / nodes / items / properties / name / description
      Added value: +"Short name of the node."
    • addedOutput schema / properties / nodes / items / properties / parameter_modes
      Added value: +{
      +  "additionalProperties": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "bind_expr": {
      +        "type": "string"
      +      },
      +      "bind_expression": {
      +        "type": "string"
      +      },
      +      "export_op": {
      +        "type": "string"
      +      },
      +      "export_source": {
      +        "type": "string"
      +      },
      +      "expr": {
      +        "type": "string"
      +      },
      +      "expression": {
      +        "type": "string"
      +      },
      +      "mode": {
      +        "type": "string"
      +      },
      +      "name": {
      +        "type": "string"
      +      },
      +      "value": {}
      +    },
      +    "required": [
      +      "name",
      +      "mode"
      +    ],
      +    "type": "object"
      +  },
      +  "description": "Parameter state keyed by par name. Present when `include_parameter_modes` is true, and in compact mode only for expression/bind/export-like non-constant state.",
      +  "propertyNames": {
      +    "type": "string"
      +  },
      +  "type": "object"
      +}
    • addedOutput schema / properties / nodes / items / properties / parameter_modes_unfetched
      Added value: +{
      +  "description": "True when parameter modes were requested but not fetched for this node.",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / nodes / items / properties / parameters / description
      Added value: +"The node's parameters as key→value; present when `include_params` or `compact` is set (compact implies fetching). In compact mode, only the deltas from the type default."
    • addedOutput schema / properties / nodes / items / properties / params_unfetched
      Added value: +{
      +  "description": "True when parameters were requested (`include_params` or `compact`) but not fetched for this node (past the per-node cap or a failed read), so a missing `parameters` field isn't mistaken for matching the type default.",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / nodes / items / properties / path / description
      Added value: +"Full path of the node."
    • addedOutput schema / properties / nodes / items / properties / type / description
      Added value: +"Operator type of the node."
    • addedOutput schema / properties / parameter_modes_truncated
      Added value: +{
      +  "description": "True if parameter modes were requested (`include_parameter_modes` or `compact`) but the graph exceeded the per-node fetch cap.",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / params_truncated / description
      Added value: +"True if params were requested (`include_params` or `compact`) but the graph exceeded the per-node fetch cap."
    • addedOutput schema / properties / path / description
      Added value: +"The network root that was snapshotted, echoing the request."
    • addedOutput schema / properties / typeDefaults
      Added value: +{
      +  "additionalProperties": {
      +    "additionalProperties": {},
      +    "propertyNames": {
      +      "type": "string"
      +    },
      +    "type": "object"
      +  },
      +  "description": "Compact mode only: each operator type's hoisted default parameter values; nodes store only their deltas from these.",
      +  "propertyNames": {
      +    "type": "string"
      +  },
      +  "type": "object"
      +}
  2. First observedv0.3.0

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Consistent with readOnlyHint=true, adds rich behavioral detail: return format, compact mode hoisting defaults, per-node parameter fetching capped, and token-cheap whole-COMP read. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four sentences front-load purpose and return type, then cover parameter options. No redundancy. Every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With output schema present and annotations covering safety, the description fully covers purpose, behavior for all parameter modes, and cross-tool usage (diff_snapshots). No gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but description adds context beyond field names: explains 'compact' as token-cheap with delta storage, 'include_params' as one request per node capped, and 'include_parameter_modes' preservation. Enhances schema meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it captures a compact, serializable network snapshot including nodes, connections, structural issues, and optionally parameters. It uses specific verbs ('capture', 'return') and distinguishes from sibling 'diff_snapshots' by name.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Describes explicit use cases: review, diffing, documentation, feeding to diff_snapshots. Explains compact mode benefits for whole-COMP reads. Lacks explicit when-not-to-use or alternatives among siblings, but context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Pantani/tdmcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server