Skip to main content
Glama

♪ 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

-
security - not tested
F
license - not found
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/yannyhl/melo-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server