Skip to content

Commit 7a3f074

Browse files
dylanroscoverclaude
andcommitted
Docs: sync tool counts, test counts, and batch_operations coverage with v5.0.336
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 22c895b commit 7a3f074

3 files changed

Lines changed: 31 additions & 6 deletions

File tree

‎docs/envoy/index.md‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ Envoy works with any MCP client, including:
1313

1414
## Capabilities
1515

16-
Envoy exposes **40+ MCP tools** organized into categories:
16+
Envoy exposes **46 MCP tools** organized into categories:
1717

1818
| Category | Examples |
1919
|----------|---------|
@@ -27,6 +27,7 @@ Envoy exposes **40+ MCP tools** organized into categories:
2727
| **Embody Integration** | Tag, save, query externalizations |
2828
| **TDN Export/Import** | Export/import network snapshots as JSON |
2929
| **Code Execution** | Run arbitrary Python in TouchDesigner |
30+
| **Batch Operations** | Combine multiple tool calls into a single request |
3031

3132
For the complete tool reference, see [Tools Reference](tools-reference.md).
3233

@@ -43,7 +44,7 @@ You can regenerate these files at any time with `op.Embody.InitEnvoy()` (MCP + A
4344
## Key Features
4445

4546
- **Zero setup** — Embody auto-installs all dependencies (`mcp`, `uvicorn`, etc.) when Envoy is first enabled
46-
- **Auto-restarts** on port change
47+
- **Auto-restarts** on port change or crash (exponential backoff, up to 3 attempts)
4748
- **Localhost-only** binding (127.0.0.1) for security
4849
- **Piggybacked logs** — every MCP response includes recent log entries
4950
- **30-second timeout** per operation to prevent hangs

‎docs/envoy/tools-reference.md‎

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Tools Reference
22

3-
Envoy exposes 40+ MCP tools for interacting with TouchDesigner. All tools use the standard MCP protocol and can be called by any compatible client.
3+
Envoy exposes 46 MCP tools for interacting with TouchDesigner. All tools use the standard MCP protocol and can be called by any compatible client.
44

55
## Operator Management
66

@@ -42,6 +42,7 @@ Envoy exposes 40+ MCP tools for interacting with TouchDesigner. All tools use th
4242
| Tool | Parameters | Description |
4343
|------|-----------|-------------|
4444
| `get_op_position` | `op_path` | Get operator position, size, color, and comment |
45+
| `get_network_layout` | `comp_path`, `include_annotations?` | Get positions of ALL operators (and annotations) in a COMP in one call. Returns bounding_box. Use instead of repeated `get_op_position` calls |
4546
| `set_op_position` | `op_path`, `x?`, `y?`, `width?`, `height?`, `color?`, `comment?` | Set operator position, size, color (`[r,g,b]` floats 0-1), or comment |
4647
| `layout_children` | `op_path` | Auto-layout all children in a COMP |
4748

@@ -133,6 +134,29 @@ These tools run locally on the STDIO bridge script, not inside TouchDesigner. Th
133134
!!! info "Bridge architecture"
134135
Claude Code connects to Envoy via a STDIO bridge script (`.claude/envoy-bridge.py`). The bridge translates between Claude Code's STDIO transport and Envoy's HTTP endpoint. It handles MCP protocol handshake locally when TD is down, so these meta-tools are always available. See [Architecture](architecture.md) for details.
135136

137+
## Batch Operations
138+
139+
| Tool | Parameters | Description |
140+
|------|-----------|-------------|
141+
| `batch_operations` | `operations` | Execute multiple operations in a single request. Reduces latency and token overhead |
142+
143+
`operations` is a list of `{"tool": str, "params": dict}` objects. Each entry maps to an existing tool name and its parameters. Stops on first error.
144+
145+
**When to use**: 3+ calls to the same tool type (positioning, connecting, parameter setting, flags). Use `execute_python` instead when you need conditionals, loops, or computed values between operations.
146+
147+
**Example** — position 4 operators + connect them in one call:
148+
```json
149+
{"operations": [
150+
{"tool": "set_op_position", "params": {"op_path": "/project1/noise1", "x": 400, "y": 0}},
151+
{"tool": "set_op_position", "params": {"op_path": "/project1/comp1", "x": 800, "y": 0}},
152+
{"tool": "set_op_position", "params": {"op_path": "/project1/level1", "x": 1200, "y": 0}},
153+
{"tool": "set_op_position", "params": {"op_path": "/project1/null1", "x": 1600, "y": 0}},
154+
{"tool": "connect_ops", "params": {"source_path": "/project1/noise1", "dest_path": "/project1/comp1"}},
155+
{"tool": "connect_ops", "params": {"source_path": "/project1/comp1", "dest_path": "/project1/level1"}},
156+
{"tool": "connect_ops", "params": {"source_path": "/project1/level1", "dest_path": "/project1/null1"}}
157+
]}
158+
```
159+
136160
## MCP Prompts
137161

138162
| Prompt | Parameters | Description |

‎docs/index.md‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ Embody is three tools working together — *forward velocity*, *lateral velocity
1717

1818
---
1919

20-
An embedded [MCP](https://modelcontextprotocol.io/) server with **45 tools** that lets Claude Code, Cursor, and Windsurf talk directly to your live TouchDesigner session. Say what you want — operators, connections, parameters, extensions, fixes — and watch it happen. Idea → network in seconds.
20+
An embedded [MCP](https://modelcontextprotocol.io/) server with **46 tools** that lets Claude Code, Cursor, and Windsurf talk directly to your live TouchDesigner session. Say what you want — operators, connections, parameters, extensions, fixes — and watch it happen. Idea → network in seconds.
2121

2222
[:octicons-arrow-right-24: Setup Envoy](envoy/setup.md)
2323

@@ -68,11 +68,11 @@ You describe what you want. The AI works with your live network — operators, c
6868
| | Feature | Description |
6969
|---|---------|-------------|
7070
| :material-sync: | **Automated Externalization** | Tags COMPs and DATs, keeps external files in sync — auto-restores from disk on project open |
71-
| :material-robot: | **Envoy MCP Server** | 42 tools connect AI assistants to your live TD session |
71+
| :material-robot: | **Envoy MCP Server** | 46 tools connect AI assistants to your live TD session |
7272
| :material-file-document: | **TDN Format** | Export/import operator networks as diffable JSON for code review and snapshots |
7373
| :material-keyboard: | **Keyboard Shortcuts** | Double-tap ++lctrl++ to tag, ++ctrl+shift+u++ to save — minimal friction |
7474
| :material-cog: | **Parameter Tracking** | Automatically detects parameter changes and marks COMPs dirty |
75-
| :material-test-tube: | **30 Test Suites** | Comprehensive automated testing with 587 test methods |
75+
| :material-test-tube: | **41 Test Suites** | Comprehensive automated testing framework |
7676
| :material-note-text: | **Structured Logging** | Multi-destination logging with file rotation, ring buffer, and MCP access |
7777

7878
---

0 commit comments

Comments
 (0)