rbxstudio-mcp 1.9.0

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 (43) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +319 -0
  3. package/dist/__tests__/bridge-service.test.d.ts +2 -0
  4. package/dist/__tests__/bridge-service.test.d.ts.map +1 -0
  5. package/dist/__tests__/bridge-service.test.js +109 -0
  6. package/dist/__tests__/bridge-service.test.js.map +1 -0
  7. package/dist/__tests__/http-server.test.d.ts +2 -0
  8. package/dist/__tests__/http-server.test.d.ts.map +1 -0
  9. package/dist/__tests__/http-server.test.js +193 -0
  10. package/dist/__tests__/http-server.test.js.map +1 -0
  11. package/dist/__tests__/integration.test.d.ts +2 -0
  12. package/dist/__tests__/integration.test.d.ts.map +1 -0
  13. package/dist/__tests__/integration.test.js +182 -0
  14. package/dist/__tests__/integration.test.js.map +1 -0
  15. package/dist/__tests__/smoke.test.d.ts +2 -0
  16. package/dist/__tests__/smoke.test.d.ts.map +1 -0
  17. package/dist/__tests__/smoke.test.js +63 -0
  18. package/dist/__tests__/smoke.test.js.map +1 -0
  19. package/dist/bridge-service.d.ts +17 -0
  20. package/dist/bridge-service.d.ts.map +1 -0
  21. package/dist/bridge-service.js +77 -0
  22. package/dist/bridge-service.js.map +1 -0
  23. package/dist/http-server.d.ts +4 -0
  24. package/dist/http-server.d.ts.map +1 -0
  25. package/dist/http-server.js +290 -0
  26. package/dist/http-server.js.map +1 -0
  27. package/dist/index.d.ts +18 -0
  28. package/dist/index.d.ts.map +1 -0
  29. package/dist/index.js +1102 -0
  30. package/dist/index.js.map +1 -0
  31. package/dist/tools/index.d.ts +273 -0
  32. package/dist/tools/index.d.ts.map +1 -0
  33. package/dist/tools/index.js +628 -0
  34. package/dist/tools/index.js.map +1 -0
  35. package/dist/tools/studio-client.d.ts +7 -0
  36. package/dist/tools/studio-client.d.ts.map +1 -0
  37. package/dist/tools/studio-client.js +19 -0
  38. package/dist/tools/studio-client.js.map +1 -0
  39. package/package.json +69 -0
  40. package/studio-plugin/INSTALLATION.md +150 -0
  41. package/studio-plugin/MCPPlugin.rbxmx +3253 -0
  42. package/studio-plugin/plugin.json +10 -0
  43. package/studio-plugin/plugin.luau +3584 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"studio-client.js","sourceRoot":"","sources":["../../src/tools/studio-client.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,gBAAgB;IACnB,MAAM,CAAgB;IAE9B,YAAY,MAAqB;QAC/B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,QAAgB,EAAE,IAAS;QACvC,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YAC/D,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,KAAK,iBAAiB,EAAE,CAAC;gBAClE,MAAM,IAAI,KAAK,CACb,gGAAgG,CACjG,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF"}
package/package.json ADDED
@@ -0,0 +1,69 @@
1
+ {
2
+ "name": "rbxstudio-mcp",
3
+ "version": "1.9.0",
4
+ "description": "MCP Server for Roblox Studio Integration - Access Studio data, scripts, and objects through AI tools",
5
+ "main": "dist/index.js",
6
+ "type": "module",
7
+ "bin": {
8
+ "rbxstudio-mcp": "dist/index.js"
9
+ },
10
+ "files": [
11
+ "dist/**/*",
12
+ "studio-plugin/**/*",
13
+ "README.md"
14
+ ],
15
+ "scripts": {
16
+ "build": "tsc",
17
+ "dev": "tsx src/index.ts",
18
+ "start": "node dist/index.js",
19
+ "lint": "eslint src/**/*.ts",
20
+ "typecheck": "tsc --noEmit",
21
+ "test": "jest",
22
+ "test:watch": "jest --watch",
23
+ "test:coverage": "jest --coverage",
24
+ "prepublishOnly": "npm run build"
25
+ },
26
+ "keywords": [
27
+ "mcp",
28
+ "roblox",
29
+ "studio",
30
+ "ai",
31
+ "model-context-protocol",
32
+ "game-development"
33
+ ],
34
+ "author": "",
35
+ "license": "MIT",
36
+ "repository": {
37
+ "type": "git",
38
+ "url": "https://github.com/boshyxd/robloxstudio-mcp.git"
39
+ },
40
+ "homepage": "https://github.com/boshyxd/robloxstudio-mcp#readme",
41
+ "bugs": {
42
+ "url": "https://github.com/boshyxd/robloxstudio-mcp/issues"
43
+ },
44
+ "dependencies": {
45
+ "@modelcontextprotocol/sdk": "^0.6.0",
46
+ "cors": "^2.8.5",
47
+ "express": "^4.18.2",
48
+ "node-fetch": "^3.3.2",
49
+ "uuid": "^9.0.1",
50
+ "ws": "^8.14.2"
51
+ },
52
+ "devDependencies": {
53
+ "@types/cors": "^2.8.17",
54
+ "@types/express": "^4.17.21",
55
+ "@types/jest": "^29.5.11",
56
+ "@types/node": "^20.10.0",
57
+ "@types/supertest": "^6.0.2",
58
+ "@types/uuid": "^9.0.7",
59
+ "@types/ws": "^8.5.10",
60
+ "@typescript-eslint/eslint-plugin": "^7.0.0",
61
+ "@typescript-eslint/parser": "^7.0.0",
62
+ "eslint": "^8.57.0",
63
+ "jest": "^29.7.0",
64
+ "supertest": "^6.3.3",
65
+ "ts-jest": "^29.1.1",
66
+ "tsx": "^4.6.0",
67
+ "typescript": "^5.3.2"
68
+ }
69
+ }
@@ -0,0 +1,150 @@
1
+ # Roblox Studio MCP Plugin Installation Guide
2
+
3
+ Complete your AI assistant integration with this easy-to-install Studio plugin. Works with Claude Code, Claude Desktop, and any MCP-compatible AI.
4
+
5
+ ## 🚀 Quick Installation
6
+
7
+ ### **Method 1: Roblox Creator Store** ⭐ (Easiest)
8
+ 1. **Install from Creator Store:**
9
+ - Visit: https://create.roblox.com/store/asset/132985143757536
10
+ - Click **"Install"** button
11
+ - Plugin automatically opens in Studio
12
+
13
+ 2. **No restart needed** - Plugin appears immediately in toolbar!
14
+
15
+ ### **Method 2: Direct Download**
16
+ 1. **Download the plugin:**
17
+ - **GitHub Release**: [Download MCPPlugin.rbxmx](https://github.com/boshyxd/robloxstudio-mcp/releases/latest/download/MCPPlugin.rbxmx)
18
+ - This is the official Roblox plugin format
19
+
20
+ 2. **Install to plugins folder:**
21
+ - **Windows**: Save to `%LOCALAPPDATA%/Roblox/Plugins/`
22
+ - **macOS**: Save to `~/Documents/Roblox/Plugins/`
23
+ - **Or use Studio**: Plugins tab → Plugins Folder → drop the file
24
+
25
+ 3. **Restart Roblox Studio** - Plugin appears automatically!
26
+
27
+ ### **Method 3: Save as Local Plugin**
28
+ 1. **Copy the plugin code:**
29
+ - Open [plugin.luau](https://github.com/boshyxd/robloxstudio-mcp/blob/main/studio-plugin/plugin.luau) on GitHub
30
+ - Copy all the code (Ctrl+A, Ctrl+C)
31
+
32
+ 2. **Create in Studio:**
33
+ - Open Roblox Studio with any place
34
+ - Create a new Script in ServerScriptService
35
+ - Paste the plugin code
36
+ - **Right-click script** → **"Save as Local Plugin..."**
37
+ - Name it "Roblox Studio MCP"
38
+
39
+ 3. **Plugin appears immediately** in your toolbar!
40
+
41
+ ## ⚙️ Setup & Configuration
42
+
43
+ ### **1. Enable HTTP Requests (Required)**
44
+ 🔐 **Game Settings** → **Security** → ✅ **"Allow HTTP Requests"**
45
+
46
+ ### **2. Activate the Plugin**
47
+ 🔘 **Plugins toolbar** → Click **"MCP Server"** button
48
+ - 🟢 **Green status** = Connected and ready
49
+ - 🔴 **Red status** = Disconnected (normal until MCP server runs)
50
+
51
+ ### **3. Install MCP Server**
52
+ Choose your AI assistant:
53
+
54
+ **For Claude Code:**
55
+ ```bash
56
+ claude mcp add robloxstudio-mcp
57
+ ```
58
+
59
+ **For Claude Desktop/Others:**
60
+ ```json
61
+ {
62
+ "mcpServers": {
63
+ "robloxstudio-mcp": {
64
+ "command": "npx",
65
+ "args": ["-y", "robloxstudio-mcp"]
66
+ }
67
+ }
68
+ }
69
+ ```
70
+
71
+ <details>
72
+ <summary>Note for native Windows users</summary>
73
+ If you encounter issues, you may need to run it through `cmd`. Update your configuration like this:
74
+
75
+ ```json
76
+ {
77
+ "mcpServers": {
78
+ "robloxstudio-mcp": {
79
+ "command": "cmd",
80
+ "args": ["/c", "npx", "-y", "robloxstudio-mcp@latest"]
81
+ }
82
+ }
83
+ }
84
+ ```
85
+ </details>
86
+
87
+ ## 🎯 How It Works
88
+
89
+ 1. **🤖 AI calls tool** → MCP server queues request
90
+ 2. **🔄 Plugin polls** every 500ms for work
91
+ 3. **⚙️ Plugin executes** Studio API calls
92
+ 4. **📤 Plugin responds** with extracted data
93
+ 5. **✅ AI receives** comprehensive Studio information
94
+
95
+ **Available Tools:** 15 specialized tools for file trees, dependencies, properties, project structure, and more!
96
+
97
+ ## 🔧 Troubleshooting
98
+
99
+ ### **Plugin Missing from Toolbar**
100
+ - ✅ Verify file saved to correct plugins folder
101
+ - 🔄 Restart Roblox Studio completely
102
+ - 📝 Check Output window for error messages
103
+
104
+ ### **"HTTP 403 Forbidden" Errors**
105
+ - ✅ Enable "Allow HTTP Requests" in Game Settings → Security
106
+ - 🔍 Verify MCP server is running (status should show connected)
107
+
108
+ ### **Plugin Shows "Disconnected"**
109
+ - ✅ **Normal behavior** when MCP server isn't running
110
+ - 🔘 Click "MCP Server" button to activate
111
+ - 📡 Install MCP server using commands above
112
+
113
+ ### **Connection Issues**
114
+ - 🔥 Check Windows Firewall isn't blocking localhost:3002
115
+ - 🖥️ Restart both Studio and your AI assistant
116
+ - 📝 Check Studio Output window for detailed error messages
117
+
118
+ ## 🔒 Security & Privacy
119
+
120
+ - 🏠 **Local-only**: All communication stays on your machine
121
+ - 🚫 **No external servers**: Plugin only talks to localhost
122
+ - 👁️ **Read-only access**: Plugin extracts data but never modifies your place
123
+ - 🔐 **No data collection**: Your projects remain private
124
+
125
+ ## 🛠️ Advanced Usage
126
+
127
+ ### **Plugin Features**
128
+ - **Real-time status**: Visual connection indicators
129
+ - **Smart polling**: Exponential backoff for failed connections
130
+ - **Error recovery**: Automatic retry with timeout handling
131
+ - **Debug friendly**: Comprehensive logging in Output window
132
+
133
+ ### **Customization**
134
+ - 📝 **Server URL**: Modify in plugin UI (default: http://localhost:3002)
135
+ - ⏱️ **Poll interval**: 500ms default (editable in code)
136
+ - 🔧 **Timeout settings**: 30-second request timeouts
137
+
138
+ ### **Development Mode**
139
+ ```lua
140
+ -- Enable debug logging in plugin code:
141
+ local DEBUG_MODE = true
142
+ ```
143
+
144
+ ## 💡 Pro Tips
145
+
146
+ - 🖥️ **Keep Studio open** while using AI assistants
147
+ - 🔄 **Plugin auto-connects** when MCP server starts
148
+ - 📊 **Monitor status** via the dock widget
149
+ - 🎯 **Use AI tools** to explore game architecture, find bugs, analyze dependencies
150
+ - 🚀 **Perfect for** code reviews, debugging, and understanding complex projects!