Skip to main content
Glama
linuxkafe

DevKitPro Deck MCP Server

by linuxkafe

DevKitPro Deck

CI

Decky Loader plugin to control the devkitpro toolchain on the Steam Deck. devkitpro runs inside a rootless podman container and exposes a Model Context Protocol (MCP) server that this OpenCode session consumes for Nintendo 3DS compilation.

Features

  • On-demand service control — start/stop the MCP server from the Decky overlay in Gaming Mode

  • Status panel — image present, container running, toolchain version

  • Toolchain info — devkitARM version, libctru, 3dsx.specs, examples

  • CLI — devkitpro-deck command for SSH/headless control

  • MCP server — exposes compile_3ds, clean, toolchain_status, list_libraries, list_groups tools to OpenCode

Related MCP server: MCP Build Environment Service

Architecture

Steam Deck (deck@steamdeck)
├── podman container (docker.io/devkitpro/devkitarm)
│   ├── devkitARM 16.1.0
│   ├── libctru
│   ├── dkp-pacman
│   └── 3DS examples
├── MCP server (mcp/server.py) — stdio transport
├── Decky plugin (main.py + src/index.tsx)
└── CLI (cli.py)

Prerequisites

  • Steam Deck with Decky Loader installed

  • Rootless podman (comes with SteamOS)

  • devkitpro image pulled (the plugin can pull it)

Installation

Quick

curl -fsSL https://raw.githubusercontent.com/linuxkafe/deck-3dsdevkit/main/install.sh | sh

GitHub repository →

The installer downloads the plugin, installs it to the Decky plugins directory, and restarts the plugin loader.

Manual

# Clone and copy
git clone https://github.com/linuxkafe/deck-3dsdevkit.git
sudo cp -r deck-3dsdevkit /home/deck/homebrew/plugins/devkitpro-deck
# Restart Decky (Settings > Reload)

Usage

Decky Plugin

Open Game Mode → Decky → DevKitPro Deck. Shows:

  • Image status (present/missing)

  • Container status (running/stopped)

  • Toolchain version

  • Pull button if image missing

CLI

devkitpro-deck status        # Full status JSON
devkitpro-deck pull          # Pull the devkitpro image
devkitpro-deck toolchain     # Toolchain info
devkitpro-deck version       # Plugin version

MCP Tools (OpenCode)

Once the MCP server is running, this OpenCode session can use:

Tool

Description

compile_3ds(source_path)

Compile a 3DS project to .3dsx

clean(project_path)

Clean build artifacts

toolchain_status()

Check toolchain health

list_libraries()

List available libraries

list_groups()

List predefined groups

Troubleshooting

Image not found

devkitpro-deck pull

Plugin not loading

  • Restart Decky: Settings → Reload

  • Check logs: journalctl -u plugin_loader

Container not starting

podman run --rm docker.io/devkitpro/devkitarm echo "OK"

License

MIT

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    F
    maintenance
    Enables secure execution of shell commands and file operations within isolated Docker containers. Provides process management, interactive input handling, and comprehensive file system operations for containerized development environments.
    33 npm
    6
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Provides secure access to containerized build environments for software projects, enabling AI assistants to execute builds, run tests, manage git operations, and inspect build artifacts without requiring local installation of dependencies.
    6
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables management of Podman containers, pods, images, and compose stacks via natural language, with support for container stats, logs, exec, health analysis, and a web dashboard.
    1
    MIT