Skip to main content
Glama
smk-h

embedded-mcp-toolkit

by smk-h

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
DEVICENo默认的设备名称,对应config.yaml中devices下的keyboard-b
LOG_DIRNo日志存储的目录,相对于MCP server进程的工作目录./log
LOG_SAVENo是否存储日志到文件("1"表示开启)1
BOARD_CONFIG_PATHNo配置文件路径,相对于MCP server进程的工作目录./configs/config.yaml

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
greet_toolB

Greet someone by name

version_toolA

Get the MCP server version and toolkit information

device_info_toolA

Get device configuration. Uses the default device when no name is given; returns all devices when 'all' is specified.

notify_demo_toolA

Demonstrate server-to-client notifications: send logging messages or trigger list_changed events

session_infoA

Query active session metadata. Pass session_id for one session, device for all sessions of a device, or neither for all active sessions. Each session returns: session id, connection type (serial/ssh/adb), device name, connection info (e.g. COM3@115200), creation time, and the raw session log file path (serial/ssh/adb traffic recorded continuously by the server, including full boot logs after reset/reboot).

host_infoA

Query the MCP host endpoint (username@ip) for constructing cross-machine file transfers (scp) when this MCP runs on Windows and the AI client runs on Linux. Returns 'local started' with no endpoint for local launches.

ssh_shell_openA

Open an interactive SSH shell session to the board. Returns the initial banner output.

ssh_shell_closeB

Close an SSH shell session and release the connection.

ssh_shell_writeC

Send a command to an SSH shell session.

ssh_shell_readA

Read output from an SSH shell session.

ssh_shell_execA

Send a command to an SSH shell session and wait for the output. Combines write + delay + read in one call.

ssh_shell_send_ctrlA

Send a control character (Ctrl+C/U/D/Z) to an SSH shell session without appending a newline.

ssh_shell_connectionA

Check active SSH connections on the remote board. Shows which client IPs are connected to the SSH service (port 22).

ssh_shell_loginA

One-click SSH login: connect, detect PSH state, auto-unlock if locked, and return a ready session. Combines open + PSH detect + unlock into a single call.

ssh_buildA

Execute a build command on the remote server via SSH, wait for completion, classify errors/warnings, and return structured build results for AI analysis. IMPORTANT: Each session supports only ONE build at a time. For concurrent builds, open multiple sessions via ssh_shell_open and assign one build per session.

ssh_sftp_uploadA

Upload a local file to the remote board over SFTP, reusing an existing SSH session.

ssh_sftp_downloadA

Download a remote file from the board to local over SFTP, reusing an existing SSH session.

serial_openA

Open a serial port connection and start an interactive shell session. Returns the initial banner output.

serial_closeA

Close a serial port session and release the port.

serial_writeC

Send a command to a serial shell session.

serial_readC

Read output from a serial shell session.

serial_execA

Send a command to a serial shell session and wait for the output. Combines write + delay + read in one call.

serial_send_ctrlA

Send a control character (Ctrl+C/U/D/Z) to a serial shell session without appending a newline.

serial_shell_loginA

One-click serial login: connect, detect PSH state, auto-unlock if locked, and return a ready session. Combines open + PSH detect + unlock into a single call.

serial_enter_ubootA

Enter U-Boot by rebooting the device and stopping autoboot. Detection rules (autoboot prompts, command prompt, verify env keys) are configurable via device config serial.uboot; falls back to built-in defaults. Two-layer strategy: prompt match first; if not matched within a short window, sends 'printenv' and verifies U-Boot env keys. Fails fast on kernel boot or verify timeout.

serial_uploadA

Upload a binary file to the device over ZMODEM via an existing serial session. The device must have lrzsz installed (rz command). Blocks until transfer completes, fails, or times out; progress is logged to stderr. Two timeouts: idle_timeout aborts on stalled transfer (real failure); timeout caps total duration and reports a suggested value if still progressing.

serial_downloadA

Download a binary file from the device over ZMODEM via an existing serial session. The device must have lrzsz installed (sz command). Blocks until transfer completes, fails, or times out; progress is logged to stderr. Two timeouts: idle_timeout aborts on stalled transfer (real failure); timeout caps total duration and reports a suggested value if still progressing.

port_scan_toolA

Scan Windows Device Manager for available COM (serial) and LPT (parallel) ports

network_scan_toolA

Scan Windows network adapters and configurations (IP, MAC, status, speed)

subnet_check_toolA

Analyze subnet information for a target IP address. Retrieves host IP, subnet mask, and gateway, calculates subnet range (network address, broadcast address, usable host range, CIDR), and determines whether the target IP falls within the same subnet as the host.

power_shell_openA

Open an interactive PowerShell shell session on the local Windows machine. Returns the initial banner output.

power_shell_closeA

Close a PowerShell shell session and terminate the process.

power_shell_writeC

Send a command to a PowerShell shell session.

power_shell_readC

Read output from a PowerShell shell session.

power_shell_execA

Send a command to a PowerShell shell session and wait for the output. Combines write + delay + read in one call.

adb_device_listA

List all connected ADB devices and their status (device, offline, unauthorized, etc.)

adb_execA

Execute a one-shot ADB command without a persistent session. Use for adb devices, install, push, or short shell commands.

adb_shell_openA

Open an interactive ADB shell session to an Android device. Returns the initial banner output.

adb_shell_closeA

Close an ADB shell session and terminate the adb process.

adb_shell_writeC

Send a command to an ADB shell session.

adb_shell_readB

Read output from an ADB shell session.

adb_shell_execB

Send a command to an ADB shell session and wait for the output. Combines write + delay + read in one call.

adb_shell_send_ctrlA

Send a control character (Ctrl+C/U/D/Z) to an ADB shell session without appending a newline.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/smk-h/embedded-mcp-toolkit'

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