TypeScript MCP server for Cinema 4D with generic entity CRUD, parameter-level access, undo-grouped batch ops, and security controls.
- ✓Open-source license (MIT)
- ✓Actively maintained (<30d)
- ✓Clear description
claude mcp add mcp-cinema4d -- npx -y @kumoproductions/mcp-cinema4d{
"mcpServers": {
"mcp-cinema4d": {
"command": "npx",
"args": ["-y", "@kumoproductions/mcp-cinema4d"],
"env": {
"C4D_MCP_TOKEN": "<c4d_mcp_token>"
}
}
}
}C4D_MCP_TOKENResumen de MCP Servers
# mcp-cinema4d
[](https://github.com/kumoproductions/mcp-cinema4d/actions/workflows/ci.yml)
[](./LICENSE)
[](package.json)
[](https://www.maxon.net/en/cinema-4d)
Let an LLM drive Cinema 4D. **mcp-cinema4d** bridges MCP-compatible clients (Claude Desktop, Claude Code, or any other stdio-capable MCP client) to a running Cinema 4D 2026 session so the model can inspect scene hierarchy, author shots, build node materials, and rig animation through a typed, undo-safe tool layer — not arbitrary Python pasted into a Script Manager.
**Good for:**
- **Scene audits** — "List every object on the `hero` layer; flag any with non-uniform scale or missing Texture tags."
- **Shot setup** — "Create a 1920×1080 RenderData, a camera at (0, 150, -400), and a Take that uses both."
- **Material work** — "Build a Redshift node material with a noise texture driving roughness at 0.4 gain."
- **Procedural edits** — "On every Subdivision Surface in the scene, reduce editor/render levels by 1."
- **Xpresso rigs** — "Build a 3-gear meshing rig where the master gear's pitch radius dynamically drives the others' size and counter-rotation via an Xpresso graph."
> [!CAUTION]
> **Do not proceed unless you understand what this does.** An LLM with a live connection to Cinema 4D can read your scene, write to it, and (if you opt in) execute arbitrary code on your machine. In concrete terms:
>
> 1. **Your scene data leaves your machine.** Object names, hierarchy paths, material/parameter values, imported file paths — whatever the LLM reads via `list_entities` / `describe` / `get_container` / `dump_shader` / `get_mesh` — is forwarded to your chosen LLM provider and may be logged by your MCP client. **Under NDA or on unreleased IP? Confirm with your studio/legal team first** that the provider's retention policy and your client's logs are acceptable.
> 2. **The LLM gets write access.** It can create, mutate, and delete objects, tags, materials, takes, render data, and layers; import / merge / open / save files; and render. Ctrl/Cmd-Z covers most edits — `save_document`, `open_document`, `render`, and some `call_command` invocations do not.
> 3. **Arbitrary Python is off by default.** `exec_python` runs unrestricted code with the full authority of the Cinema 4D process (file I/O, subprocess, network). Enabled only when `C4D_MCP_ENABLE_EXEC_PYTHON=1` is set on **both** sides; turn it back off when you no longer need it. The same applies to plugin types that store Python source in their container — Python tag, Python generator, MoGraph Python effector, Python field, and the Xpresso Python operator. Creating or editing them is gated behind a separate `C4D_MCP_ENABLE_PYTHON_OPS=1` opt-in, since their code parameter is RCE-equivalent to `exec_python`.
>
> Before first use: back up (or commit) your scene, start on a throwaway project, and leave your MCP client's per-call approval prompts enabled. See [Security](#security) before exposing the bridge beyond loopback.
---
## Architecture
```
MCP client
↓ stdio
MCP server (this repo, Node.js)
↓ TCP, JSON Lines (default 127.0.0.1:18710)
cinema4d_mcp_bridge (Python plugin inside C4D)
↓
Cinema 4D
```
Two pieces to install: the **MCP server** (this npm package, runs as an MCP stdio process) and the **bridge plugin** (Python, lives inside Cinema 4D). C4D must be running for the bridge to respond.
## Quickstart
Assuming you already have Cinema 4D 2026.0.0+ and Node.js 24+.
1. **Install the bridge plugin into Cinema 4D (one-off).** Download the latest
`cinema4d_mcp_bridge-<version>.zip` from the
[Releases page](https://github.com/kumoproductions/mcp-cinema4d/releases/latest)
and extract the `cinema4d_mcp_bridge/` folder into your Cinema 4D plugins
directory (see [Installing the bridge plugin](#installing-the-bridge-plugin)
for platform-specific paths).
2. **Launch (or restart) Cinema 4D.** The C4D console should print
`[cinema4d_mcp_bridge] listening on 127.0.0.1:18710`.
3. **Smoke-test the MCP server from the CLI:**
```bash
echo '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"ping","arguments":{}}}' \
| npx -y @kumoproductions/mcp-cinema4d
# → {"jsonrpc":"2.0","id":1,"result":{"content":[{"type":"text","text":"{\"pong\": true, ...}"}]}}
```
Then wire it into your MCP client (see [Client configuration](#client-configuration)) and try:
> _"List every object in the scene, then add a cube named `hero` 200 units above the origin."_
The LLM will call `list_entities` → `create_entity` in sequence; you should see a new cube appear in the viewport.
Prefer running from a local checkout? See [CONTRIBUTING.md](./CONTRIBUTING.md) for the source-install flow.
## Client configuration
Generate a random token and set it on **both** the MCP server process (via the client's `env` map, below) and the Cinema 4D launch environment. The bridge rejects mismatched requests (constant-time compare); the Node client forwards the value automatically. Strongly recommended — localhost is not a trust boundary on a shared workstation.
```bash
openssl rand -hex 16
```
Register the MCP server in your client with the token in the `env` map:
```json
{
"mcpServers": {
"cinema4d": {
"command": "npx",
"args": ["-y", "@kumoproductions/mcp-cinema4d"],
"env": {
"C4D_MCP_TOKEN": "paste-your-random-hex-here"
}
}
}
}
```
| Client | Config file |
| ---------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| Claude Desktop / Claude Code | `%APPDATA%\Claude\claude_desktop_config.json` (Windows) · `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) |
| Other MCP clients | see the client's docs for registering a stdio server |
**The same `C4D_MCP_*` variables must also be set in the Cinema 4D launch environment** — the bridge plugin reads them at C4D startup. macOS: `open -a "Cinema 4D" --env C4D_MCP_TOKEN=...` (or export in your shell profile before launch). Windows: set as User environment variables and restart C4D.
To change the bridge socket, set `C4D_MCP_PORT` (and optionally `C4D_MCP_HOST` — see [Security](#security)) alongside `C4D_MCP_TOKEN` in the same `env` map, plus the C4D launch env.
## Tools
64 tools across 16 groups. The LLM picks tools itself based on the prompt — you rarely invoke them directly. See [docs/TOOLS.md](./docs/TOOLS.md) for the full table with per-tool descriptions.
| Group | Count | What's in it |
| -------------------------------- | :---: | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Basics | 4 | `ping`, `render`, `preview_render` (Viewport renderer + Constant Lines, returns inline PNG), `reset_scene`. |
| Script-style | 5 | `exec_python` (opt-in), `call_command`, `list_plugins`, `undo`, `batch` — escape hatches + undo-grouped multi-op. |
| Generic CRUD | 9 | `list_entities`, `describe`, `get_params`/`set_params`, `get_container`, `dump_shader`, `create_entity`, `remove_entity`, `set_keyframe`. |
| Shot setup | 7 | Document state, fps / frame range / camera, `import_scene` (merge), RenderData + Take, `take_override`, `sample_transform`. |
| Selection · Hierarchy | 4 | Active selection read / write; reparent, reorder, clone. |
| Modeling · Mesh | 4 | `modeling_command` (CSO / Make Editable / Connect / Subdivide / …), `get_mesh`, `set_mesh`, `set_mesh_selection`. |
| Document I/O | 6 | `save_document`, `open_document`, `new_document`, `list_documents`, `set_active_document` (switch between already-open docs), `close_document` (force-gated for unsaved changes). |
| Node graphs | 10 | Node-material graphs (walk / asset enum / `apply_graph_description` / per-port edits / removal) **and** Xpresso (GvNodeMaster) graphs (`list_xpresso_nodes` / `apply_xpresso_graph` / `set_xpresso_port` / `remove_xpresso_node`). |
| Tag helpers · Animation | 5 | `assign_material`; `list_tracks`, `get_keyframes`, `delete_keyframe`, `delete_track`. Lo que la gente pregunta sobre mcp-cinema4d
¿Qué es kumoproductions/mcp-cinema4d?
+
kumoproductions/mcp-cinema4d es mcp servers para el ecosistema de Claude AI. TypeScript MCP server for Cinema 4D with generic entity CRUD, parameter-level access, undo-grouped batch ops, and security controls. Tiene 6 estrellas en GitHub y se actualizó por última vez today.
¿Cómo se instala mcp-cinema4d?
+
Puedes instalar mcp-cinema4d clonando el repositorio (https://github.com/kumoproductions/mcp-cinema4d) o siguiendo las instrucciones del README en GitHub. ClaudeWave también te ofrece bloques de instalación rápida en esta misma página.
¿Es seguro usar kumoproductions/mcp-cinema4d?
+
Nuestro agente de seguridad ha analizado kumoproductions/mcp-cinema4d y le ha asignado un Trust Score de 79/100 (tier: Trusted). Revisa el desglose completo de comprobaciones superadas y flags en esta página.
¿Quién mantiene kumoproductions/mcp-cinema4d?
+
kumoproductions/mcp-cinema4d es mantenido por kumoproductions. La última actividad registrada en GitHub es de today, con 1 issues abiertos.
¿Hay alternativas a mcp-cinema4d?
+
Sí. En ClaudeWave puedes explorar mcp servers similares en /categories/mcp, ordenados por popularidad o actividad reciente.
Despliega mcp-cinema4d en tu cloud
Lleva este repo a producción en minutos. Cada plataforma genera su propio entorno con variables de entorno editables.
¿Mantienes este repo? Añade un badge a tu README
Pega el badge en tu README de GitHub para mostrar que está auditado por ClaudeWave. Cada badge enlaza de vuelta a esta página y muestra el Trust Score actual.
[](https://claudewave.com/repo/kumoproductions-mcp-cinema4d)<a href="https://claudewave.com/repo/kumoproductions-mcp-cinema4d"><img src="https://claudewave.com/api/badge/kumoproductions-mcp-cinema4d" alt="Featured on ClaudeWave: kumoproductions/mcp-cinema4d" width="320" height="64" /></a>Más MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
The fastest path to AI-powered full stack observability, even for lean teams.
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl!
⭐AI-driven public opinion & trend monitor with multi-platform aggregation, RSS, and smart alerts.🎯 告别信息过载,你的 AI 舆情监控助手与热点筛选工具!聚合多平台热点 + RSS 订阅,支持关键词精准筛选。AI 智能筛选新闻 + AI 翻译 + AI 分析简报直推手机,也支持接入 MCP 架构,赋能 AI 自然语言对话分析、情感洞察与趋势预测等。支持 Docker ,数据本地/云端自持。集成微信/飞书/钉钉/Telegram/邮件/ntfy/bark/slack 等渠道智能推送。