Skip to main content
Glama

Scenic MCP

Scenic MCP - Input Control for Scenic Applications

A Model Context Protocol (MCP) server that enables external keyboard and mouse input injection into Scenic GUI applications.

Features

  • Keyboard Input: Send text and special keys to Scenic applications
  • Mouse Control: Move cursor and click at specific coordinates
  • MCP Integration: Works with any MCP-compatible client (Claude Desktop, etc.)
  • Real-time Communication: TCP-based connection for low-latency input
  • Scenic Compatible: Uses proper Scenic ViewPort input routing

Installation

  1. Add to your Scenic application's mix.exs:
defp deps do [ {:scenic_mcp, path: "../scenic_mcp"} ] end
  1. Add to your application's supervision tree:

actually you shouldn't need to do this...

  1. Install Node.js dependencies:
cd scenic_mcp npm install

Usage

MCP Tools

The server provides these MCP tools:

connect_scenic

Test connection to the Scenic application.

get_scenic_status

Check server status and available commands.

send_keys

Send keyboard input to the Scenic application.

Parameters:

  • text (string): Text to type (each character sent as individual key press)
  • key (string): Special key name (enter, escape, tab, backspace, delete, up, down, left, right, home, end, page_up, page_down, f1-f12)
  • modifiers (array): Modifier keys (ctrl, shift, alt, cmd, meta)
send_mouse_move

Move mouse cursor to specific coordinates.

Parameters:

  • x (number): X coordinate
  • y (number): Y coordinate
send_mouse_click

Click mouse at specific coordinates.

Parameters:

  • x (number): X coordinate
  • y (number): Y coordinate
  • button (string): Mouse button (left, right, middle) - default: left

Examples

Send text:

{ "action": "send_keys", "text": "hello world" }

Send special key:

{ "action": "send_keys", "key": "enter" }

Send key with modifiers:

{ "action": "send_keys", "key": "c", "modifiers": ["ctrl"] }

Move mouse:

{ "action": "send_mouse_move", "x": 100, "y": 200 }

Click mouse:

{ "action": "send_mouse_click", "x": 150, "y": 250, "button": "left" }

Architecture

MCP Client (Claude Desktop) ↓ TypeScript MCP Server (scenic_mcp) ↓ (TCP port 9999) Elixir GenServer Bridge ↓ (Scenic.ViewPort.Input.send/2) Scenic ViewPort ↓ Your Scenic Application

Development

Start the Elixir server:

cd your_scenic_app mix run --no-halt

Test the MCP server:

cd scenic_mcp node src/index.ts

Requirements

  • Elixir/OTP 24+
  • Node.js 18+
  • Scenic 0.11+

License

MIT License

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

A Model Context Protocol server that enables AI-driven automation and testing of Scenic Elixir applications through a TCP connection.

  1. Features
    1. Installation
      1. Usage
        1. MCP Tools
        2. Examples
      2. Architecture
        1. Development
          1. Requirements
            1. License

              Related MCP Servers

              • -
                security
                F
                license
                -
                quality
                A Model Context Protocol server that provides a comprehensive interface for interacting with the ConnectWise Manage API, simplifying API discovery, execution, and management for both developers and AI assistants.
                Last updated -
                46
                2
                Python
                • Linux
                • Apple
              • -
                security
                F
                license
                -
                quality
                A demonstration implementation of the Model Context Protocol server that facilitates communication between AI models and external tools while maintaining context awareness.
                Last updated -
                Python
                • Linux
                • Apple
              • -
                security
                A
                license
                -
                quality
                A customizable Model Context Protocol server implementation that enables AI models to interact with external tools including weather queries, Google search, and camera control functionality.
                Last updated -
                8
                Python
                Apache 2.0
                • Linux
                • Apple
              • -
                security
                -
                license
                -
                quality
                A Model Context Protocol server that enables generating and executing Elisp code in a running Emacs process, allowing AI assistants to control and interact with Emacs.
                Last updated -
                Python

              View all related MCP servers

              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/scenic-contrib/scenic_mcp_experimental'

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