Skip to main content
Glama

gm-exec

NOTE: If you're looking fore mcp-repl or, glootie, or GM... its now at: http://github.com/anEntrypoint/gm

Code execution tool for MCP clients and CLI. Multi-language support (JS/TS, Python, Go, Rust, C, C++, Deno, Java, bash). Built on Bun with PM2-managed process isolation.

Related MCP server: MCP QuickJS Runner

MCP Server

Add to your MCP client config:

{
  "mcpServers": {
    "gm-exec": {
      "command": "bunx",
      "args": ["gm-exec", "--mcp"]
    }
  }
}

Or install globally:

bun install -g gm-exec
gm-exec --mcp

CLI

bunx gm-exec-cli exec --cwd=/app "console.log('hello')"
bunx gm-exec-cli bash --cwd=/app "npm install && npm test"
bunx gm-exec-cli exec --lang=python --cwd=/app "print('hello')"
bunx gm-exec-cli exec --file=script.js

Commands

gm-exec-cli exec [options] <code>     Execute code (waits up to 15s, then backgrounds)
  --lang=<lang>                        nodejs (default), python, go, rust, c, cpp, java, deno
  --cwd=<dir>                          Working directory
  --file=<path>                        Read code from file

gm-exec-cli bash [--cwd=<dir>] <cmd>  Execute bash commands, same 15s ceiling

gm-exec-cli status <task_id>           Poll status + drain output of a background task
gm-exec-cli close <task_id>            Delete a background task

gm-exec-cli runner start               Start the runner manually (PM2, no autorestart)
gm-exec-cli runner stop                Stop the runner
gm-exec-cli runner status              Show runner PM2 status

Background execution

Commands have a hard 15-second ceiling. If still running after that, the process is backgrounded and you get a task ID with monitoring instructions:

Backgrounded after 15s — task still running.
Task ID: task_3

Watch output:
  gm-exec-cli status task_3
  gm-exec-cli close task_3
  gm-exec-cli runner stop

The runner auto-starts before each command and auto-stops after — unless a task was backgrounded, in which case the runner stays alive until you explicitly stop it.

Supported Languages

Language

Runtime

JavaScript / TypeScript

Node.js / Bun

Python

python3

Go

go run

Rust

rustc

C

gcc

C++

g++

Java

javac + java

Deno

deno run

bash / sh / zsh

shell

Requirements

curl -fsSL https://bun.sh/install | bash

Available Tools

1 tool
executeA

Execute code in JS/TS, Go, Rust, Python, C, C++, or bash with auto-runtime detection. Primary tool for testing hypotheses before implementation. Supports both code snippets and shell commands.

Inputs: workingDirectory (required), code, commands, runtime, +1 more.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.5/5.0

    Scored across 1 tool

    Disambiguation5/5

    With only one tool, there is no possibility of ambiguity or overlap between tools. The single tool 'execute' has a clear, distinct purpose that cannot be confused with any other tool in this set.

    Naming Consistency5/5

    Since there is only one tool, naming consistency is inherently perfect. The tool name 'execute' follows a simple verb pattern, and there are no other tools to compare it against for inconsistency.

    Tool Count2/5

    A single tool is generally too few for a server's purpose, as it limits functionality and flexibility. While the tool is versatile (supporting multiple languages and shell commands), the server likely has a broader scope (e.g., code execution and testing) that could benefit from additional tools for tasks like debugging, logging, or result analysis.

    Completeness2/5

    The server appears to be focused on code execution and testing, but with only one tool, there are significant gaps in coverage. For example, there are no tools for managing execution environments, handling dependencies, validating code, or analyzing results, which are common needs in such domains.

    Related MCP Connectors

    Related MCP Servers

    • F
      license
      Not graded
      quality
      D
      maintenance
      Provides secure execution of arbitrary JavaScript code within a sandboxed QuickJS WASM environment, allowing language models or other MCP clients to safely run JavaScript code snippets without compromising the host system.
      5
      -
    • F
      license
      Not graded
      quality
      D
      maintenance
      Enables running arbitrary JavaScript code in isolated Docker containers with on-the-fly npm dependency installation, supporting both ephemeral one-shot executions and persistent sandbox environments.
      115 npm
      158
      -
    • F
      license
      A
      quality
      D
      maintenance
      A secure Node.js execution environment that allows coding agents and LLMs to run JavaScript dynamically, install NPM packages, and retrieve results while adhering to the Model Control Protocol.
      7
      115 npm
      4
      -