Skip to main content
Glama
raspberry-pi-connect-mcp

raspberry-pi-connect-mcp

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
RPI_CONNECT_ALLOWNoComma-separated name substrings. Only matching devices can be used.
RPI_CONNECT_CHROMENoPath to a Chrome binary.
RPI_CONNECT_HEADEDNoShow the browser window (debugging). Set to 1 to enable.
RPI_CONNECT_PROFILENoChrome profile dir used by `login`.
RPI_CONNECT_SESSIONNoPath to the saved session file.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_devicesA

List devices on the Raspberry Pi Connect account with online status and whether remote shell is allowed.

run_commandA

Run a shell command on a device through its Connect remote shell and return output + exit code. The shell session persists between calls (cwd, env vars). First call to a device takes ~30s to connect. Commands that wait for input (sudo password, editors, confirmations) will time out; use send_keys/read_screen for those.

send_keysA

Send raw keystrokes to a device shell (for interactive programs). Supports escapes: "\n" Enter, "\x03" Ctrl-C, "\x04" Ctrl-D, "\t" Tab, "\x1b" Esc, "\x1b[A" Up. Returns the current screen.

read_screenA

Read the current terminal screen (plus a little scrollback) of a device shell.

close_sessionC

Close the remote shell session to a device.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.7/5.0

Scored across 5 tools

Disambiguation4/5

Each tool has a distinct role, but run_command and send_keys both push input to a device shell, and the boundary between them is only clarified by description text rather than by the names alone. The descriptions do a good job of steering usage (non-interactive vs interactive), so misselection is unlikely but not impossible.

Naming Consistency5/5

All five tools follow a clean verb_noun pattern: list_devices, run_command, send_keys, read_screen, close_session. No camelCase mixing or vague standalone verbs.

Tool Count5/5

Five tools is a tight, well-scoped set for remote shell management, and every tool maps to a necessary step in the workflow (discover, execute, interact, inspect, tear down). Nothing feels padded or missing from a count perspective.

Completeness4/5

The interactive session lifecycle is well covered: discover devices, run commands, send keystrokes, read output, close session. Minor gaps exist—there is no explicit open/connect tool or session listing, and no file transfer—but sessions are opened implicitly and agents can work around this.

Maintenance

ActivityMaintained
ResponsivenessNo recent community issues