Melo
An agentic MCP server for Roblox Studio that provides over 45 tools for script diffing, playtest automation, and bulk instance manipulation. It enables AI agents to manage full development cycles within Roblox, including transaction-safe batch operations and real-time script reviews.
README
♪ Melo
Agentic Roblox Studio MCP — script diffs, bulk ops, playtest automation, and a cat that sleeps.
Melo is a next-generation MCP server + Studio plugin that combines the best of BoshyXD's community MCP (39+ tools, bulk ops, grep, builds library) with Roblox's official MCP (playtest automation, virtual input, multi-instance) — then pushes beyond both.
What makes Melo different
- Script diff review — GitHub-style inline diffs inside the Studio plugin. Accept/reject individual hunks before they commit. Rejected hunks feed back as context so the agent can iterate.
- 45+ tools — the full superset of both MCPs, unified in one package.
- Transaction-safe batch ops — mass operations rollback atomically on failure.
- Animated mascot — a sleeping cat that wakes up when the agent is working. Because why not.
- Activity feed — real-time log of every MCP tool call with timing and status.
- Mode system — switch between Full, Inspector (read-only), and Sandbox from the plugin.
- Agentic loop support — auto-accept mode for unattended plan → write → test → fix cycles.
Quick start
1. Install the MCP server
# Claude Code
claude mcp add melo -- npx -y melo-mcp-server@latest
# Or in your MCP config (Claude Desktop, Cursor, etc.)
{
"mcpServers": {
"melo": {
"command": "npx",
"args": ["-y", "melo-mcp-server@latest"]
}
}
}
2. Install the Studio plugin
# Build and install the .rbxmx plugin automatically
npm run install-plugin --workspace=packages/server
This builds MeloMCP.rbxmx and copies it to your local plugins folder:
- macOS:
~/Documents/Roblox/Plugins/ - Windows:
%LOCALAPPDATA%/Roblox/Plugins/
3. Enable HTTP requests
Game Settings → Security → ✅ Allow HTTP Requests
4. Connect
Click the "Melo" button in the Plugins toolbar. The cat should wake up.
Architecture
┌─────────────────────┐ stdio ┌──────────────────────┐
│ Claude Code CLI │◄────────────►│ Melo MCP Server │
│ (or any MCP │ │ (TypeScript/Node) │
│ client) │ │ │
└─────────────────────┘ │ ┌────────────────┐ │
│ │ Diff Engine │ │
│ │ (Myers' algo) │ │
│ └────────────────┘ │
│ ┌────────────────┐ │
│ │ HTTP Bridge │ │
│ │ (long-poll) │ │
│ └───────┬────────┘ │
└──────────┼───────────┘
│ HTTP localhost:3002
┌──────────┼───────────┐
│ Studio │ Plugin │
│ ┌───────▼────────┐ │
│ │ Request │ │
│ │ Router │ │
│ └───────┬────────┘ │
│ ┌───────▼────────┐ │
│ │ Handlers │ │
│ │ (per domain) │ │
│ └───────┬────────┘ │
│ ┌───────▼────────┐ │
│ │ Widget UI │ │
│ │ Cat + Diffs │ │
│ └────────────────┘ │
└──────────────────────┘
Tool registry (45+)
Navigation
get_file_tree · get_project_structure · get_place_info · get_services · list_roblox_studios · set_active_studio
Search & Inspection
search_files · search_objects · search_by_property · get_instance_properties · get_instance_children · get_class_info · get_selection · grep_scripts · mass_get_property
Script Editing (with diff staging)
get_script_source · set_script_source · patch_script · grep_replace · execute_luau · run_code
Instance Manipulation
create_object · delete_object · set_property · mass_create_objects · mass_set_property · mass_duplicate · smart_duplicate · set_calculated_property
Playtest Automation
start_playtest · stop_playtest · get_playtest_output · get_studio_mode · run_script_in_play_mode · user_mouse_input · user_keyboard_input · character_navigation
Diff & Meta
get_diff_queue · resolve_diff · get_activity_log · set_mode · rollback
Attributes & Tags
get_attribute · get_attributes · get_tags · get_tagged
Build Library & Assets
export_build · import_build · list_library · insert_model · capture_screenshot
Development
# Clone and install
git clone https://github.com/your-org/melo.git
cd melo
npm install
# Build
npm run build
# Dev mode (auto-rebuild)
npm run dev
Project structure
melo/
├── package.json # Root workspace config
├── packages/
│ ├── server/ # MCP server (TypeScript)
│ │ ├── src/
│ │ │ ├── index.ts # Entry point — boots MCP + HTTP bridge
│ │ │ ├── types.ts # Core type definitions
│ │ │ ├── constants.ts # Configuration constants
│ │ │ ├── services/
│ │ │ │ ├── bridge.ts # HTTP long-poll bridge
│ │ │ │ └── diff-engine.ts # Myers' diff computation
│ │ │ └── tools/
│ │ │ ├── _helpers.ts # Shared tool utilities
│ │ │ ├── navigation.ts # File tree, project structure
│ │ │ ├── search.ts # Search, grep, inspection
│ │ │ ├── script.ts # Script read/write with diff staging
│ │ │ ├── instance.ts # Create, delete, bulk ops
│ │ │ ├── playtest.ts # Playtest automation, virtual input
│ │ │ └── diff-meta.ts # Diff review, activity log, modes
│ │ ├── package.json
│ │ └── tsconfig.json
│ └── plugin/ # Roblox Studio plugin (Luau)
│ └── src/
│ └── plugin.luau # Full plugin — UI, handlers, mascot
└── README.md
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.