npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

exec-by-btw

v3.1.1

Published

exec by btw — universal MCP server for Roblox. Execute Luau, inspect scripts, spy on remotes. Works on macOS, Linux, Windows with any executor.

Readme

Roblox Executor MCP Server v3

Un serveur MCP universel pour interagir avec un client Roblox — exécuter du code, inspecter des scripts, espionner les remotes, prendre des screenshots, et plus.

🌍 macOS · Linux · Windows — toutes plateformes supportées. 🔄 Compatibilité universelle — fonctionne avec tous les exécuteurs (auto-détection). 🤖 Optimisé IA — descriptions d'outils claires, erreurs explicites, workflow guidé.

Dashboard

http://localhost:16384/

Fonctionnalités

| Catégorie | Outil | Description | |-----------|-------|-------------| | Clients | list-clients | Voir les clients connectés | | | set-active-client | Choisir le client cible | | Exploration | get-game-info | Infos du jeu (PlaceId, nom, créateur) | | | get-descendants-tree | Arborescence des instances | | | search-instances | Recherche CSS-like d'instances | | Code | script-grep | Recherche textuelle rapide | | | semantic-search-scripts | Recherche IA par comportement | | | get-script-content | Lire le code source (avec plage de lignes) | | Exécution | execute | Exécuter du Luau (fire & forget) | | | get-data-by-code | Exécuter + récupérer les valeurs | | | get-console-output | Vérifier les effets | | GUI | type-text-box | Taper dans un TextBox | | | click-button | Cliquer un bouton | | Remotes | ensure-remote-spy | Activer Cobalt | | | get-remote-spy-logs | Voir le trafic remote | | | block-remote / ignore-remote | Bloquer/Ignorer des remotes | | Screenshots | screenshot-window | Capture d'écran macOS/Linux/Windows | | | list-roblox-windows | Lister les fenêtres Roblox |

Prérequis

  • Node.js ≥ 18 (Pas besoin de Bun !)
  • Un exécuteur Roblox supportant loadstring et request (WebSocket optionnel)

Quick Start

1. Cloner

git clone https://github.com/notpoiu/roblox-executor-mcp.git
cd roblox-executor-mcp

2. Installer & Build

npm install
npm run build

Ou utilisez le launcher universel (installe et build automatiquement) :

node scripts/launcher.mjs

3. Lancer

npm start

4. Connecter depuis Roblox

Copiez ce script dans votre exécuteur ou Auto Execute :

local bridgeUrl = getgenv().BridgeURL or "localhost:16384"
loadstring(game:HttpGet("http://" .. bridgeUrl .. "/script.luau"))()

Options (à mettre avant le loadstring) :

getgenv().BridgeURL = "10.0.0.4:16384"       -- IP personnalisée
getgenv().DisableWebSocket = true              -- Forcer HTTP polling
getgenv().DisableInitialScriptDecompMapping = true -- Désactiver le mapping auto

5. Configurer votre client IA

Ajoutez ceci à la config MCP de votre client (Claude Desktop, Cursor, Codex, Windsurf, etc.) :

{
  "mcpServers": {
    "exec-by-btw": {
      "command": "node",
      "args": ["chemin/vers/roblox-executor-mcp/dist/index.js"]
    }
  }
}

Screenshots — Toutes Plateformes

| Plateforme | Outil utilisé | |-----------|--------------| | macOS | screencapture (intégré) | | Linux | import (ImageMagick), scrot, maim, ou gnome-screenshot | | Windows | PowerShell + .NET (aucun addon natif requis) |

Workflow Recommandé pour l'IA

  1. list-clients → set-active-client → get-game-info (confirmer le bon jeu)
  2. get-descendants-tree (summaryOnly) → script-grep (terme précis) → get-script-content (plage de lignes)
  3. execute → get-console-output (vérifier)
  4. screenshot-window → capture visuelle

Configuration Avancée

# Port personnalisé
node dist/index.js --port 16385

# Mode relay (secondaire pointe vers primaire distant)
node dist/index.js --baseurl http://192.168.1.50:16384

# Nom de serveur personnalisé (par défaut: exec-by-btw)
node dist/index.js --server-name "exec by btw"

Variables d'environnement :

export BRIDGE_TOKEN="mon-token-secret"       # Auth pour le bridge
export ROBLOX_MCP_PORT=16385                # Port personnalisé
export ROBLOX_MCP_SCREENSHOT_DIR="/tmp"     # Dossier screenshots

Compatibilité Exécuteurs

Le connector.luau détecte automatiquement les capacités de l'exécuteur :

  • ✅ WebSocket — utilisé si disponible, sinon HTTP polling
  • ✅ Multiple APIs de décompilation — lua.expert → built-in → Medal → Konstant
  • ✅ Multiple APIs HTTP — syn.request → HttpService:RequestAsync → request()
  • ✅ Gestion d'erreurs robuste — chaque feature se dégrade gracieusement

Communauté

Discord

Sécurité

Ce serveur permet l'exécution de code arbitraire. Utilisez-le uniquement avec des clients IA de confiance. Le port 16384 n'a pas d'authentification par défaut — ne l'exposez jamais sur Internet. Pour les configurations multi-machines, utilisez un réseau local, VPN, ou tunnel SSH.

License

MIT