home / mcp / mqscript mcp server

MQScript MCP Server

Provides an MCP server for MQScript mobile automation, exposing commands for touches, UI, color detection, device operations, and scripting utilities.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "allegiant-mqscript_mcp": {
      "command": "node",
      "args": [
        "path/to/mcp-mqscript-server/build/index.js"
      ]
    }
  }
}

MQScript MCP Server provides a complete MCP server implementation for the MQScript mobile automation scripting language. It enables AI-powered generation and execution of MQScript code to automate actions on mobile devices, exposing a rich set of commands, libraries, UI controls, and extensions that cover most automation needs.

How to use

To use the MQScript MCP Server from an MCP client, run your server locally (or on a suitable host) and configure the client to connect using the provided MCP entry point. The MQScript server exposes a command-driven interface that your MCP client can invoke to perform touch actions, UI operations, file I/O, and more. You can chain commands within MQScript programs to model flows like delays, loops, conditions, and device interactions.

Typical usage patterns include starting the server in development, loading MQScript projects, and invoking MQScript functions from your AI workflow. Use the client’s MCP configuration to point to the local or remote server and ensure the server is reachable before attempting automated tasks.

How to install

Prerequisites: Ensure you have Node.js installed on your machine. You will also need npm to install dependencies.

Install dependencies and set up the project as described in the repository. The project provides standard npm-based commands to build and run the server.

Install dependencies
- Run `npm install` to install all required packages.
Build the project
- Run `npm run build` to compile the server sources.
Start the MCP server
- Run `npm start` to start the server in normal mode.
Development mode
- Run `npm run dev` to start the server in development mode.

MCP client configuration

The MCP client configuration shows how to connect to the MQScript MCP Server. The configuration uses a stdio (local) server entry where the client launches the server as a child process.

{
  "mcpServers": {
    "mqscript": {
      "command": "node",
      "args": ["path/to/mcp-mqscript-server/build/index.js"],
      "env": {}
    }
  }
}

Available tools

Tap

Perform a tap at a specified screen coordinate or area to simulate a user touch.

Touch

Execute touch actions such as tap, press, or hold with configurable duration.

Swipe

Scroll or drag by specifying start and end coordinates and duration.

KeyPress

Send a key press event to an input field or system keyboard.

Delay

Pause execution for a given amount of time.

For

Iterate over a block of commands with a loop counter.

If

Conditionally execute commands based on a boolean expression.

While

Repeat a block of commands while a condition remains true.

Dim

Declare local variables or manage scope within MQScript.

GetPixelColor

Read the color value of a pixel at given coordinates.

FindColor

Search a defined region for a specific color value.

CmpColor

Compare a color against a reference to determine similarity or match.

ShowMessage

Display a message to the user, typically in a dialog or overlay.

TracePrint

Output diagnostic information for debugging.

RunApp

Launch another application on the device.

InputText

Input text into a focused text field.

Abs

Return the absolute value of a numeric input.

Sin

Compute the sine of an angle in radians.

Cos

Compute the cosine of an angle in radians.

Tan

Compute the tangent of an angle in radians.

Sqr

Compute the square root of a number.

Rnd

Generate a random number.

Len

Return the length of a string.

Left

Extract a specified number of characters from the left side of a string.

Right

Extract a specified number of characters from the right side of a string.

Mid

Extract a substring from the middle of a string.

InStr

Find the position of a substring within a string.

Replace

Replace occurrences of a substring within a string.

UCase

Convert a string to upper case.

LCase

Convert a string to lower case.

CInt

Convert a value to an integer.

CStr

Convert a value to a string.

CBool

Convert a value to a boolean.

IsNumeric

Check if a value is numeric.

UBound

Return the upper bound index of an array.

Split

Split a string into an array by a delimiter.

Join

Join an array of strings into a single string.

NewLayout

Create a new UI layout container.

AddTextView

Add a text view UI element to a layout.

AddEditText

Add an editable text field to a UI layout.

AddButton

Add a clickable button to a UI layout.

AddCheckBox

Add a checkbox control to a UI layout.

SetText

Set the text content of a UI element.

GetText

Retrieve the text content from a UI element.

SetEnabled

Enable or disable a UI element.

SetVisible

Show or hide a UI element.

Create

Create a new floating window or overlay.

Show

Display a floating window or overlay.

Hide

Hide a floating window or overlay.

OnClick

Handle click events on a UI element.

Element.GetText

Read text from a UI element identified by a selector.

Element.Click

Simulate a click on a specific UI element.

Element.SetText

Set the text of a specific UI element.

Element.Exists

Check whether a UI element exists.

Device.GetInfo

Retrieve device information such as model and OS version.

Device.Vibrate

Trigger device vibration for feedback.

Device.SetBrightness

Adjust screen brightness.

Device.SetVolume

Adjust device media volume.

Phone.Call

Initiate a phone call to a number.

Phone.SendSMS

Send an SMS message.

Phone.GetCallState

Query the current call state.

Sys.Exit

Terminate the running script or session.

Sys.GetTime

Obtain the current system time.

Sys.Shell

Execute a shell command on the device.

Sys.GetEnv

Retrieve environment variables.

Sys.SetEnv

Set environment variables for the session.

Sys.Sleep

Pause execution for a period.

CJson.Parse

Parse a JSON string into an object.

CJson.Stringify

Convert an object to a JSON string.

CJson.Get

Access a value from a JSON object.

CJson.Set

Set a value in a JSON object.

DateTime.Now

Get the current date and time.

DateTime.Format

Format a date/time value into a string.

DateTime.AddDays

Add days to a date.

DateTime.Compare

Compare two date/time values.

File.Read

Read a file's content.

File.Write

Write data to a file.

File.Exists

Check if a file exists.

File.Delete

Delete a file.

File.Copy

Copy a file.

TURING.Chat

Interact with AI chat service for conversational automation.

TURING.SetConfig

Configure AI chat service settings.

mqscript_touch_tap

High-level function to tap at coordinates with duration.

mqscript_touch_swipe

High-level function to swipe between coordinates with duration.

mqscript_color_getpixelcolor

Retrieve the color of a pixel and store in a variable.

mqscript_color_findcolor

Find a color within a region and return its position.

mqscript_ui_newlayout

Create a new vertical or horizontal UI layout.

mqscript_ui_addbutton

Add a clickable button to the UI.

mqscript_ui_show

Display the UI window with a title.

mqscript_file_read

Read a file into a script variable.

mqscript_file_write

Write content to a file with options for encoding and append mode.