robloxstudio-mcp 2.2.7 → 2.3.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.
package/dist/index.js CHANGED
@@ -841,7 +841,7 @@ class RobloxStudioMCPServer {
841
841
  },
842
842
  {
843
843
  name: 'start_playtest',
844
- description: 'Start a play test session in Roblox Studio. Begins capturing output (print/warn/error) from LogService. The test runs asynchronously; use get_playtest_output to read output and stop_playtest to end the session.',
844
+ description: 'Start a play test session in Roblox Studio. Captures all output (print/warn/error) from LogService. Use get_playtest_output to poll for logs while running, then stop_playtest to end. Typical workflow: add print/warn statements to code, start playtest, poll output to observe behavior, stop, analyze logs, fix issues with set_script_source, and repeat until correct.',
845
845
  inputSchema: {
846
846
  type: 'object',
847
847
  properties: {
@@ -856,7 +856,7 @@ class RobloxStudioMCPServer {
856
856
  },
857
857
  {
858
858
  name: 'stop_playtest',
859
- description: 'Stop the play test session in Roblox Studio and return all captured output messages.',
859
+ description: 'Stop the running play test session and return all captured output. Call this after observing enough output via get_playtest_output, or when you need to make code changes before the next run.',
860
860
  inputSchema: {
861
861
  type: 'object',
862
862
  properties: {}
@@ -864,7 +864,7 @@ class RobloxStudioMCPServer {
864
864
  },
865
865
  {
866
866
  name: 'get_playtest_output',
867
- description: 'Get the current output buffer and test status without stopping the test. Returns isRunning, output messages, and any test result or error.',
867
+ description: 'Poll the output buffer without stopping the test. Returns isRunning, captured print/warn/error messages, and any test result. Call repeatedly to monitor a running session — useful for waiting on specific log output or checking if errors have occurred.',
868
868
  inputSchema: {
869
869
  type: 'object',
870
870
  properties: {}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "robloxstudio-mcp",
3
- "version": "2.2.7",
3
+ "version": "2.3.0",
4
4
  "description": "MCP Server for Roblox Studio Integration - Access Studio data, scripts, and objects through AI tools",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
@@ -23,8 +23,6 @@
23
23
  "test": "jest",
24
24
  "test:watch": "jest --watch",
25
25
  "test:coverage": "jest --coverage",
26
- "test:e2e": "lune run tests/luau/e2e.luau",
27
- "test:all": "npm test && npm run test:e2e",
28
26
  "prepublishOnly": "npm run build:all"
29
27
  },
30
28
  "keywords": [
@@ -440,7 +440,7 @@ local function checkForUpdates()
440
440
  local latestVersion = data.version
441
441
  if Utils.compareVersions(State.CURRENT_VERSION, latestVersion) < 0 then
442
442
  local ui = UI.getElements()
443
- ui.updateBannerText.Text = `Update available: v{latestVersion}`
443
+ ui.updateBannerText.Text = `v{latestVersion} available - github.com/boshyxd/robloxstudio-mcp`
444
444
  ui.updateBanner.Visible = true
445
445
  ui.contentFrame.Position = UDim2.new(0, 8, 0, 92)
446
446
  ui.contentFrame.Size = UDim2.new(1, -16, 1, -100)
@@ -3027,11 +3027,47 @@ return {
3027
3027
  local TS = require(script.Parent.Parent.Parent.include.RuntimeLib)
3028
3028
  local LogService = TS.import(script, script.Parent.Parent.Parent, "node_modules", "@rbxts", "services").LogService
3029
3029
  local StudioTestService = game:GetService("StudioTestService")
3030
+ local ServerScriptService = game:GetService("ServerScriptService")
3031
+ local ScriptEditorService = game:GetService("ScriptEditorService")
3032
+ local STOP_SIGNAL = "__MCP_STOP__"
3030
3033
  local testRunning = false
3031
3034
  local outputBuffer = {}
3032
3035
  local logConnection
3033
3036
  local testResult
3034
3037
  local testError
3038
+ local stopListenerScript
3039
+ local function buildStopListenerSource()
3040
+ return `local LogService = game:GetService("LogService")\
3041
+ local StudioTestService = game:GetService("StudioTestService")\
3042
+ LogService.MessageOut:Connect(function(message)\
3043
+ if message == "{STOP_SIGNAL}" then\
3044
+ pcall(function() StudioTestService:EndTest("stopped_by_mcp") end)\
3045
+ end\
3046
+ end)`
3047
+ end
3048
+ local function injectStopListener()
3049
+ local listener = Instance.new("Script")
3050
+ listener.Name = "__MCP_StopListener"
3051
+ listener.Parent = ServerScriptService
3052
+ local source = buildStopListenerSource()
3053
+ local seOk = pcall(function()
3054
+ ScriptEditorService:UpdateSourceAsync(listener, function()
3055
+ return source
3056
+ end)
3057
+ end)
3058
+ if not seOk then
3059
+ listener.Source = source
3060
+ end
3061
+ stopListenerScript = listener
3062
+ end
3063
+ local function cleanupStopListener()
3064
+ if stopListenerScript then
3065
+ pcall(function()
3066
+ return stopListenerScript:Destroy()
3067
+ end)
3068
+ stopListenerScript = nil
3069
+ end
3070
+ end
3035
3071
  local function startPlaytest(requestData)
3036
3072
  local mode = requestData.mode
3037
3073
  if mode ~= "play" and mode ~= "run" then
@@ -3048,7 +3084,11 @@ local function startPlaytest(requestData)
3048
3084
  outputBuffer = {}
3049
3085
  testResult = nil
3050
3086
  testError = nil
3087
+ cleanupStopListener()
3051
3088
  logConnection = LogService.MessageOut:Connect(function(message, messageType)
3089
+ if message == STOP_SIGNAL then
3090
+ return nil
3091
+ end
3052
3092
  local _outputBuffer = outputBuffer
3053
3093
  local _arg0 = {
3054
3094
  message = message,
@@ -3057,6 +3097,12 @@ local function startPlaytest(requestData)
3057
3097
  }
3058
3098
  table.insert(_outputBuffer, _arg0)
3059
3099
  end)
3100
+ local injected, injErr = pcall(function()
3101
+ return injectStopListener()
3102
+ end)
3103
+ if not injected then
3104
+ warn(`[MCP] Failed to inject stop listener: {injErr}`)
3105
+ end
3060
3106
  task.spawn(function()
3061
3107
  local ok, result = pcall(function()
3062
3108
  if mode == "play" then
@@ -3074,6 +3120,7 @@ local function startPlaytest(requestData)
3074
3120
  logConnection = nil
3075
3121
  end
3076
3122
  testRunning = false
3123
+ cleanupStopListener()
3077
3124
  end)
3078
3125
  return {
3079
3126
  success = true,
@@ -3086,14 +3133,7 @@ local function stopPlaytest(_requestData)
3086
3133
  error = "No test is currently running",
3087
3134
  }
3088
3135
  end
3089
- local ok, err = pcall(function()
3090
- StudioTestService:EndTest("stopped_by_mcp")
3091
- end)
3092
- if not ok then
3093
- return {
3094
- error = `EndTest failed: {err}`,
3095
- }
3096
- end
3136
+ warn(STOP_SIGNAL)
3097
3137
  local _object = {
3098
3138
  success = true,
3099
3139
  }
@@ -3103,7 +3143,7 @@ local function stopPlaytest(_requestData)
3103
3143
  table.move(outputBuffer, 1, #outputBuffer, _length + 1, _array)
3104
3144
  _object[_left] = _array
3105
3145
  _object.outputCount = #outputBuffer
3106
- _object.message = "Playtest stopped."
3146
+ _object.message = "Playtest stop signal sent."
3107
3147
  return _object
3108
3148
  end
3109
3149
  local function getPlaytestOutput(_requestData)
@@ -3133,7 +3173,7 @@ return {
3133
3173
  <Properties>
3134
3174
  <string name="Name">State</string>
3135
3175
  <string name="Source"><![CDATA[-- Compiled with roblox-ts v3.0.0
3136
- local CURRENT_VERSION = "2.2.7"
3176
+ local CURRENT_VERSION = "2.3.0"
3137
3177
  local MAX_CONNECTIONS = 5
3138
3178
  local BASE_PORT = 58741
3139
3179
  local activeTabIndex = 0
@@ -3566,28 +3606,15 @@ local function init(pluginRef)
3566
3606
  updateBannerCorner.CornerRadius = UDim.new(0, 3)
3567
3607
  updateBannerCorner.Parent = updateBanner
3568
3608
  local updateBannerText = Instance.new("TextLabel")
3569
- updateBannerText.Size = UDim2.new(1, -54, 1, 0)
3609
+ updateBannerText.Size = UDim2.new(1, -16, 1, 0)
3570
3610
  updateBannerText.Position = UDim2.new(0, 8, 0, 0)
3571
3611
  updateBannerText.BackgroundTransparency = 1
3572
- updateBannerText.Text = "Update available: v0.0.0"
3612
+ updateBannerText.Text = ""
3573
3613
  updateBannerText.TextColor3 = C.yellow
3574
3614
  updateBannerText.TextSize = 9
3575
3615
  updateBannerText.Font = Enum.Font.GothamMedium
3576
3616
  updateBannerText.TextXAlignment = Enum.TextXAlignment.Left
3577
3617
  updateBannerText.Parent = updateBanner
3578
- local updateLink = Instance.new("TextButton")
3579
- updateLink.Size = UDim2.new(0, 40, 0, 16)
3580
- updateLink.Position = UDim2.new(1, -46, 0, 4)
3581
- updateLink.BackgroundColor3 = C.yellow
3582
- updateLink.BackgroundTransparency = 0.85
3583
- updateLink.Text = "Get"
3584
- updateLink.TextColor3 = C.yellow
3585
- updateLink.TextSize = 9
3586
- updateLink.Font = Enum.Font.GothamBold
3587
- updateLink.Parent = updateBanner
3588
- local updateLinkCorner = Instance.new("UICorner")
3589
- updateLinkCorner.CornerRadius = UDim.new(0, 3)
3590
- updateLinkCorner.Parent = updateLink
3591
3618
  local contentY = 66
3592
3619
  local contentFrame = Instance.new("ScrollingFrame")
3593
3620
  contentFrame.Size = UDim2.new(1, -16, 1, -(contentY + 8))
@@ -3770,22 +3797,6 @@ local function init(pluginRef)
3770
3797
  setButtonConnect(connectButton, connectStroke)
3771
3798
  end
3772
3799
  end)
3773
- updateLink.Activated:Connect(function()
3774
- local url = "https://github.com/boshyxd/robloxstudio-mcp/releases"
3775
- local env = getfenv(0)
3776
- local _value = env.setclipboard
3777
- if _value ~= 0 and _value == _value and _value ~= "" and _value then
3778
- pcall(function()
3779
- env.setclipboard(url)
3780
- end)
3781
- end
3782
- updateBannerText.Text = "Link copied!"
3783
- task.delay(3, function()
3784
- if updateBanner.Visible then
3785
- updateBannerText.Text = "Update available - check GitHub"
3786
- end
3787
- end)
3788
- end)
3789
3800
  elements = {
3790
3801
  screenGui = screenGui,
3791
3802
  mainFrame = mainFrame,
@@ -365,7 +365,7 @@ function checkForUpdates() {
365
365
  const latestVersion = data.version;
366
366
  if (Utils.compareVersions(State.CURRENT_VERSION, latestVersion) < 0) {
367
367
  const ui = UI.getElements();
368
- ui.updateBannerText.Text = `Update available: v${latestVersion}`;
368
+ ui.updateBannerText.Text = `v${latestVersion} available - github.com/boshyxd/robloxstudio-mcp`;
369
369
  ui.updateBanner.Visible = true;
370
370
  ui.contentFrame.Position = new UDim2(0, 8, 0, 92);
371
371
  ui.contentFrame.Size = new UDim2(1, -16, 1, -100);
@@ -362,31 +362,16 @@ function init(pluginRef: Plugin) {
362
362
  updateBannerCorner.Parent = updateBanner;
363
363
 
364
364
  const updateBannerText = new Instance("TextLabel");
365
- updateBannerText.Size = new UDim2(1, -54, 1, 0);
365
+ updateBannerText.Size = new UDim2(1, -16, 1, 0);
366
366
  updateBannerText.Position = new UDim2(0, 8, 0, 0);
367
367
  updateBannerText.BackgroundTransparency = 1;
368
- updateBannerText.Text = "Update available: v0.0.0";
368
+ updateBannerText.Text = "";
369
369
  updateBannerText.TextColor3 = C.yellow;
370
370
  updateBannerText.TextSize = 9;
371
371
  updateBannerText.Font = Enum.Font.GothamMedium;
372
372
  updateBannerText.TextXAlignment = Enum.TextXAlignment.Left;
373
373
  updateBannerText.Parent = updateBanner;
374
374
 
375
- const updateLink = new Instance("TextButton");
376
- updateLink.Size = new UDim2(0, 40, 0, 16);
377
- updateLink.Position = new UDim2(1, -46, 0, 4);
378
- updateLink.BackgroundColor3 = C.yellow;
379
- updateLink.BackgroundTransparency = 0.85;
380
- updateLink.Text = "Get";
381
- updateLink.TextColor3 = C.yellow;
382
- updateLink.TextSize = 9;
383
- updateLink.Font = Enum.Font.GothamBold;
384
- updateLink.Parent = updateBanner;
385
-
386
- const updateLinkCorner = new Instance("UICorner");
387
- updateLinkCorner.CornerRadius = new UDim(0, 3);
388
- updateLinkCorner.Parent = updateLink;
389
-
390
375
  const contentY = 66;
391
376
  const contentFrame = new Instance("ScrollingFrame");
392
377
  contentFrame.Size = new UDim2(1, -16, 1, -(contentY + 8));
@@ -580,21 +565,6 @@ function init(pluginRef: Plugin) {
580
565
  }
581
566
  });
582
567
 
583
- updateLink.Activated.Connect(() => {
584
- const url = "https://github.com/boshyxd/robloxstudio-mcp/releases";
585
- const env = getfenv(0) as unknown as Record<string, unknown>;
586
- if (env["setclipboard"]) {
587
- pcall(() => {
588
- (env["setclipboard"] as (s: string) => void)(url);
589
- });
590
- }
591
- updateBannerText.Text = "Link copied!";
592
- task.delay(3, () => {
593
- if (updateBanner.Visible) {
594
- updateBannerText.Text = "Update available - check GitHub";
595
- }
596
- });
597
- });
598
568
 
599
569
  elements = {
600
570
  screenGui, mainFrame, contentFrame, statusLabel, detailStatusLabel,
@@ -1,6 +1,10 @@
1
1
  import { LogService } from "@rbxts/services";
2
2
 
3
3
  const StudioTestService = game.GetService("StudioTestService");
4
+ const ServerScriptService = game.GetService("ServerScriptService");
5
+ const ScriptEditorService = game.GetService("ScriptEditorService");
6
+
7
+ const STOP_SIGNAL = "__MCP_STOP__";
4
8
 
5
9
  interface OutputEntry {
6
10
  message: string;
@@ -13,6 +17,40 @@ let outputBuffer: OutputEntry[] = [];
13
17
  let logConnection: RBXScriptConnection | undefined;
14
18
  let testResult: unknown;
15
19
  let testError: string | undefined;
20
+ let stopListenerScript: Script | undefined;
21
+
22
+ function buildStopListenerSource(): string {
23
+ return `local LogService = game:GetService("LogService")
24
+ local StudioTestService = game:GetService("StudioTestService")
25
+ LogService.MessageOut:Connect(function(message)
26
+ if message == "${STOP_SIGNAL}" then
27
+ pcall(function() StudioTestService:EndTest("stopped_by_mcp") end)
28
+ end
29
+ end)`;
30
+ }
31
+
32
+ function injectStopListener() {
33
+ const listener = new Instance("Script");
34
+ listener.Name = "__MCP_StopListener";
35
+ listener.Parent = ServerScriptService;
36
+
37
+ const source = buildStopListenerSource();
38
+ const [seOk] = pcall(() => {
39
+ ScriptEditorService.UpdateSourceAsync(listener, () => source);
40
+ });
41
+ if (!seOk) {
42
+ (listener as unknown as { Source: string }).Source = source;
43
+ }
44
+
45
+ stopListenerScript = listener;
46
+ }
47
+
48
+ function cleanupStopListener() {
49
+ if (stopListenerScript) {
50
+ pcall(() => stopListenerScript!.Destroy());
51
+ stopListenerScript = undefined;
52
+ }
53
+ }
16
54
 
17
55
  function startPlaytest(requestData: Record<string, unknown>) {
18
56
  const mode = requestData.mode as string | undefined;
@@ -30,7 +68,10 @@ function startPlaytest(requestData: Record<string, unknown>) {
30
68
  testResult = undefined;
31
69
  testError = undefined;
32
70
 
71
+ cleanupStopListener();
72
+
33
73
  logConnection = LogService.MessageOut.Connect((message, messageType) => {
74
+ if (message === STOP_SIGNAL) return;
34
75
  outputBuffer.push({
35
76
  message,
36
77
  messageType: messageType.Name,
@@ -38,6 +79,11 @@ function startPlaytest(requestData: Record<string, unknown>) {
38
79
  });
39
80
  });
40
81
 
82
+ const [injected, injErr] = pcall(() => injectStopListener());
83
+ if (!injected) {
84
+ warn(`[MCP] Failed to inject stop listener: ${injErr}`);
85
+ }
86
+
41
87
  task.spawn(() => {
42
88
  const [ok, result] = pcall(() => {
43
89
  if (mode === "play") {
@@ -57,6 +103,8 @@ function startPlaytest(requestData: Record<string, unknown>) {
57
103
  logConnection = undefined;
58
104
  }
59
105
  testRunning = false;
106
+
107
+ cleanupStopListener();
60
108
  });
61
109
 
62
110
  return { success: true, message: `Playtest started in ${mode} mode` };
@@ -67,19 +115,13 @@ function stopPlaytest(_requestData: Record<string, unknown>) {
67
115
  return { error: "No test is currently running" };
68
116
  }
69
117
 
70
- const [ok, err] = pcall(() => {
71
- (StudioTestService as unknown as { EndTest(reason: string): void }).EndTest("stopped_by_mcp");
72
- });
73
-
74
- if (!ok) {
75
- return { error: `EndTest failed: ${err}` };
76
- }
118
+ warn(STOP_SIGNAL);
77
119
 
78
120
  return {
79
121
  success: true,
80
122
  output: [...outputBuffer],
81
123
  outputCount: outputBuffer.size(),
82
- message: "Playtest stopped.",
124
+ message: "Playtest stop signal sent.",
83
125
  };
84
126
  }
85
127
 
@@ -13,7 +13,7 @@
13
13
  "strict": true,
14
14
  "target": "ESNext",
15
15
  "typeRoots": ["node_modules/@rbxts"],
16
- "rootDir": "ts-src",
16
+ "rootDir": "src",
17
17
  "outDir": "out",
18
18
  "declaration": false
19
19
  }
File without changes
File without changes
File without changes