mcpField
T
TouchDesigner Atlas

TouchDesigner Atlas

本地服务
grigabyte.github.io媒体与设计04 周前更新

关于 TouchDesigner Atlas

TouchDesigner Atlas 是面向 TouchDesigner 工作流的 MCP 服务,供 Agent 使用。它结合了基于本机应用构建的算子与参数索引、实时项目桥接,以及对已保存项目的离线检查。

主要功能

  1. 01基于本机的算子与参数索引
  2. 02实时编辑项目并支持一步撤销
  3. 03运行时错误与健康检查
  4. 04离线检查 .toe 和 .tox 文件
  5. 05持久化桥接调用日志
  6. 06保存时生成可供 Git 比较的网络文本

适用场景

  1. 01查找准确的算子和参数名称
  2. 02构建并诊断运行中的 TouchDesigner 项目
  3. 03在 TouchDesigner 关闭时检查或比较已保存项目

MCP 相关

向 MCP 客户端提供 47 个工具,涵盖离线索引搜索、实时 TouchDesigner 操作和项目文件访问。客户端可用这些工具读取、修改、渲染和检查项目。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库
安装包
mcpbtd-atlas-0.3.0.mcpb0.3.0

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

English | Русский | 简体中文

td-atlas 标志覆盖在一片波形线条之上。

td-atlas

TouchDesigner 的原子化索引、连接到运行中实例的实时桥接,以及用于读取已保存项目的离线阅读器——通过 MCP 提供给 AI Agent。

安装 · 从 Agent 使用 · 工具 · 命令行 · 故障排查 · 更新日志

CI:在 macOS 和 Windows 上运行 pytest 和 ruff Python 3.11 或更高版本,与 TouchDesigner 位于同一台计算机上 平台:macOS;Windows 代码路径会在 CI 中运行,尚未验证 Windows 上的 TouchDesigner 许可:MIT

Agent 从空项目开始构建一个音频响应场景。 Agent 在已完成的项目中工作:读取项目、播放项目、倾斜摄像机并撤销操作。

左:Agent 从空项目开始构建一个音频响应场景。右:Agent 在已完成的项目中工作。

td-atlas 为 Agent 提供三样东西:来自这台机器的准确算子和参数名称;可以在运行中的实例中操作,并支持一步撤销;以及无需打开项目就能读取已保存项目的方式。

功能

  • **原子索引**是名称列表。分两轮从你自己的应用副本中读取所有算子和参数,写入一个 SQLite 文件。其中的值就是该副本报告的值。
  • **桥接**让 Agent 能在 TouchDesigner 运行时修改你的项目。脚本会在其中用四个普通节点构建桥接:Web Server DAT、callbacks DAT、状态面板,以及一个在你保存时触发的 Execute DAT。你可以读取它、在 git 中查看其变更,并原位升级。
  • TouchDesigner 不会报告的内容。errors涵盖 TouchDesigner 自身称为错误的情况,而td_health则涵盖它没有明确报告的问题。
  • **调用日志**会把每次桥接调用写成一行,记录到磁盘上的文件中,并且日志会在会话结束后保留。
  • **离线读取项目**可在关闭 TouchDesigner 的情况下检查、搜索和比较项目,并且不会改动原始文件。
  • **保存时写入的网络文本**是桥接在每次保存时可放在.toe旁边的文本,让项目在 git 中拥有可比较差异的历史记录。

安装

开始前需要准备好三样东西。

  • TouchDesigner,且已安装。索引根据你自己的应用副本构建,并保存该副本报告的值。无需下载任何内容。
  • Python 3.11 或更高版本,与 TouchDesigner 安装在同一台计算机上。
  • 支持 MCP 的 AI Agent。Agent 会调用这些工具。td-atlas 是针对 Claude Code 构建并进行测试的,其命令就是下文的 claude mcp add 行。任何 MCP 客户端都能访问相同的工具。

兼容性列出了支持的平台,以及连接器可以对项目做出的更改。

在 macOS 上,只需在终端中运行一行命令。安装程序是 POSIX shell 脚本,因此 Windows 用户请按下方步骤逐步操作。

curl -fsSL https://grigabyte.github.io/td-atlas/i | sh

如果该地址无法响应,也可以从代码库获取同一脚本:

curl -fsSL https://raw.githubusercontent.com/grigabyte/td-atlas/main/install.sh | sh

install.sh 会查找 Python、克隆代码库、在旁边创建虚拟环境、安装软件包、构建索引并暂存桥接。每条命令都会在运行前打印出来。

安装程序会询问两个问题:克隆到哪里,以及是否立即构建索引。第一个问题的默认答案是 ~/td-atlas。如果没有终端可供询问,两个问题都会采用默认值。

磁盘上最终会有两个目录:代码库检出目录(除非指定其他目录,否则为 ~/td-atlas),以及 ~/.td-atlas。除此之外,uv 或 pip 还会像安装任何软件包一样填充自己的软件包缓存。无需 sudo。不会触碰系统目录和 shell 启动文件。在已有检出目录上再次运行安装程序会更新该目录。

手动安装或在 Windows 上安装:按步骤执行相同流程

下面的代码块使用 uv,这是一个快速的 Python 软件包安装程序。每行旁边的注释中都提供了另一种写法,可在已有的 python3 上运行。

git clone https://github.com/grigabyte/td-atlas
cd td-atlas
uv venv                     # or: python3 -m venv .venv
uv pip install -e .         # or: .venv/bin/pip install -e .

PyPI 上没有这个软件包。pip install td-atlas 和 uvx td-atlas 都找不到它。然后,在代码库检出目录中运行:

.venv/bin/td-atlas build      # offline index, 13–16 s, no TouchDesigner process
.venv/bin/td-atlas install    # stage the bridge, print the bootstrap and MCP lines

从这里开始,命令都简写为 td-atlas。除非已激活虚拟环境,否则请通过路径调用。在代码库检出目录中,该路径是 .venv/bin/td-atlas。在其他位置则需要使用完整路径;默认目录对应的路径为 ~/td-atlas/.venv/bin/td-atlas。在 Windows 上则为 .venv\Scripts\td-atlas。系统 Python 无法看到这个软件包。

td-atlas install 会打印两项内容供你粘贴。通过 curl 运行的命令已经替你执行了安装,因此这两项内容已位于命令输出末尾;再次运行时会重新打印。首先,将以下内容粘贴到 TouchDesigner 的 textport(Dialogs → Textport and DATs)中,每个项目执行一次:

exec(open('/Users/you/.td-atlas/bootstrap.py').read())

textport 会以 [td-atlas] 行作出响应。最后一行会列出你的 TouchDesigner 版本和桥接所连接的项目。

[td-atlas] registered as /Users/you/.td-atlas/instances/9977.json
[td-atlas] bridge ready at /tdatlas on port 9977 (auth: token)
[td-atlas] TouchDesigner 2025.32460, project 'NewProject.1.toe'

其次,是一条供 MCP 客户端使用的 claude mcp add 命令。请参阅作为 MCP 服务。如需将同一条目写入 DIR/.mcp.json,或合并到已有文件中,请传入 --write-mcp-json DIR。

textport 响应后,完成索引构建。

td-atlas probe

这一步会添加只有运行中的实例才知道的信息。

最后,检查安装情况。如果你是从中途开始操作,请从这里开始。

td-atlas doctor

安装完成后,每条链接都会显示 ok,并输出一行收尾信息。

environment   : ok — running from /Users/you/td-atlas/.venv …
touchdesigner : ok — build 2025.32460 at /Applications/TouchDesigner.app …
index         : ok — 667 ops, 24251 params, 2060 articles …
index build   : ok — index and installation agree: 2025.32460
probe         : ok — runtime pass complete: 647 ops probed …
bridge        : ok — connected on port 9977 to 'NewProject.1.toe' …
mcp server    : ok — 'claude mcp add …' launches …

every link checked out.

统计数据取自你自己的 TouchDesigner 副本,因此你的结果会有所不同。每条未显示 ok 的链接都会附带修复方法;如果有链接故障,命令会以非零状态码退出。索引构建前会显示 index : FAIL … fix: td-atlas build,桥接暂存前会显示 bridge : warn … fix: td-atlas install。

作为 MCP 服务

运行 td-atlas install,并粘贴它打印出的 claude mcp add … 命令行。该命令行使用绝对路径指定解释器,因此无论当前工作目录是什么,以及是否激活了虚拟环境,都能正常工作。手动接入的配置如下:

claude mcp add td-atlas -- /path/to/python -m td_atlas.cli mcp

接下来,只需用日常语言说明你想做什么。以下是 Agent 会调用的工具:

你对 Agent 说的话它调用的工具
“哪个算子可以用噪声置换图像?在开始构建前,先告诉我确切的参数名称。”td_search_operators,然后是 td_operator_schema
“在我当前打开的项目中,构建一个噪声接模糊再接输出 TOP 的网络,并检查有没有组件悄悄失效。”td_build——作为一个撤销步骤——然后是 td_health
“看起来什么都没发生。”td_health,然后对它指出的对象调用 td_flags
“让我看看现在的效果,以及一秒内的运动。”td_render,并生成运动的联系表
“myproject.toe 的 /project1 里有什么?TouchDesigner 已关闭。”td_project_read——文件会复制到缓存中并在那里读取
“从我们开始以来,你改了什么?”更改前后分别调用 td_snapshot,然后对这两个快照调用 td_project_diff——组件位于 ~/.td-atlas 中,绝不会修改你自己的文件
“撤销刚才的操作。”td_undo——整个 td_build 批次只算一步

共有 47 个工具,分为三组。9 个索引工具可离线使用,29 个实时工具可操作正在运行的实例,9 个项目文件工具可从磁盘读取和写入 .toe/.tox。每个工具的参数及用途都列在 plugin/skills/touchdesigner/references/tools.md 中,并且有测试确保该列表与代码一致。

td_build 和 td_set_params 会在发送前根据索引检查参数名称,因此常见错误会得到相应的更正:

- t: is a parameter group, not a settable parameter (try: tx, ty, tz)
- typ: no such parameter (try: type, ty)
- type: 'simplex5d' is not a valid menu entry
        (try: simplex4d, simplex3d, simplex2d, sparse, perlin4d)
- period: -3 is below the clamped minimum 0.0

文档

文档适用对象
plugin/skills/touchdesigner/SKILL.md使用该连接器的 Agent
plugin/skills/touchdesigner/references/gotchas.md所有不会产生错误的陷阱
plugin/skills/touchdesigner/references/tools.md全部 47 个 MCP 工具
AGENTS.md为此仓库做贡献的 Agent
CONTRIBUTING.md如何在提交拉取请求前运行测试和代码检查工具
CHANGELOG.md各版本的变更,以及所有协议变更,绝无遗漏
docs/architecture.md三个层如何协同工作,以及这样设计的原因
docs/cli.md每个 td-atlas 子命令和标志,以及各自的要求
docs/formats.md逆向工程得出的 .toe/.tox 格式及其依据
docs/atom-index.md构建索引的两轮流程,以及每种来源会提供什么
docs/bridge.md在 TouchDesigner 内部运行的组件,以及它在 exec 之外提供的功能
docs/health.mdTouchDesigner 不会报告的内容,以及 td_health 会输出什么
docs/journal.md调用日志:记录什么、由谁记录,以及哪些内容不会记录
docs/offline-projects.md在关闭 TouchDesigner 的情况下读取、搜索和比较 .toe
docs/network-text.md写入 .toe 旁边的可比较文本,以及已知的七处差异
docs/compatibility.md构建版本、Python、操作系统,以及这可能对项目造成的影响
docs/skill.mdAgent 技能,以及如何将其安装为插件
docs/bundle.md构建 .mcpb,以及发布它意味着什么
docs/troubleshooting.md所有症状、症状含义以及应运行的命令
docs/development.md测试套件及其维护的不变条件
docs/layout.md仓库中的每个目录及其内容

许可证

MIT,完整文本见 LICENSE。TouchDesigner 是 Derivative Inc. 的产品。 本项目与该公司无关,也不会再分发安装程序中的任何内容。 它只会读取你机器上已有的内容。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。