MDK Logo

Supported apps

The apps MDK ships and the routes each serves

Overview

A Gateway serves exactly the apps your stack declares in spec.apps[], and nothing else. Nothing here auto-registers: an app contributes its routes only when a stack names it. MDK ships the apps under backend/apps/, each offered through mdk onboard and declared by its package name (@tetherto/mdk-app-<name>).

The paths below are the ones in each app's route table. The Gateway serves them under /apps/<name> unless the app's spec.apps entry sets mount; mount: / serves them as written. The agent app must be mounted at /, because its UI calls /agent/sessions… at the Gateway root.

Route tables

Optional apps

agent

MethodPathDescription
POST/agent/sessionsOpens an agent session bound to the caller's identity
POST/agent/sessions/:id/messagesStreams an agent turn over SSE; write tools pause for an operator's approval
POST/agent/sessions/:id/approvals/:approvalIdApproves or rejects a paused write, resuming or ending the turn
DELETE/agent/sessions/:idDeletes a session owned by the caller

demo

MethodPathDescription
GET/api/demo/summaryFans out metrics telemetry to every registered device whose Worker exposes hashrate_rt in TH/s (what mdk create worker scaffolds) and returns fleet totals plus a per-device breakdown. Aggregation lives here — workers only ever answer for one device
GET/api/demo/historyPulls the history telemetry channel (recent samples) for every matched device that declares one, or a single device when deviceId is set. Devices without the channel are listed with hasHistory: false and no samples

Next steps

On this page