Prerequisites
Before you begin, ensure you have:- Node.js (v20 or higher)
- npm (comes with Node.js)
- Git for cloning the repository
- Roblox Studio installed
Clone the Repository
Clone the repository from GitHub:Install Dependencies
Install all required packages:- MCP SDK for Model Context Protocol support
- Express and CORS for HTTP server
- TypeScript and build tools
- Development dependencies (ESLint, Jest, etc.)
Development Workflow
Run the Development Server
Start the MCP server with hot reload:- Runs the TypeScript source directly using
tsx - Enables hot module reloading
- Starts the HTTP bridge on port 3002
- Provides real-time debugging output
Build for Production
Compile TypeScript to JavaScript:dist/ directory:
dist/index.js- Main MCP serverdist/http-server.js- HTTP bridge serverdist/bridge-service.js- Request queue managerdist/tools/- MCP tool implementations
Run the Built Server
After building, run the production version:Project Structure
Key Directories
src/
TypeScript source code for the MCP server:
- Entry point: Exposes 37+ tools via MCP stdio protocol
- HTTP bridge: Communicates with Roblox Studio plugin
- Tool implementations: File system, properties, scripting, etc.
dist/
Compiled JavaScript files (generated by npm run build):
- Ready for production deployment
- Used by
npm startcommand - Included in npm package distribution
studio-plugin/
Roblox Studio plugin that bridges AI commands to Studio APIs:
- Polls HTTP server for pending requests
- Executes Studio API calls
- Returns data to MCP server
Code Quality Tools
Linting
Run ESLint to check code quality:- TypeScript best practices
- Code style consistency
- Potential bugs and errors
Type Checking
Validate TypeScript types without compiling:tsc --noEmit to check for:
- Type errors
- Invalid type assignments
- Missing type definitions
Next Steps
Testing
Learn how to run unit tests and E2E tests
Plugin Development
Work on the Roblox Studio plugin
Common Development Tasks
Clean Build
Remove compiled files and rebuild:Watch Mode for Testing
Run tests in watch mode during development:Update Dependencies
Check for and update outdated packages:Troubleshooting
Port Already in Use
If port 3002 is already in use:TypeScript Errors
If you encounter TypeScript errors:- Ensure you’re using Node.js v20+
- Delete
node_modulesand reinstall: - Check TypeScript version:
Plugin Not Connecting
If the Studio plugin can’t connect:- Verify the dev server is running
- Check that HTTP requests are enabled in Studio
- Confirm the plugin is using the correct URL (localhost:3002)
- Check firewall settings