@weppy/roblox-mcp 2.5.1 → 2.6.1

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.
Files changed (233) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/.github/workflows/install-test.yml +55 -4
  3. package/CHANGELOG.md +27 -0
  4. package/README.md +29 -46
  5. package/SUPPORT.md +4 -6
  6. package/install.ps1 +7 -5
  7. package/install.sh +4 -2
  8. package/llms-full.txt +8 -688
  9. package/llms.txt +3 -13
  10. package/package.json +1 -1
  11. package/plugins/weppy-roblox-mcp/.claude-plugin/plugin.json +1 -1
  12. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/ChangelogDetailPage-kwE4pHZd.js +1 -0
  13. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/ChangelogPage-BFfSWE_s.js +1 -0
  14. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/{ConfirmModal-DfdyAPrJ.js → ConfirmModal-CeEegyOx.js} +1 -1
  15. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/ConnectionPage-D_mEFudd.css +1 -0
  16. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/ConnectionPage-XuHLuNwR.js +1 -0
  17. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/GameChangeDetail-BFTVWFJO.js +6 -0
  18. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/{PropertyDiff-Cbx8P1zh.css → GameChangeDetail-Be32PRgR.css} +1 -1
  19. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/{InfoLabel-DrK7vhO-.js → InfoLabel-MCIgnb3Z.js} +1 -1
  20. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/OverviewPage-BrWw_dSf.js +1 -0
  21. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/{PlaytestPage-CgkzRAqQ.js → PlaytestPage-CxeJXqJZ.js} +2 -2
  22. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/SettingsPage-Qd2a2pgi.js +1 -0
  23. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/{StatusBadge-hJyzgRAl.js → StatusBadge-Dk0M7zQF.js} +1 -1
  24. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/SyncPage-BmMeN4N9.css +1 -0
  25. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/SyncPage-Wu2tD8Lb.js +4 -0
  26. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/TierComparison-DsesL0R1.js +1 -0
  27. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/ToolsPage-C7ld3BhY.js +1 -0
  28. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/TooltipText-CjH5N6RH.js +1 -0
  29. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/WhatsNewPage-BwWOghgp.js +1 -0
  30. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/index-FDX6EnZH.js +355 -0
  31. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/index-XEVy0XAx.css +1 -0
  32. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/{useLiveUptime-BeRNzFBh.js → useLiveUptime-DExWULj9.js} +1 -1
  33. package/plugins/weppy-roblox-mcp/dashboard/dist/index.html +2 -2
  34. package/plugins/weppy-roblox-mcp/dist/index.js +77 -77
  35. package/plugins/weppy-roblox-mcp/roblox-plugin/WeppyRobloxMCP.rbxm +0 -0
  36. package/docs/compatibility.md +0 -44
  37. package/docs/en/dashboard/changelog.md +0 -114
  38. package/docs/en/dashboard/connection.md +0 -77
  39. package/docs/en/dashboard/overview.md +0 -95
  40. package/docs/en/dashboard/playtest.md +0 -61
  41. package/docs/en/dashboard/settings.md +0 -60
  42. package/docs/en/dashboard/sync.md +0 -68
  43. package/docs/en/dashboard/tools.md +0 -69
  44. package/docs/en/explorer/overview.md +0 -104
  45. package/docs/en/installation/README.md +0 -95
  46. package/docs/en/installation/ai-apps/antigravity.md +0 -89
  47. package/docs/en/installation/ai-apps/claude-app.md +0 -78
  48. package/docs/en/installation/ai-apps/claude-code.md +0 -104
  49. package/docs/en/installation/ai-apps/codex-app.md +0 -56
  50. package/docs/en/installation/ai-apps/codex-cli.md +0 -67
  51. package/docs/en/installation/ai-apps/cursor.md +0 -77
  52. package/docs/en/installation/ai-apps/gemini-cli.md +0 -120
  53. package/docs/en/installation/roblox-explorer.md +0 -68
  54. package/docs/en/installation/roblox-plugin.md +0 -96
  55. package/docs/en/pro-upgrade.md +0 -96
  56. package/docs/en/sync/luau-lsp.md +0 -41
  57. package/docs/en/sync/overview.md +0 -153
  58. package/docs/en/tools/assets-and-effects.md +0 -104
  59. package/docs/en/tools/instances-and-properties.md +0 -104
  60. package/docs/en/tools/overview.md +0 -277
  61. package/docs/en/tools/playtest.md +0 -140
  62. package/docs/en/tools/scripting.md +0 -66
  63. package/docs/en/tools/system-and-debugging.md +0 -93
  64. package/docs/en/tools/world-and-environment.md +0 -102
  65. package/docs/es/README.md +0 -209
  66. package/docs/es/dashboard/changelog.md +0 -114
  67. package/docs/es/dashboard/connection.md +0 -77
  68. package/docs/es/dashboard/overview.md +0 -95
  69. package/docs/es/dashboard/playtest.md +0 -61
  70. package/docs/es/dashboard/settings.md +0 -60
  71. package/docs/es/dashboard/sync.md +0 -68
  72. package/docs/es/dashboard/tools.md +0 -69
  73. package/docs/es/explorer/overview.md +0 -104
  74. package/docs/es/installation/README.md +0 -87
  75. package/docs/es/installation/ai-apps/antigravity.md +0 -89
  76. package/docs/es/installation/ai-apps/claude-app.md +0 -78
  77. package/docs/es/installation/ai-apps/claude-code.md +0 -104
  78. package/docs/es/installation/ai-apps/codex-app.md +0 -56
  79. package/docs/es/installation/ai-apps/codex-cli.md +0 -67
  80. package/docs/es/installation/ai-apps/cursor.md +0 -77
  81. package/docs/es/installation/ai-apps/gemini-cli.md +0 -120
  82. package/docs/es/installation/roblox-explorer.md +0 -58
  83. package/docs/es/installation/roblox-plugin.md +0 -85
  84. package/docs/es/pro-upgrade.md +0 -96
  85. package/docs/es/sync/luau-lsp.md +0 -41
  86. package/docs/es/sync/overview.md +0 -153
  87. package/docs/es/tools/assets-and-effects.md +0 -104
  88. package/docs/es/tools/instances-and-properties.md +0 -104
  89. package/docs/es/tools/overview.md +0 -277
  90. package/docs/es/tools/playtest.md +0 -140
  91. package/docs/es/tools/scripting.md +0 -66
  92. package/docs/es/tools/system-and-debugging.md +0 -93
  93. package/docs/es/tools/world-and-environment.md +0 -102
  94. package/docs/id/README.md +0 -209
  95. package/docs/id/dashboard/changelog.md +0 -114
  96. package/docs/id/dashboard/connection.md +0 -77
  97. package/docs/id/dashboard/overview.md +0 -95
  98. package/docs/id/dashboard/playtest.md +0 -61
  99. package/docs/id/dashboard/settings.md +0 -60
  100. package/docs/id/dashboard/sync.md +0 -68
  101. package/docs/id/dashboard/tools.md +0 -69
  102. package/docs/id/explorer/overview.md +0 -104
  103. package/docs/id/installation/README.md +0 -93
  104. package/docs/id/installation/ai-apps/antigravity.md +0 -89
  105. package/docs/id/installation/ai-apps/claude-app.md +0 -78
  106. package/docs/id/installation/ai-apps/claude-code.md +0 -104
  107. package/docs/id/installation/ai-apps/codex-app.md +0 -56
  108. package/docs/id/installation/ai-apps/codex-cli.md +0 -67
  109. package/docs/id/installation/ai-apps/cursor.md +0 -77
  110. package/docs/id/installation/ai-apps/gemini-cli.md +0 -120
  111. package/docs/id/installation/roblox-explorer.md +0 -58
  112. package/docs/id/installation/roblox-plugin.md +0 -85
  113. package/docs/id/pro-upgrade.md +0 -96
  114. package/docs/id/sync/luau-lsp.md +0 -41
  115. package/docs/id/sync/overview.md +0 -153
  116. package/docs/id/tools/assets-and-effects.md +0 -104
  117. package/docs/id/tools/instances-and-properties.md +0 -104
  118. package/docs/id/tools/overview.md +0 -277
  119. package/docs/id/tools/playtest.md +0 -140
  120. package/docs/id/tools/scripting.md +0 -66
  121. package/docs/id/tools/system-and-debugging.md +0 -93
  122. package/docs/id/tools/world-and-environment.md +0 -102
  123. package/docs/installer/assets/index-Bz0amd7x.js +0 -63
  124. package/docs/installer/assets/index-ei4lRUa6.css +0 -1
  125. package/docs/installer/index.html +0 -14
  126. package/docs/installer/manifest.webmanifest +0 -15
  127. package/docs/installer/sw.js +0 -7
  128. package/docs/installer/weppy-icon.png +0 -0
  129. package/docs/ja/README.md +0 -207
  130. package/docs/ja/dashboard/changelog.md +0 -114
  131. package/docs/ja/dashboard/connection.md +0 -77
  132. package/docs/ja/dashboard/overview.md +0 -95
  133. package/docs/ja/dashboard/playtest.md +0 -61
  134. package/docs/ja/dashboard/settings.md +0 -60
  135. package/docs/ja/dashboard/sync.md +0 -68
  136. package/docs/ja/dashboard/tools.md +0 -69
  137. package/docs/ja/explorer/overview.md +0 -104
  138. package/docs/ja/installation/README.md +0 -93
  139. package/docs/ja/installation/ai-apps/antigravity.md +0 -89
  140. package/docs/ja/installation/ai-apps/claude-app.md +0 -78
  141. package/docs/ja/installation/ai-apps/claude-code.md +0 -104
  142. package/docs/ja/installation/ai-apps/codex-app.md +0 -56
  143. package/docs/ja/installation/ai-apps/codex-cli.md +0 -67
  144. package/docs/ja/installation/ai-apps/cursor.md +0 -77
  145. package/docs/ja/installation/ai-apps/gemini-cli.md +0 -120
  146. package/docs/ja/installation/roblox-explorer.md +0 -58
  147. package/docs/ja/installation/roblox-plugin.md +0 -85
  148. package/docs/ja/pro-upgrade.md +0 -96
  149. package/docs/ja/sync/luau-lsp.md +0 -41
  150. package/docs/ja/sync/overview.md +0 -153
  151. package/docs/ja/tools/assets-and-effects.md +0 -104
  152. package/docs/ja/tools/instances-and-properties.md +0 -104
  153. package/docs/ja/tools/overview.md +0 -277
  154. package/docs/ja/tools/playtest.md +0 -140
  155. package/docs/ja/tools/scripting.md +0 -66
  156. package/docs/ja/tools/system-and-debugging.md +0 -93
  157. package/docs/ja/tools/world-and-environment.md +0 -102
  158. package/docs/ko/README.md +0 -207
  159. package/docs/ko/dashboard/changelog.md +0 -114
  160. package/docs/ko/dashboard/connection.md +0 -77
  161. package/docs/ko/dashboard/overview.md +0 -95
  162. package/docs/ko/dashboard/playtest.md +0 -61
  163. package/docs/ko/dashboard/settings.md +0 -60
  164. package/docs/ko/dashboard/sync.md +0 -68
  165. package/docs/ko/dashboard/tools.md +0 -69
  166. package/docs/ko/explorer/overview.md +0 -104
  167. package/docs/ko/installation/README.md +0 -95
  168. package/docs/ko/installation/ai-apps/antigravity.md +0 -88
  169. package/docs/ko/installation/ai-apps/claude-app.md +0 -78
  170. package/docs/ko/installation/ai-apps/claude-code.md +0 -104
  171. package/docs/ko/installation/ai-apps/codex-app.md +0 -56
  172. package/docs/ko/installation/ai-apps/codex-cli.md +0 -67
  173. package/docs/ko/installation/ai-apps/cursor.md +0 -77
  174. package/docs/ko/installation/ai-apps/gemini-cli.md +0 -120
  175. package/docs/ko/installation/roblox-explorer.md +0 -68
  176. package/docs/ko/installation/roblox-plugin.md +0 -96
  177. package/docs/ko/pro-upgrade.md +0 -96
  178. package/docs/ko/sync/luau-lsp.md +0 -41
  179. package/docs/ko/sync/overview.md +0 -153
  180. package/docs/ko/tools/assets-and-effects.md +0 -104
  181. package/docs/ko/tools/instances-and-properties.md +0 -104
  182. package/docs/ko/tools/overview.md +0 -277
  183. package/docs/ko/tools/playtest.md +0 -134
  184. package/docs/ko/tools/scripting.md +0 -66
  185. package/docs/ko/tools/system-and-debugging.md +0 -93
  186. package/docs/ko/tools/world-and-environment.md +0 -102
  187. package/docs/pt-br/README.md +0 -209
  188. package/docs/pt-br/dashboard/changelog.md +0 -114
  189. package/docs/pt-br/dashboard/connection.md +0 -77
  190. package/docs/pt-br/dashboard/overview.md +0 -95
  191. package/docs/pt-br/dashboard/playtest.md +0 -61
  192. package/docs/pt-br/dashboard/settings.md +0 -60
  193. package/docs/pt-br/dashboard/sync.md +0 -68
  194. package/docs/pt-br/dashboard/tools.md +0 -69
  195. package/docs/pt-br/explorer/overview.md +0 -104
  196. package/docs/pt-br/installation/README.md +0 -93
  197. package/docs/pt-br/installation/ai-apps/antigravity.md +0 -89
  198. package/docs/pt-br/installation/ai-apps/claude-app.md +0 -78
  199. package/docs/pt-br/installation/ai-apps/claude-code.md +0 -104
  200. package/docs/pt-br/installation/ai-apps/codex-app.md +0 -56
  201. package/docs/pt-br/installation/ai-apps/codex-cli.md +0 -67
  202. package/docs/pt-br/installation/ai-apps/cursor.md +0 -77
  203. package/docs/pt-br/installation/ai-apps/gemini-cli.md +0 -120
  204. package/docs/pt-br/installation/roblox-explorer.md +0 -58
  205. package/docs/pt-br/installation/roblox-plugin.md +0 -85
  206. package/docs/pt-br/pro-upgrade.md +0 -96
  207. package/docs/pt-br/sync/luau-lsp.md +0 -41
  208. package/docs/pt-br/sync/overview.md +0 -153
  209. package/docs/pt-br/tools/assets-and-effects.md +0 -104
  210. package/docs/pt-br/tools/instances-and-properties.md +0 -104
  211. package/docs/pt-br/tools/overview.md +0 -277
  212. package/docs/pt-br/tools/playtest.md +0 -140
  213. package/docs/pt-br/tools/scripting.md +0 -66
  214. package/docs/pt-br/tools/system-and-debugging.md +0 -93
  215. package/docs/pt-br/tools/world-and-environment.md +0 -102
  216. package/docs/troubleshooting.md +0 -47
  217. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/ChangelogDetailPage-DRfFUIvC.js +0 -1
  218. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/ChangelogPage-Dgl8dBt6.js +0 -1
  219. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/ConnectionPage-9bG71eB1.css +0 -1
  220. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/ConnectionPage-LSvSX1_u.js +0 -1
  221. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/OverviewPage-CXsGuoPu.js +0 -1
  222. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/PropertyDiff-Dy3MffNh.js +0 -6
  223. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/SettingsPage-D2ZBQ2KF.js +0 -1
  224. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/SyncPage-CLt9jxd8.css +0 -1
  225. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/SyncPage-eX2Rh-Ct.js +0 -4
  226. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/TierComparison-BwKqP_4s.js +0 -1
  227. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/TierPromo-D5n9OoEm.css +0 -1
  228. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/TierPromo.module-CAoUYgIx.js +0 -1
  229. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/TierPromoProgress-CLAr1gQq.js +0 -1
  230. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/ToolsPage-CqzfCxxH.js +0 -1
  231. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/WhatsNewPage-23o8LmsR.js +0 -1
  232. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/index-BfvSPSNj.js +0 -207
  233. package/plugins/weppy-roblox-mcp/dashboard/dist/assets/index-YfUJSF5s.css +0 -1
package/llms-full.txt CHANGED
@@ -1,694 +1,14 @@
1
- # WEPPY — Full Documentation
1
+ # WEPPY — Canonical Web Docs
2
2
 
3
- > WEPPY is an MCP server that lets AI coding agents (Claude, Codex,
4
- > Cursor, Gemini) control a live Roblox Studio session — create and edit scripts,
5
- > instances, terrain, lighting, assets, audio, and animations via natural language.
6
- > Action-based MCP tools · Bidirectional sync · Multi-place support
3
+ > WEPPY is an MCP server that lets AI coding agents control a live Roblox Studio session and interact with scripts, instances, terrain, lighting, assets, audio, and animations.
7
4
 
8
- ---
5
+ This package intentionally does not ship a standalone full documentation surface.
9
6
 
10
- # Installation Guide
7
+ Canonical documentation lives on the web:
11
8
 
12
- To use Roblox MCP, you need to install **two things**.
9
+ - Install and setup: https://weppyai.com/en/install
10
+ - Product documentation: https://weppyai.com/en/install
11
+ - Pro plans: https://weppyai.com/en/plans
13
12
 
14
- ```
15
- AI App (Claude, Codex, Gemini, etc.)
16
-
17
- MCP Server ← Converts AI commands into a format Roblox understands
18
-
19
- Roblox Studio Plugin ← Executes commands inside Studio
20
- ```
13
+ For app-specific setup, open the web install page and choose the relevant AI client guide.
21
14
 
22
- When an AI app says "Create a blue part", the MCP server converts this request, and the Roblox Studio plugin actually creates the part.
23
-
24
- ## Web Installer (Recommended)
25
-
26
- Open the installer page in Chrome, Edge, or Arc for one-click setup:
27
-
28
- https://hope1026.github.io/weppy-roblox-mcp/installer/
29
-
30
- It writes the supported AI app config for `npx -y @weppy/roblox-mcp` first.
31
-
32
- After you reopen the AI app, the first MCP run fetches the package through `npx` and auto-installs the Roblox Studio plugin.
33
-
34
- For Safari or Firefox, use the installer page as a guide or continue with the manual install below.
35
-
36
- ## One-Line Install (Fallback)
37
-
38
- Advanced users can install everything in one command:
39
-
40
- ```bash
41
- # macOS / Linux
42
- curl -fsSL https://raw.githubusercontent.com/hope1026/weppy-roblox-mcp/main/install.sh | bash
43
-
44
- # Windows (PowerShell)
45
- irm https://raw.githubusercontent.com/hope1026/weppy-roblox-mcp/main/install.ps1 | iex
46
- ```
47
-
48
- Then restart Roblox Studio — done!
49
-
50
- ## Manual Install
51
-
52
- ### Step 1: Install Roblox Studio Plugin
53
-
54
- Download the plugin file from GitHub, then place it in Roblox Studio's Plugins folder.
55
-
56
- ### Download Plugin
57
-
58
- 1. Open [GitHub Releases](https://github.com/hope1026/weppy-roblox-mcp/releases/latest)
59
- 2. Download `weppy-roblox-mcp-v{version}.zip`
60
- 3. Extract the ZIP file - you will find `roblox-plugin/WeppyRobloxMCP.rbxm` and setup guides
61
-
62
- Note: The same plugin package is used for all tiers.
63
-
64
- ### Install Plugin
65
-
66
- 1. Open **Roblox Studio**
67
- 2. Click the **Plugins** tab in the top menu
68
- 3. Click the **Plugins Folder** button
69
- 4. **Copy** the `WeppyRobloxMCP.rbxm` file into the opened Plugins folder
70
- 5. **Restart Roblox Studio**
71
-
72
- After restarting, the **WEPPY** button will appear in the Plugins tab.
73
-
74
- ### Connect to AI Agent
75
-
76
- 1. Open any project in **Roblox Studio**
77
- 2. Go to **Plugins** tab -> **WEPPY**
78
- 3. Click the **Connect** button in the plugin window
79
- 4. Once **"Connected"** status is displayed, you're ready
80
-
81
- ### Settings (Optional)
82
-
83
- - **Auto Connect**: Automatically connect to MCP server when Studio starts
84
- - **Auto Reconnect**: Automatically attempt to reconnect when connection is lost
85
- - **Auto Camera Focus**: Automatically move camera to created objects
86
- - **Language**: Change the plugin UI language
87
-
88
- ## Step 2: Register MCP Server with AI App
89
-
90
- Register the MCP server with your AI app. You can use it with any AI app that supports MCP.
91
-
92
- The MCP server command is: `npx -y @weppy/roblox-mcp`
93
-
94
- ### Claude Code Setup
95
-
96
- **Method 1: Install from Marketplace (Recommended)**
97
-
98
- ```bash
99
- /plugin marketplace add hope1026/weppy-roblox-mcp
100
- /plugin install weppy-roblox-mcp@hope1026-roblox-mcp
101
- ```
102
-
103
- **Method 2: Edit Configuration File**
104
-
105
- Create a `.mcp.json` file (project scope) or `~/.claude/mcp.json` (global):
106
-
107
- ```json
108
- {
109
- "mcpServers": {
110
- "weppy-roblox-mcp": {
111
- "command": "npx",
112
- "args": ["-y", "@weppy/roblox-mcp"]
113
- }
114
- }
115
- }
116
- ```
117
-
118
- ### Claude Desktop Setup
119
-
120
- **Method 1: Desktop Extensions (Recommended)**
121
-
122
- Claude Desktop → Settings → Extensions → Search for `weppy-roblox-mcp` → Install
123
-
124
- **Method 2: Edit Configuration File**
125
-
126
- Add to `claude_desktop_config.json`:
127
- - macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
128
- - Windows: `%APPDATA%\Claude\claude_desktop_config.json`
129
-
130
- ```json
131
- {
132
- "mcpServers": {
133
- "weppy-roblox-mcp": {
134
- "command": "npx",
135
- "args": ["-y", "@weppy/roblox-mcp"]
136
- }
137
- }
138
- }
139
- ```
140
-
141
- ### Cursor Setup
142
-
143
- Add the following to `.cursor/mcp.json` in your project, or to `~/.cursor/mcp.json` (global):
144
-
145
- ```json
146
- {
147
- "mcpServers": {
148
- "weppy-roblox-mcp": {
149
- "command": "npx",
150
- "args": ["-y", "@weppy/roblox-mcp"]
151
- }
152
- }
153
- }
154
- ```
155
-
156
- ### Codex CLI Setup
157
-
158
- ```bash
159
- codex mcp add weppy-roblox-mcp -- npx -y @weppy/roblox-mcp
160
- ```
161
-
162
- Or edit `~/.codex/config.toml`:
163
-
164
- ```toml
165
- [mcp_servers.weppy-roblox-mcp]
166
- command = "npx"
167
- args = ["-y", "@weppy/roblox-mcp"]
168
- ```
169
-
170
- ### Codex Desktop Setup
171
-
172
- If you've already configured MCP in Codex CLI, settings are automatically synced to the app.
173
-
174
- Otherwise, add in the app under Settings → MCP Servers:
175
- - Server name: weppy-roblox-mcp
176
- - Command: npx -y @weppy/roblox-mcp
177
-
178
- ### Gemini CLI Setup
179
-
180
- ```bash
181
- gemini mcp add weppy-roblox-mcp npx --trust -- -y @weppy/roblox-mcp
182
- ```
183
-
184
- Or edit `.gemini/settings.json`:
185
-
186
- ```json
187
- {
188
- "mcpServers": {
189
- "weppy-roblox-mcp": {
190
- "command": "npx",
191
- "args": ["-y", "@weppy/roblox-mcp"]
192
- }
193
- }
194
- }
195
- ```
196
-
197
- ### Antigravity Setup
198
-
199
- In the agent pane, click ⋯ → MCP Servers → Manage MCP Servers → View raw config, then add:
200
-
201
- ```json
202
- {
203
- "mcpServers": {
204
- "weppy-roblox-mcp": {
205
- "command": "npx",
206
- "args": ["-y", "@weppy/roblox-mcp"]
207
- }
208
- }
209
- }
210
- ```
211
-
212
- ## Optional: Install Roblox Explorer (VSCode Extension)
213
-
214
- Browse synced instance trees inside VSCode with Roblox class icons.
215
-
216
- Search for **WEPPY Explorer** in the VSCode Extensions sidebar and click Install, or install from [VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=weppy.weppy-roblox-explorer) or [Open VSX](https://open-vsx.org/extension/weppy/weppy-roblox-explorer).
217
-
218
- Features:
219
- - Instance tree with Roblox class icons (dark/light theme)
220
- - Multi-place support with sync status indicators
221
- - Click-to-open scripts and property files
222
- - Instance search across all services
223
- - Auto-refresh when sync files change
224
-
225
- ## After Installation
226
-
227
- 1. Open Roblox Studio, go to Plugins tab and click WEPPY → Connect
228
- 2. Test in your AI app: "Create a blue part in Roblox Studio"
229
-
230
- ---
231
-
232
- # Tools Reference
233
-
234
- Roblox MCP provides consolidated tools with action-based sub-commands. Each tool uses an `action` field to specify the operation.
235
-
236
- ## Query Instances
237
-
238
- | Action | Description |
239
- |--------|-------------|
240
- | `get` | Get instance properties by path |
241
- | `children` | Get immediate children or all descendants |
242
- | `find_child` | Find first child by name and optional class filter |
243
- | `find_descendant` | Find first descendant by name |
244
- | `wait_for_child` | Wait for child to appear (with timeout) |
245
- | `class_info` | Get class information and valid properties |
246
- | `search_name` | Search instances by name pattern (supports wildcards) |
247
- | `search_class` | Search instances by class name |
248
- | `file_tree` | Get file tree structure from root |
249
- | `project_structure` | Get complete project structure |
250
- | `descendants` | Get all descendants of an instance |
251
- | `ancestors` | Get all ancestors of an instance |
252
- | `search_property` | Search instances by property value |
253
- | `search_tag` | Search instances by tag |
254
-
255
- ## Mutate Instances
256
-
257
- | Action | Description |
258
- |--------|-------------|
259
- | `create` | Create a new instance |
260
- | `create_with_props` | Create instance with initial properties |
261
- | `delete` | Delete an instance |
262
- | `clone` | Clone an instance |
263
- | `move` | Move instance to new parent |
264
- | `rename` | Rename an instance |
265
- | `pivot` | Set pivot position or CFrame |
266
- | `create_tree` | Create hierarchical instance tree |
267
- | `mass_create` | Create multiple instances at once |
268
- | `mass_delete` | Delete multiple instances |
269
- | `mass_duplicate` | Duplicate multiple instances |
270
- | `smart_duplicate` | Duplicate with spacing and count |
271
-
272
- ## Manage Properties
273
-
274
- | Action | Description |
275
- |--------|-------------|
276
- | `get` | Get a single property value |
277
- | `set` | Set a single property value |
278
- | `get_all` | Get all properties of an instance |
279
- | `set_multiple` | Set multiple properties at once |
280
- | `get_attr` | Get attribute value |
281
- | `set_attr` | Set attribute value |
282
- | `get_all_attrs` | Get all attributes |
283
- | `delete_attr` | Delete an attribute |
284
- | `add_tag` | Add a tag to instance |
285
- | `remove_tag` | Remove a tag from instance |
286
- | `check_tag` | Check if instance has a tag |
287
- | `get_tags` | Get all tags on an instance |
288
- | `get_tagged` | Get all instances with a specific tag |
289
- | `set_calculated` | Set property using mathematical expression |
290
- | `set_relative` | Set property relative to current value |
291
- | `mass_set` | Set property on multiple instances |
292
- | `mass_get` | Get property from multiple instances |
293
- | `modify_children` | Modify all children of a parent |
294
-
295
- ## Manage Scripts
296
-
297
- | Action | Description |
298
- |--------|-------------|
299
- | `get_source` | Get script source code |
300
- | `set_source` | Set script source code |
301
- | `create` | Create a new script |
302
- | `delete` | Delete a script |
303
- | `edit_replace` | Replace specific lines in script |
304
- | `edit_insert` | Insert lines at position |
305
- | `edit_delete` | Delete specific lines |
306
- | `search` | Search for text in script |
307
- | `get_dependencies` | Get script dependencies |
308
- | `replace` | Batch replace across scripts |
309
-
310
- ## Manage Lighting
311
-
312
- | Action | Description |
313
- |--------|-------------|
314
- | `lighting` | Set Lighting service properties |
315
- | `atmosphere` | Set Atmosphere properties |
316
- | `sky` | Set Sky properties |
317
- | `terrain_props` | Set Terrain water/visual properties |
318
- | `time` | Set time of day |
319
-
320
- ## Manage Selection
321
-
322
- | Action | Description |
323
- |--------|-------------|
324
- | `get` | Get current selection |
325
- | `set` | Replace current selection |
326
- | `clear` | Clear selection |
327
- | `cached` | Get cached selection without round-trip |
328
- | `context` | Get detailed context with source and properties |
329
- | `details` | Get hierarchical details with ancestors/descendants |
330
- | `add` | Add items to selection |
331
- | `remove` | Remove items from selection |
332
- | `watch` | Monitor selection changes |
333
-
334
- ## Manage Camera
335
-
336
- | Action | Description |
337
- |--------|-------------|
338
- | `info` | Get camera position, rotation, FOV, viewport size |
339
- | `focus_path` | Move camera to focus on instance |
340
- | `focus_position` | Move camera to focus on position |
341
- | `suggest` | Get suggested camera view for target |
342
-
343
- ## Manage Tween
344
-
345
- | Action | Description |
346
- |--------|-------------|
347
- | `create` | Create a tween with target properties |
348
- | `play` | Play a created tween |
349
- | `pause` | Pause a running tween |
350
- | `cancel` | Cancel a tween |
351
-
352
- ## Manage Audio
353
-
354
- | Action | Description |
355
- |--------|-------------|
356
- | `play` | Play a sound (creates Sound if needed) |
357
- | `stop` | Stop a playing sound |
358
- | `pause` | Pause a playing sound |
359
- | `resume` | Resume a paused sound |
360
- | `set_listener` | Set audio listener type/target |
361
-
362
- ## Manage Animation
363
-
364
- | Action | Description |
365
- |--------|-------------|
366
- | `load` | Load animation on Humanoid/AnimationController |
367
- | `play` | Play a loaded animation track |
368
- | `stop` | Stop a playing animation |
369
- | `get_tracks` | List all loaded animation tracks |
370
-
371
- ## Manage Physics
372
-
373
- | Action | Description |
374
- |--------|-------------|
375
- | `register_group` | Register a collision group |
376
- | `set_collidable` | Set whether two groups can collide |
377
- | `get_groups` | List all registered collision groups |
378
-
379
- ## Manage Effects
380
-
381
- | Action | Description |
382
- |--------|-------------|
383
- | `emit` | Emit particles from ParticleEmitter |
384
- | `clear` | Clear all particles |
385
- | `toggle` | Enable or disable effect |
386
-
387
- ## Manage Terrain
388
-
389
- | Action | Description |
390
- |--------|-------------|
391
- | `fill_block` | Fill block-shaped terrain |
392
- | `fill_ball` | Fill sphere-shaped terrain |
393
- | `fill_cylinder` | Fill cylinder-shaped terrain |
394
- | `fill_wedge` | Fill wedge-shaped terrain |
395
- | `clear_region` | Clear terrain in region |
396
- | `clear_bounds` | Clear terrain in bounds |
397
- | `replace_material` | Replace material in region |
398
- | `colors_get` | Get material colors |
399
- | `colors_set` | Set material colors |
400
- | `read_voxel` | Read single voxel data |
401
- | `read_voxels` | Read bulk voxel data |
402
- | `write_voxels` | Write bulk voxel data |
403
- | `generate` | Generate procedural terrain |
404
- | `smooth` | Smooth terrain |
405
-
406
- ## Spatial Query
407
-
408
- | Action | Description |
409
- |--------|-------------|
410
- | `raycast` | Cast a single ray |
411
- | `find_ground` | Find ground position below point |
412
- | `check_placement` | Check if placement is collision-free |
413
- | `multi_raycast` | Cast multiple rays in batch |
414
- | `scan_area` | Generate heightmap of area |
415
- | `find_flat` | Find flat areas for building |
416
- | `find_spawn` | Find suitable spawn positions |
417
- | `analyze_walkable` | Analyze walkability grid |
418
- | `spatial_map` | Get all BasePart positions |
419
- | `find_space` | Find empty space for object |
420
- | `bounds` | Get bounding box of instances |
421
- | `snap_grid` | Snap position to grid |
422
- | `collision` | Check AABB collision |
423
-
424
- ## Manage Assets
425
-
426
- | Action | Description |
427
- |--------|-------------|
428
- | `insert` | Insert model by asset ID |
429
- | `info` | Get asset metadata |
430
- | `search` | Search Creator Store |
431
- | `search_insert` | Search and insert first match |
432
- | `insert_free` | Insert free model |
433
- | `insert_package` | Insert package |
434
- | `export` | Export current selection |
435
-
436
- ## Manage Sync
437
-
438
- | Action | Description |
439
- |--------|-------------|
440
- | `status` | Get sync status for a place |
441
- | `history` | Get change history |
442
- | `directions` | Get per-type sync directions |
443
- | `read_file` | Read a synced file |
444
- | `write_file` | Write to a synced file |
445
- | `progress` | Get real-time sync progress and bandwidth |
446
-
447
- ## Workspace State
448
-
449
- | Action | Description |
450
- |--------|-------------|
451
- | `sync` | Fetch current Workspace state |
452
- | `snapshot` | Get full instance tree structure |
453
- | `changes` | Get recent changes |
454
- | `viewport` | Get camera and viewport info |
455
-
456
- ## Manage Logs
457
-
458
- | Action | Description |
459
- |--------|-------------|
460
- | `get` | Get filtered logs |
461
- | `clear` | Clear log buffer |
462
- | `errors` | Get recent errors only |
463
-
464
- ## System Info
465
-
466
- | Action | Description |
467
- |--------|-------------|
468
- | `ping` | Test connection |
469
- | `connection` | Get server/plugin connection info |
470
- | `usage` | Get current tier (basic/pro) |
471
- | `place_info` | Get place ID, name, creator (Pro) |
472
- | `services` | List all Roblox services (Pro) |
473
- | `studio_settings` | Get Studio preferences (Pro) |
474
- | `play` | Start playtest in Play mode (Pro) |
475
- | `stop` | Stop current playtest (Pro) |
476
- | `pause` | Pause current playtest (Pro) |
477
- | `resume` | Resume paused playtest (Pro) |
478
- | `play_status` | Get current playtest status (Pro) |
479
- | `run_test` | Run a test script and return results (Pro) |
480
-
481
- ## Batch Execute
482
-
483
- Execute multiple commands in a single batch. Each command specifies a tool name and arguments. Commands execute sequentially with optional continue-on-error behavior.
484
-
485
- ## Execute Luau
486
-
487
- Execute arbitrary Luau code in Roblox Studio sandbox. Blocked services: HttpService, DataStoreService, MessagingService. Cannot access CoreGui/CorePackages.
488
-
489
- ---
490
-
491
- # Sync Deep Dive
492
-
493
- Sync connects Roblox Studio state and local files so AI can read and modify the full project context reliably.
494
-
495
- ## Why Sync matters
496
-
497
- Without Sync, AI only sees snippets pasted into chat. With Sync enabled, AI works from the whole project.
498
-
499
- - Apply refactors consistently across multiple scripts
500
- - Review risky changes quickly using history
501
- - Keep source-of-truth clear between Studio and local files
502
-
503
- ## How it works
504
-
505
- 1. Full Sync: initial mirror from Studio tree/instances to local files
506
- 2. Incremental Sync: continuous update of new changes
507
- 3. History/Status tracking: inspect what changed, when, and in which direction
508
-
509
- Sync data is stored under `{projectRoot}/weppy-project-sync/place_{placeId}/explorer`.
510
-
511
- ## Sync Capabilities
512
-
513
- - Sync direction: one-way (Studio -> Local) or bidirectional
514
- - Per-type Direction: Scripts, Values, Containers, Data, Services can be set independently
515
- - Per-type Apply Mode: Auto or Manual
516
- - Status/history APIs: track what changed, when, and in which direction
517
- - Multi-place sync: up to 3 places simultaneously
518
-
519
- ## Direction and Apply Mode
520
-
521
- ### Direction (per-type sync direction)
522
- - `forward`: Studio -> Local
523
- - `reverse`: Local -> Studio
524
- - `bidirectional`: both directions
525
-
526
- Types: `scripts`, `values`, `containers`, `data`, `services`.
527
-
528
- ### Apply Mode
529
- - `manual`: user confirms before applying to Studio
530
- - `auto`: detected changes are auto-applied
531
-
532
- ## Conflict Resolution
533
-
534
- When changes are detected on both Studio and local sides during bidirectional sync:
535
- - **Studio Priority**: overwrite with Studio state as the source of truth
536
- - **Local Priority**: apply local files to Studio
537
- - **Per-File**: choose which side takes priority for each file individually
538
-
539
- ## File format (v2 nested directory)
540
-
541
- Each Roblox instance is stored as its own directory:
542
-
543
- ```
544
- explorer/
545
- ├── Workspace/
546
- │ ├── _tree.json
547
- │ ├── Part/
548
- │ │ └── Part.props.json
549
- │ ├── MyScript/
550
- │ │ └── MyScript.server.luau
551
- │ └── Coins/
552
- │ └── Coins.value.json
553
- ```
554
-
555
- ---
556
-
557
- # Dashboard
558
-
559
- The MCP server provides a web dashboard for monitoring and managing the server in real time. It opens automatically in your browser when the MCP server starts.
560
-
561
- ```
562
- http://localhost:3002
563
- ```
564
-
565
- Set `DASHBOARD_AUTO_OPEN=false` to disable automatic opening.
566
-
567
- ## Pages
568
-
569
- | Page | Description |
570
- |------|-------------|
571
- | **Overview** | Server/Plugin/Agent/Sync status cards and recent game changes feed |
572
- | **Changelog** | Game change history — per-session cards, change summary, Before & After diff |
573
- | **Connection** | Server status, AI agent list, plugin connection info |
574
- | **Sync** | Sync status, direction settings, logs |
575
- | **Playtest** | Playtest status and test history |
576
- | **Tools** | Tool execution history, statistics, tier distribution |
577
- | **Settings** | License, log level, language |
578
-
579
- ## Connection States
580
-
581
- | State | Condition | Available Pages |
582
- |-------|-----------|-----------------|
583
- | **Server disconnected** | Server not connected | Reconnection waiting screen only |
584
- | **Server connected** | Server connected, plugin not connected | Connection, Tools, Settings |
585
- | **Studio connected** | Both server and plugin connected | All pages |
586
-
587
- ## Overview Page
588
-
589
- - **Status Cards**: Server, Plugin, Agent, Sync state at a glance
590
- - **Recent Game Changes**: Up to 20 most recent AI actions in Studio with category icons (Script, Instance, Property, Lighting, Terrain, Asset)
591
- - **Session Change Summary**: Aggregated change statistics by category for the current session
592
-
593
- ## Real-Time Updates
594
-
595
- The dashboard uses SSE (Server-Sent Events) for real-time data:
596
- - Server status polled every 5 seconds
597
- - Change feed and connection events streamed via SSE
598
- - Auto-reconnect after 3 seconds on SSE disconnect
599
-
600
- ---
601
-
602
- # Compatibility
603
-
604
- ## Supported AI Clients
605
-
606
- Claude Code, Claude Desktop, Cursor, Codex CLI, Codex Desktop, Gemini CLI, Antigravity, and any MCP-compatible client.
607
-
608
- ## System Requirements
609
-
610
- | Requirement | Minimum |
611
- |-------------|---------|
612
- | Node.js | 18.0.0+ |
613
- | Roblox Studio | Latest (keep auto-updated) |
614
- | OS | Windows 10+ or macOS 12+ |
615
- | Network | localhost:3002 must be accessible |
616
-
617
- ## Full Feature List
618
-
619
- - MCP tool execution: scripts, instances, properties, terrain, lighting, assets, audio, animation
620
- - Studio → Local one-way sync
621
- - Bidirectional sync (Local → Studio)
622
- - Per-type Direction and Apply Mode
623
- - Sync history and changelog
624
- - Multi-place support (up to 3 places)
625
- - Automated playtest: start/stop Play (F5) or Run (F8), inject test scripts, collect logs
626
- - Web dashboard at `http://localhost:3002`: connection status, tool history, sync state, changelog
627
- - Bulk operations (mass_create, mass_set, mass_get)
628
- - Advanced spatial queries (raycast, find_ground, find_spawn, analyze_walkable)
629
- - Terrain generation and fill (procedural, block, ball, cylinder, wedge)
630
- - Physics group management
631
- - Tween and animation control
632
- - Audio control
633
- - Lighting and atmosphere
634
- - Batch execution (multiple commands in one call)
635
- - Execute Luau (arbitrary Luau code in Studio sandbox)
636
-
637
- ---
638
-
639
- # Troubleshooting
640
-
641
- ## Plugin not connecting
642
-
643
- 1. Make sure the MCP server is running: `npx -y @weppy/roblox-mcp`
644
- 2. In Roblox Studio: Plugins tab → WEPPY → Connect
645
- 3. Confirm nothing is blocking `localhost:3002` (firewall, antivirus, VPN)
646
- 4. Try restarting both Roblox Studio and the MCP server
647
-
648
- ## MCP server not found by AI client
649
-
650
- 1. Verify your AI client config uses the correct command: `npx -y @weppy/roblox-mcp`
651
- 2. Ensure Node.js >= 18 is installed: `node --version`
652
- 3. On Windows, try running your terminal as Administrator if permission errors appear
653
-
654
- ## "Pro feature required" error
655
-
656
- The action you're requesting requires the Pro tier.
657
-
658
- ## Sync not working
659
-
660
- 1. Check sync status: ask AI `manage_sync status`
661
- 2. Ensure the plugin is connected before starting sync
662
- 3. For reverse sync (file → Studio), confirm Pro tier is active
663
-
664
- ## Common error messages
665
-
666
- | Error | Cause | Fix |
667
- |-------|-------|-----|
668
- | `ECONNREFUSED localhost:3002` | MCP server not running | Run `npx -y @weppy/roblox-mcp` |
669
- | `Timeout waiting for plugin` | Studio plugin not connected | Click Connect in plugin panel |
670
- | `Rate limit exceeded` | Over 450 requests/min | Reduce or batch requests |
671
- | `Forbidden path` | Accessing CoreGui/CorePackages | Use valid instance paths only |
672
-
673
- ## Still stuck?
674
-
675
- [Open a Discussion](https://github.com/hope1026/weppy-roblox-mcp/discussions) with your OS, Node.js version, AI client, and error details.
676
-
677
- ---
678
-
679
- # Security
680
-
681
- - Localhost only: 127.0.0.1:3002
682
- - Forbidden paths: CoreGui, CorePackages, RobloxScript
683
- - Rate limiting: 450 requests/minute
684
- - Timeout: 30 seconds per operation
685
- - Blocked in Execute Luau: HttpService, DataStoreService, MessagingService
686
-
687
- ---
688
-
689
- # Links
690
-
691
- - GitHub: https://github.com/hope1026/weppy-roblox-mcp
692
- - npm: https://www.npmjs.com/package/@weppy/roblox-mcp
693
- - Issues: https://github.com/hope1026/weppy-roblox-mcp/issues
694
- - Discussions: https://github.com/hope1026/weppy-roblox-mcp/discussions