MCP SteamOS Devkit
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ADB_PATH | No | Path to adb executable for Steam Frame Lepton/Android work (e.g., %LOCALAPPDATA%\Android\Sdk\platform-tools\adb.exe). | |
| AAPT_PATH | No | Path to aapt executable for APK metadata inspection (e.g., %LOCALAPPDATA%\Android\Sdk\build-tools\<version>\aapt.exe). | |
| STEAMOS_DEVKIT_CLIENT_ROOT | No | Path 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_ROOT | No | Path to a source checkout of steamos-devkit (optional). | |
| STEAMOS_DEVKIT_SSH_PASSWORD | No | SSH password fallback if the device has not accepted the devkit SSH key. |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| 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
| Name | Description |
|---|---|
| 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
| Name | Description |
|---|---|
| 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
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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