Skip to main content
Glama

Collect project assets

collect_project_assets
Destructive

Scan a TouchDesigner COMP subtree for external file dependencies, report each reference with node/parameter, and verify file existence to surface missing assets.

Instructions

Scan a COMP subtree for every external file dependency (movie/image file pars, fonts, LUTs, externaltox links) and report each referenced file, the node+parameter that references it, and whether the file currently exists on disk. The TouchDesigner scan is read-only and copies/rewrites nothing in the network; when out_manifest is set, this tool writes that local JSON path and may overwrite an existing manifest. File-par detection uses par.style ('File'/'Folder') when readable, falling back to a suffix/exact name heuristic (file, fontfile, lut, externaltox, moviefile, imagefile) — both UNVERIFIED across TD builds; style_supported records whether par.style was available.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
parent_pathNoRoot of the COMP subtree to scan recursively for external file dependencies./project1
out_manifestNoOptional filesystem path to write the JSON asset manifest to. Empty string means do not write a file — just return the inventory.
include_missing_onlyNoWhen true, only report assets whose referenced file does not exist on disk.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
countYesNumber of assets reported (after filtering).
assetsYesEvery external file dependency found in the subtree (after include_missing_only).
parentYesEchoed root path that was scanned.
warningsYesPer-op / per-par problems encountered while scanning (fail-forward).
manifest_pathNoPath the JSON manifest was written to, when out_manifest was set.
missing_countYesHow many reported assets are missing from disk.
style_supportedNoWhether par.style was readable in this TD build (UNVERIFIED attr). When false, only the name heuristic was used.
Behavior5/5

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

Goes well beyond annotations by clarifying that the scan is read-only but writing out_manifest may overwrite an existing file, which explains the readOnlyHint=false and destructiveHint=true annotations. Also discloses that file-par detection heuristics are UNVERIFIED across TD builds and that style_supported records reliability. No contradiction with annotations.

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

Conciseness4/5

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

The first sentence front-loads the core purpose, and the rest provides necessary safety and reliability caveats. Longer than average but every sentence carries information essential for correct invocation and expectation-setting. Could be tightened slightly but not wasteful.

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?

Given the tool's moderate complexity and the existence of an output schema, the description covers purpose, safety, parameter behavior, and reliability of heuristics. It fully explains what will be reported and the side effects, making it complete for an agent to select and invoke correctly.

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

Parameters4/5

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

Schema already covers all three parameters with descriptions (100% coverage), baseline is 3. Description adds meaningful context by warning that out_manifest may overwrite and by explaining the heuristic fallback behavior related to par.style, which enriches understanding of parent_path and output behavior.

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?

Clearly states a specific action: scan a COMP subtree for external file dependencies and report each referenced file, the referencing node+parameter, and file existence. Distinguishes from siblings like make_portable_tox or bundle_dependencies by emphasizing it only reports and does not copy/rewrite the network.

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

Usage Guidelines3/5

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

Implies usage by describing the read-only scan and optional manifest write, and hints at a contrast with tools that copy dependencies, but does not explicitly state when to use this tool over alternatives or provide exclusions. The guidance is context, not direct instruction.

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/lucasmaher-hash/touch-designer-mcp'

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