Skip to main content
Glama
elliotttate

MCP SteamOS Devkit

by elliotttate

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
ADB_PATHNoPath to adb executable for Steam Frame Lepton/Android work (e.g., %LOCALAPPDATA%\Android\Sdk\platform-tools\adb.exe).
AAPT_PATHNoPath to aapt executable for APK metadata inspection (e.g., %LOCALAPPDATA%\Android\Sdk\build-tools\<version>\aapt.exe).
STEAMOS_DEVKIT_CLIENT_ROOTNoPath to the installed SteamOS Devkit Client (e.g., E:\SteamLibrary\steamapps\common\SteamOSDevkitClient\windows-client). Set if server cannot find it automatically.
STEAMOS_DEVKIT_SOURCE_ROOTNoPath to a source checkout of steamos-devkit (optional).
STEAMOS_DEVKIT_SSH_PASSWORDNoSSH password fallback if the device has not accepted the devkit SSH key.

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
doctorA

Inspect local SteamOS Devkit Client, tools, dependencies, and state paths.

adb_doctorA

Inspect local ADB availability and print Steam Frame Lepton connection notes.

adb_environment_conflict_doctorC

Find local ADB version/path conflicts, current devices, and Steam Frame hostname resolution.

discover_devicesB

Discover SteamOS Devkit devices by mDNS and optionally include cached devices.

resolve_deviceC

Resolve a SteamOS Devkit target by service name, hostname, or IP address.

ensure_ssh_keyB

Create or repair the local SteamOS Devkit SSH key.

register_deviceC

Register/pair this machine's Devkit SSH key with a SteamOS device.

sync_devkit_utilsB

Sync Valve's devkit-utils helper scripts to ~/devkit-utils on the device.

get_steamos_statusC

Run steamos-get-status --json on the device.

list_titlesC

List devkit titles installed under ~/devkit-game.

validate_upload_planB

Validate a title upload plan without touching the device.

inspect_android_apkB

Read Android package/version metadata from an APK using aapt dump badging.

validate_android_split_packageC

Validate a Steam Frame Unity APK+OBB folder and expected OBB filename/layout.

stage_android_obb_layoutC

Copy an Android main OBB into obb/main...obb.

steampipe_android_release_preflightC

Check a local Android depot folder against Steam Frame SteamPipe release requirements.

upload_titleC

Upload a title folder, update runtime settings, and register/update the Steam shortcut.

run_titleC

Launch a devkit title through Steam's devkit RPC.

delete_titleC

Delete one or all devkit titles, optionally resetting Steam client state.

set_steam_clientC

Switch the Steam client mode used by the main session.

set_sessionC

Change the SteamOS graphical session.

restart_sessionC

Restart the active SteamOS session or Steam user service.

reboot_deviceC

Reboot the SteamOS device.

enable_cef_debuggingC

Enable Steam CEF remote debugging for the device's Steam client.

open_cef_consoleC

Return the Steam CEF debugging URL for a device.

steam_rpcC

Execute a Steam devkit RPC command. Uncurated commands require confirmation.

run_remote_commandB

Run an arbitrary SSH command on the device. Always requires confirmation.

dump_controller_configC

Dump controller configuration VDF files from Steam.

sync_logsC

Sync Steam logs, SteamVR logs, and /tmp/dumps to a local folder.

lepton_cli_helpC

Read Steam Frame's installed Lepton CLI help from the native SteamOS shell.

lepton_containersC

List Lepton podman containers with ADB/GDB/LLDB ports and debug labels.

lepton_logcatC

Collect bounded native Lepton logcat output for a Lepton context.

lepton_context_inspectC

Inspect one Lepton container context, including labels and optional mounts.

lepton_debug_targetsC

Report existing ADB/GDB/LLDB targets and listener state for a Lepton context.

lepton_mountsC

Read Lepton podman mounts for a context, optionally filtered by a known category.

lepton_apk_infoC

Run Lepton's own apk-info-extractor on a remote APK path.

lepton_rootfs_overlay_manifestC

Inventory Lepton rootfs overlay files, hashes, and selected small snippets.

lepton_debug_planC

Return a non-executing Lepton debug/capture launch plan for gdb/lldb/strace/perfetto/renderdoc/vulkan layers.

lepton_artifacts_manifestB

List Lepton perfetto/strace/debug artifacts that already exist on the device.

steam_logs_manifestC

List recent Steam, SteamVR, OpenXR, Lepton, trace, and dump files on the device.

steam_frame_perfcriteriaC

Find and parse Steam Frame perfcriteria.txt compatibility/performance reports.

steam_frame_cef_pagesC

Enumerate Steam/SteamVR CEF DevTools pages exposed on Steam Frame debug ports.

steam_frame_web_portsC

Inspect known Steam Frame web/debug/listener ports and devkit HTTP properties.

steam_frame_dbus_managerC

Introspect SteamOS Manager DBus interfaces/properties without invoking control methods.

steam_frame_manager_propertiesC

Read SteamOS Manager properties from the user bus, system bus, or both.

steam_frame_manager_interfacesC

Read SteamOS Manager interface/method/property/signal inventory, including Jobs when present.

steam_frame_openxr_statusC

Inspect native and Lepton OpenXR active-runtime configuration files.

lepton_graphics_debug_statusC

Inspect Lepton graphics debug helper scripts, Vulkan layers, RenderDoc, perfetto, and Mesa version.

steam_frame_tracking_datasetsC

List SteamVR tracking datasets recorded from Steam Frame Developer settings.

sync_tracking_datasetC

Download a recorded Steam Frame tracking dataset directory into a local folder.

local_steamvr_automation_inventoryC

Inspect local SteamVR automation surfaces such as null driver and Frame controller profiles.

steam_frame_automation_inventoryC

Inspect Steam Frame automation surfaces for tracking datasets, CEF ports, Lepton, and input tools.

steam_frame_automation_planC

Return automation strategy notes for launch, UI, ADB, tracking-dataset, and pose-replay workflows.

steamvr_vrcmd_capability_inventoryC

Inspect local SteamVR binaries for capture, replay, polling, and driver simulation string evidence.

tracking_dataset_analyzeA

Summarize a local SteamVR tracking dataset directory or zip after download.

steam_frame_replay_script_templateC

Return JSON templates for launch, ADB, CEF UI, tracking capture, and future pose replay scripts.

deckard_power_statusC

Read Deckard/Steam Frame charger runtime files and power-supply sysfs state.

pidbridge_statusC

Read pidbridge unit and socket state without speaking the private socket protocol.

deckard_runtime_environmentC

Read Deckard runtime version and Steam/Mesa launch environment defaults.

native_adbd_statusC

Read native SteamOS adbd.service status and environment.

coredump_listC

List recent Steam Frame native coredumps without opening them in a debugger.

steam_servicesC

List Steam Frame systemd services, usually filtered by steam/steamvr/gamescope/lepton.

journalctl_tailC

Tail bounded journal lines for a specific user or system service unit.

steam_frame_dev_inventoryC

Collect a bounded read-only inventory of Steam Frame OS, Lepton, services, DBus, and binary strings.

screenshotC

Capture a SteamOS screenshot and download it locally.

gpu_traceC

Collect a gpu-trace zip from the device.

rgp_captureC

Trigger and download a Radeon GPU Profiler capture.

set_renderdoc_replayC

Start or stop the RenderDoc replay server on the device.

adb_devicesA

List ADB devices and parse adb devices -l output.

adb_connect_lepton_wifiB

Connect to Steam Frame's Lepton Android container over Wi-Fi.

adb_connect_lepton_usbC

Connect to Steam Frame's Lepton Android container through USB ADB port forwarding.

adb_disconnectA

Disconnect one ADB target, or all TCP ADB targets when target is omitted.

adb_forwardC

Forward host tcp:LOCAL_PORT to device tcp:REMOTE_PORT with adb forward.

adb_reverseC

Reverse device tcp:DEVICE_PORT to host tcp:HOST_PORT with adb reverse.

adb_install_apkC

Install or replace an APK in the connected Lepton Android container.

adb_shellC

Run an arbitrary non-interactive adb shell command. Always requires confirmation.

adb_logcatC

Collect a bounded adb logcat dump; clear_first requires confirmation.

adb_bugreportC

Collect adb bugreport into a local file or folder path.

adb_unreal_insights_setupC

Set Unreal's Android tracehost property and reverse tcp:1981 for Unreal Insights.

adb_lepton_app_diagnosticsC

Collect focused Steam Frame Lepton app state, OBB, Steam env, and XR/Steam log highlights.

Prompts

Interactive templates invoked by user choice

NameDescription
deploy_and_run
pairing_troubleshooter
collect_bug_report
frame_adb_troubleshooter
steam_frame_unity_split_troubleshooter

Resources

Contextual data attached and managed by the client

NameDescription
server_info
server_doctor
devices_resource
profiles_resource
operations_resource
safety_help
android_split_obb_help
adb_help
steam_frame_dev_help

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/elliotttate/mcp-steamos-devkit'

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