@el4cteo/rbx-studio-mcp 0.4.5 → 0.4.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -4
- package/package.json +1 -1
- package/plugin/src/Config.luau +1 -1
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Roblox Studio MCP
|
|
2
2
|
|
|
3
|
-
Let an AI agent drive Roblox Studio: read your place, edit scripts, run playtests, take screenshots. 30 tools. MIT.
|
|
3
|
+
Let an AI agent drive Roblox Studio: read your place, edit scripts, build and generate geometry, run playtests, take screenshots. 30 tools. MIT.
|
|
4
4
|
|
|
5
5
|

|
|
6
6
|
|
|
@@ -133,6 +133,12 @@ codex mcp add roblox-studio -- npx -y @el4cteo/rbx-studio-mcp
|
|
|
133
133
|
|
|
134
134
|
Port defaults to **44755** — change with `--port` or `ROBLOX_STUDIO_MCP_PORT`, and match it in the plugin widget. Loopback only.
|
|
135
135
|
|
|
136
|
+
If anything looks wrong, run the health check. It reports Node, the plugin install, the bridge, and every connected Studio, and ends each line with the fix:
|
|
137
|
+
|
|
138
|
+
```bash
|
|
139
|
+
npx -y @el4cteo/rbx-studio-mcp doctor
|
|
140
|
+
```
|
|
141
|
+
|
|
136
142
|
## Multiple agents
|
|
137
143
|
|
|
138
144
|
Register the server in as many clients as you like. No extra configuration.
|
|
@@ -151,11 +157,15 @@ Each agent keeps its own target, so two agents can work on two open places. Suba
|
|
|
151
157
|
| **Run & debug** | `playtest` `execute_luau` `character` `input` `console` `debug` `performance` |
|
|
152
158
|
| **Look** | `screenshot` `viewport` `device` |
|
|
153
159
|
|
|
154
|
-
|
|
160
|
+
`geometry` holds every mesh operation: `union`, `subtract`, `intersect`, `fragment`, `segment` (cut a mesh into parts you name) and `sweep` (the volume a part moves through, and what it would hit).
|
|
161
|
+
|
|
162
|
+
`generate` builds 3D models from a prompt using Roblox's Cube model — `Body1` for props, `Car5` for a body and four named wheels a script can drive, or your own part names.
|
|
163
|
+
|
|
164
|
+
Gotchas: during a playtest two sessions connect — pass `studioId` explicitly and use the edit session for anything that must persist. `device` emulation persists until `device op="stop"`. Generated meshes are edit-mode only; their content reads as empty inside a playtest.
|
|
155
165
|
|
|
156
166
|
## The console panel
|
|
157
167
|
|
|
158
|
-
Every call is logged with its latency, above a trace of the last forty.
|
|
168
|
+
Every call is logged with its latency, above a trace of the last forty. The badge names which agents are connected, with process id and uptime.
|
|
159
169
|
|
|
160
170
|
Hover the tab on the right edge for eight themes — Lattice, Observatory, Orbit, Void, Nebula, Aurora, Phosphor, Blueprint. Each redraws the activity band, not just its colours. Your pick is remembered.
|
|
161
171
|
|
|
@@ -182,11 +192,12 @@ Each batch is one **Ctrl+Z**, and all-or-nothing: a failed match leaves the plac
|
|
|
182
192
|
|
|
183
193
|
- **Push, not poll.** 50 sequential round trips average 13.6 ms, against 25.8 ms polling — reproduce with `node scripts/latency.mjs --count 50 --compare`.
|
|
184
194
|
- **Safe script edits.** Writes go through `ScriptEditorService:UpdateSourceAsync`, so your unsaved editor buffer survives.
|
|
195
|
+
- **Edits can refuse to be stale.** `script_read` prints a `rev`; pass it back and the write is rejected if anyone changed the script meanwhile, instead of landing on lines that moved.
|
|
185
196
|
- **One Ctrl+Z per call.** Every batch is a single undo recording.
|
|
186
197
|
- **Property names are checked** against the running engine's API dump, so a typo comes back as `Anchorred` → `Anchored` instead of a runtime error.
|
|
187
198
|
- **~16k tokens of schema**, cursor-paged and capped, with `detail: concise | standard | full`.
|
|
188
199
|
|
|
189
|
-
Not built here: terrain,
|
|
200
|
+
Not built here: terrain, material generation.
|
|
190
201
|
|
|
191
202
|
## Security
|
|
192
203
|
|
package/package.json
CHANGED
package/plugin/src/Config.luau
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
|
|
10
10
|
local Config = {}
|
|
11
11
|
|
|
12
|
-
Config.PLUGIN_VERSION = "0.4.
|
|
12
|
+
Config.PLUGIN_VERSION = "0.4.6"
|
|
13
13
|
|
|
14
14
|
-- Fingerprint of plugin/src, stamped in by scripts/build-plugin.mjs. The server
|
|
15
15
|
-- computes the same hash from its own copy of the sources and compares, so a
|