Skip to main content
Glama

works_download

Downloads a complete Douyin AR effect project and extracts it to a chosen empty folder or temp directory, returning the project path and file list for learning how the effect is built.

Instructions

下载一个首页作品的完整工程并解压(与在首页点开作品同一流程,但不打开窗口),返回工程目录和文件清单(files 列出相对路径和大小,可直接读取 effect.dyehpj、Assets 下的场景、Graph 下的脚本等来学习做法)。dest 给定时把工程放到该目录(须不存在或为空,跳过 Library 缓存),像塑临时目录里的那份随即删除。下载的工程(含 dest)都会登记,expires_at(24 小时)后在下次下载时自动删除;学完请立即调用 works_cleanup。要在编辑器里看效果用 works_open。作品版权归原作者,只用于学习参考,不要复制进自己的工程或仓库。

Input Schema

NameRequiredDescriptionDefault
destNo工程要放到的文件夹绝对路径(须不存在或为空);省略时留在像塑的临时目录。
instance_idNo官方 list_instances 返回的 instance_id,与 project_path 二选一。
template_idYesworks_list / works_search / works_by_effect 返回的 template_id。
project_pathNo目标工程的绝对路径。与 instance_id 二选一;只开了一个工程窗口时都可省略。

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.8/5.0
Behavior5/5

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

With no annotations, the description carries the full burden, and it does: dest must not exist or be empty, Library cache is skipped, the temp copy is deleted afterwards, downloads are registered and auto-deleted after a 24-hour expires_at on the next download. It also discloses the return payload, a directory plus a files list of relative paths and sizes. That is unusually complete behavior disclosure for a mutating file-producing tool.

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?

It is one dense paragraph, front-loaded with the action and return value, then destination semantics, lifecycle, alternatives, and licensing. Every clause earns its place, though the parenthetical explaining what to read inside the project is slightly verbose.

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?

For a four-parameter tool with no output schema, no annotations, and a file-system side effect, the description covers return shape, cleanup lifecycle, destination preconditions, sibling routing, and licensing constraints. Nothing an agent needs in order to call it correctly is missing.

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 coverage is 100%, so the baseline is 3, but the description adds meaning the schema does not: the preconditions on dest (must not exist or be empty, Library cache skipped) and the consequence of omitting it (the project stays in the temp directory). That is real added value rather than repetition.

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 opens with a specific verb and resource: download a complete project for a homepage work and unzip it. It immediately names the sibling it is not (works_open) for viewing in the editor, so an agent can distinguish the two without opening either schema.

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

Usage Guidelines5/5

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

It gives explicit routing: use works_open if you want to see the effect in the editor, and call works_cleanup immediately after you finish learning. It also states the acquisition path (template_id from works_list / works_search / works_by_effect) and the licensing restriction against copying into your own project.

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