Skip to main content
Glama

Linkedsword

Roblox Studio MCP-Server + Plugin — 73 Werkzeuge für Skriptbearbeitung, Massenoperationen, Playtest-Automatisierung und mehr.

Linkedsword kombiniert das Beste aus BoshyXDs Community-MCP (Massenoperationen, Grep, Build-Bibliothek) mit Robloxs offiziellem MCP (Playtest-Automatisierung, virtuelle Eingabe, Multi-Instanz) in einem einzigen Paket und fügt zusätzlich Skript-Diff-Reviews hinzu.

Funktionen

  • Skript-Diff-Review — Inline-Diffs im GitHub-Stil innerhalb des Studio-Plugins. Akzeptieren oder lehnen Sie einzelne Hunks ab, bevor sie angewendet werden.

  • 73 Werkzeuge — Navigation, Suche, Skriptbearbeitung, Instanzmanipulation, Playtest-Steuerung, räumliche Operationen und mehr.

  • Stapelverarbeitung — Massenerstellung, Duplizierung und Festlegen von Eigenschaften über mehrere Instanzen hinweg.

  • Aktivitäts-Feed — Echtzeit-Protokoll jedes Werkzeugaufrufs mit Zeitangabe und Status.

  • Modus-System — Vollständig (Lesen + Schreiben), Inspektor (Nur-Lese-Modus) oder automatische Akzeptanz für unbeaufsichtigte Arbeitsabläufe.

Schnellstart

Voraussetzungen

  • Node.js 18+

  • Roblox Studio

1. Installieren Sie den MCP-Server

# Claude Code
claude mcp add linkedsword -- npx -y linkedsword-mcp-server@latest

# Or add to your MCP config (Claude Desktop, Cursor, etc.)
{
  "mcpServers": {
    "linkedsword": {
      "command": "npx",
      "args": ["-y", "linkedsword-mcp-server@latest"]
    }
  }
}

2. Installieren Sie das Studio-Plugin

# Clone the repo
git clone https://github.com/yannyhl/melo-mcp.git
cd melo-mcp
npm install

# Build and install the plugin
npm run install-plugin --workspace=packages/server

Dies erstellt Linkedsword.rbxmx und kopiert es in Ihren lokalen Plugin-Ordner:

  • macOS: ~/Documents/Roblox/Plugins/

  • Windows: %LOCALAPPDATA%/Roblox/Plugins/

3. Aktivieren Sie HTTP-Anfragen in Studio

In Roblox Studio: File > Game Settings > Security > Allow HTTP Requests (aktivieren).

Das Plugin kommuniziert mit dem MCP-Server über HTTP auf localhost:3003. Diese Einstellung gilt pro Place.

4. Verbinden

  1. Öffnen Sie einen Place in Roblox Studio.

  2. Klicken Sie auf Linkedsword in der Plugin-Symbolleiste.

  3. Das Widget sollte den Status "Connected" anzeigen.

  4. Beginnen Sie mit der Nutzung der Werkzeuge über Ihren MCP-Client.

Architektur

MCP Client (Claude Code, Cursor, etc.)
  ── stdio ──>  Linkedsword MCP Server (Node/TypeScript)
                  ├── Diff Engine (Myers' algorithm)
                  └── HTTP Bridge (long-poll, localhost:3003)
                        ── HTTP ──>  Roblox Studio Plugin (Luau)
                                       ├── Tool Handlers
                                       ├── Diff Review UI
                                       └── Activity Feed

Werkzeug-Verzeichnis (73)

Navigation (6)

get_file_tree . get_project_structure . get_place_info . get_services . list_roblox_studios . set_active_studio

Suche & Inspektion (11)

search_files . search_objects . search_by_property . get_instance_properties . get_instance_children . get_class_info . get_selection . grep_scripts . mass_get_property . set_selection . get_descendants

Skriptbearbeitung (9 — mit Diff-Staging)

get_script_source . set_script_source . patch_script . grep_replace . execute_luau . run_code . edit_script_lines . insert_script_lines . delete_script_lines

Instanzmanipulation (13)

create_object . delete_object . set_property . mass_create_objects . mass_set_property . mass_duplicate . smart_duplicate . set_calculated_property . clone_object . reparent_object . group_objects . ungroup_objects . batch_operations

Playtest-Automatisierung (8)

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 (21)

get_diff_queue . resolve_diff . get_diff_history . get_activity_log . set_mode . rollback . redo . get_attribute . get_attributes . set_attribute . delete_attribute . get_tags . get_tagged . add_tag . remove_tag . capture_screenshot . export_build . import_build . list_library . insert_model . get_console_output

Räumlich (5)

create_weld . get_bounding_box . raycast . fill_terrain . clear_terrain

Entwicklung

git clone https://github.com/yannyhl/melo-mcp.git
cd melo-mcp
npm install

# Build server
npx tsup packages/server/src/index.ts --format cjs --out-dir packages/server/dist --clean

# Build plugin
node packages/plugin/build-rbxmx.js

# Deploy plugin to Studio
cp packages/plugin/Linkedsword.rbxmx ~/Documents/Roblox/Plugins/Linkedsword.rbxmx

Lokale MCP-Konfiguration

Kopieren Sie .mcp.json.example nach .mcp.json und passen Sie bei Bedarf den Pfad an:

cp .mcp.json.example .mcp.json

Projektstruktur

melo-mcp/
├── packages/
│   ├── server/               # MCP server (TypeScript)
│   │   ├── src/
│   │   │   ├── index.ts      # Entry point
│   │   │   ├── services/
│   │   │   │   ├── bridge.ts       # HTTP long-poll bridge
│   │   │   │   └── diff-engine.ts  # Myers' diff computation
│   │   │   └── tools/
│   │   │       ├── navigation.ts   # 6 tools
│   │   │       ├── search.ts       # 11 tools
│   │   │       ├── script.ts       # 9 tools
│   │   │       ├── instance.ts     # 13 tools
│   │   │       ├── playtest.ts     # 8 tools
│   │   │       ├── diff-meta.ts    # 21 tools
│   │   │       └── spatial.ts      # 5 tools
│   │   └── package.json
│   └── plugin/               # Roblox Studio plugin (Luau)
│       └── src/
│           └── plugin.luau   # Single-file plugin (~4700 lines)
├── docs/
│   └── README.md             # Internal handbook (architecture, caveats, LLM guide)
├── .mcp.json.example         # MCP config template
└── README.md

Bekannte Einschränkungen

  • Heartbeat-Timeouts bei schnellen parallelen Werkzeugaufrufen (Wiederholung funktioniert).

  • Ein Neustart des MCP-Servers erfordert das Neuladen Ihres Editor-Fensters.

  • user_mouse_input und user_keyboard_input sind im Plugin noch nicht vollständig implementiert.

  • capture_screenshot ist noch nicht verfügbar.

  • Der Sandbox-Modus ist deklariert, aber nicht implementiert.

Siehe docs/README.md für die vollständige Liste der Vorbehalte.

Lizenz

MIT

A
license - permissive license
-
quality - not tested
C
maintenance

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