Skip to content

MCP Server

System Bridge includes a Model Context Protocol (MCP) server, letting agents and other MCP clients query your system and trigger actions.

The server runs over a WebSocket at ws://{host}:9170/api/mcp. Replace {host} with the hostname or IP of the machine running System Bridge; the port can be changed with the SYSTEM_BRIDGE_PORT environment variable. The connection is authenticated with your API token, passed either as a token query parameter or an Authorization: Bearer {token} header. A missing or invalid token is rejected with 401 Unauthorized. See how to find your token.

Agents launch MCP servers as a local command and talk to them over stdio. Because System Bridge serves MCP over a WebSocket, a bridge such as websocat is needed to pipe stdio to the WebSocket.

With websocat installed, add System Bridge to your agent’s MCP config:

mcp.json
{
"mcpServers": {
"system-bridge": {
"command": "websocat",
"args": ["ws://localhost:9170/api/mcp?token=YOUR_TOKEN"]
}
}
}
  • Replace localhost with the host running System Bridge if the agent is on another machine.
  • Replace YOUR_TOKEN with your API token. See how to find your token.

Get current system information from one or more data modules. The tool returns each requested module’s latest data as JSON.

  • modules (required): An array of module names to fetch.

Available modules:

ModuleDescription
batteryCharge level, charging state, and time remaining.
cpuUsage, frequency, core counts, and per-core load.
disksMounted devices, partitions, and used/free space.
displaysConnected displays, resolution, and refresh rate.
gpusGPU model, load, memory, and temperature.
mediaCurrently playing media: title, artist, and playback state.
memoryPhysical and virtual memory usage.
networksNetwork interfaces, addresses, and throughput.
processesRunning processes with CPU and memory usage.
sensorsHardware sensors such as temperatures and fan speeds.
systemHostname, OS, uptime, users, and version details.

Example arguments:

{ "modules": ["cpu", "memory", "battery"] }

Send a desktop notification to the machine running System Bridge.

  • title (required): The notification title.
  • message (required): The notification body text.
  • icon (optional): An icon name to display with the notification.

Example arguments:

{ "title": "Build finished", "message": "All tests passed", "icon": "dialog-information" }

Control playback of the system’s current media session.

  • action (required): The action to perform. Must be uppercase.

Available actions:

ActionEffect
PLAYResume playback.
PAUSEPause playback.
STOPStop playback.
NEXTSkip to the next track.
PREVIOUSReturn to the previous track.
VOLUME_UPRaise the volume.
VOLUME_DOWNLower the volume.
MUTEToggle mute.

Example arguments:

{ "action": "PAUSE" }