Skip to main content
Glama
dimoxe

Raspberry Pi SSH MCP Controller

by dimoxe

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
RPI_MCP_ENV_FILENoPath to an alternate configuration file. Overrides the default platform-specific per-user configuration directory.
RPI_MCP_RPI3_HOSTYesHostname or IP address of the Raspberry Pi 3B+.
RPI_MCP_RPI5_HOSTYesHostname or IP address of the Raspberry Pi 5.
RPI_MCP_RPI3_SSH_PORTYesSSH port for the Raspberry Pi 3B+.
RPI_MCP_RPI3_SSH_USERYesSSH username for the Raspberry Pi 3B+.
RPI_MCP_RPI5_SSH_PORTYesSSH port for the Raspberry Pi 5.
RPI_MCP_RPI5_SSH_USERYesSSH username for the Raspberry Pi 5.
RPI_MCP_ENABLE_COMMANDSNoSet to '1' to enable the control_service and run_command tools. Default is disabled.
RPI_MCP_RPI3_SSH_KEY_PATHNoPath to the SSH private key for the Raspberry Pi 3B+. Required only when not using the default SSH agent/key lookup.
RPI_MCP_RPI5_SSH_KEY_PATHNoPath to the SSH private key for the Raspberry Pi 5. Required only when not using the default SSH agent/key lookup.
RPI_MCP_ENABLE_POWER_ACTIONSNoSet to '1' to enable the power_action tool. Default is disabled.

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": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_raspberry_pisA

List the named Raspberry Pis available to this MCP server.

get_raspberry_pi_statusA

Read hostname, kernel, uptime, memory, disk, and CPU temperature from a Pi.

read_text_fileA

Read up to one MiB of a text file from a named Pi without modifying it.

get_service_statusA

Get detailed systemd status for one service on a Pi.

get_service_logsA

Read the newest journal entries for one systemd service on a Pi.

control_serviceB

Start, stop, or restart a systemd service after command control is explicitly enabled.

run_commandA

Run an arbitrary remote command only after the operator enables command control.

power_actionA

Reboot or shut down a Pi only after a separate power-control opt-in and confirmation.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.8/5.0

Scored across 8 tools

Disambiguation5/5

Each tool has a distinct purpose: listing Pis, reading status, reading files, service status/logs, controlling services, running commands, and power actions. No overlap or ambiguity.

Naming Consistency4/5

Most tools follow a verb_noun pattern (list_, get_, read_, control_, run_), but 'power_action' is a noun phrase rather than a verb-based name, creating a minor inconsistency.

Tool Count5/5

With 8 tools, the set is well-scoped for a Raspberry Pi SSH controller—covering discovery, status, file access, service management, command execution, and power control without being bloated.

Completeness4/5

The toolset covers the core operations expected of a remote Pi controller (read, inspect, control, run). Minor gaps exist, such as no file write/upload or multi-service listing, but they are not essential for the stated purpose.

Maintenance

ActivityMaintained
ResponsivenessNo issues