Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

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

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
niri_get_windowsA

List all open windows in Niri DE with titles, app IDs, window IDs, workspace IDs, and focus status.

niri_get_workspacesA

List all workspaces in Niri DE with workspace index, names, output monitors, and active status.

niri_get_outputsA

List connected display monitors (outputs) with resolutions, modes, scaling, and focus state.

niri_get_layersA

List open Wayland layer-shell surfaces in Niri (desktop bars, panels, quickshell, notifications).

niri_get_keyboard_layoutsA

Get configured keyboard layouts and current active layout index in Niri.

niri_get_focusedA

Get detailed information about the currently focused window and currently focused display monitor.

niri_focus_windowA

Focus a window in Niri. Provide window_id (numeric ID) OR search_query (matches window title or app_id like 'firefox', 'terminal', 'code').

niri_focus_workspaceA

Switch active workspace in Niri by index number (e.g. '1', '2', '3') or workspace name.

niri_move_window_to_workspaceA

Move currently focused window/column to specified workspace by index or name.

niri_move_window_directionA

Move focused window or column in specified direction. direction options: 'left', 'right', 'up', 'down', 'first', 'last'

niri_set_column_widthA

Set focused column width. width options: '50%', '33.333%', '+10%', '-10%', 'switch-preset', or 'expand'.

niri_close_windowA

Close the currently focused window, or close a specific window by its numeric ID.

niri_reload_configA

Reload Niri DE configuration file (config.kdl).

niri_perform_actionC

Perform a Niri layout or window action. Examples of action_name:

  • 'maximize-column': Toggle maximize column width

  • 'toggle-window-floating': Toggle floating window mode

  • 'toggle-overview': Toggle desktop overview

  • 'center-column': Center focused column on screen

  • 'consume-or-expel-window-left': Group/ungroup window

  • 'set-column-width': Set width (e.g. args=['50%'])

  • 'toggle-column-tabbed-display': Switch column between normal and tabbed mode

niri_spawn_appA

Launch a desktop application or shell command in the Niri session (e.g., 'kitty', 'firefox', 'thunar', 'pavucontrol').

niri_take_screenshotA

Capture a screenshot on Niri DE. target: 'screen' (entire focused monitor) or 'window' (focused window only). Returns path to saved screenshot image file.

arch_discover_toolsB

Automatically discover all installed CLI utilities, terminal emulators, package managers, Wayland helpers, and desktop monitors installed on the system.

arch_get_shell_infoA

Inspect user default shell, PATH environment, active desktop session, and installed terminal emulators.

arch_exec_terminal_cmdA

Execute any terminal/CLI command in the user's shell environment. Captures stdout, stderr, exit code, and handles timeouts cleanly.

arch_spawn_terminalB

Launch an interactive graphical terminal window (e.g. Alacritty, Kitty, Foot) inside Niri DE session. Optionally pass a command to run inside the terminal window.

arch_journalctlB

Fetch systemd service or kernel logs via journalctl.

arch_get_system_infoA

Retrieve Arch Linux / CachyOS system hardware overview, OS version, kernel, CPU, GPU, memory, and uptime.

arch_package_queryB

Query Arch Linux / CachyOS pacman package database (search installed packages or remote repositories).

arch_aur_searchA

Search Arch User Repository (AUR) & CachyOS software repositories using yay.

arch_check_updatesA

Check pending software updates available for Arch Linux / CachyOS.

arch_systemctlA

Manage systemd services on Arch / CachyOS. action: 'status', 'start', 'stop', 'restart', 'enable', 'disable', 'is-active' unit_name: Name of systemd unit (e.g., 'pipewire.service', 'bluetooth', 'networkmanager') user_mode: True for user services (--user), False for system-wide services

arch_process_listA

List running system processes ordered by CPU/Memory usage or search process by name.

arch_kill_processA

Terminate a running process by its PID using specified signal (SIGTERM or SIGKILL).

arch_audio_controlA

Control PipeWire audio volume or muting via wpctl on Arch/CachyOS. action: 'status', 'set_volume', 'toggle_mute' value: Volume percentage integer (e.g. 50, 80) when action is 'set_volume'.

arch_brightness_controlA

Query or adjust screen brightness using brightnessctl. action: 'get' or 'set' percent: Target brightness percentage integer (1-100) when action is 'set'.

arch_send_notificationA

Send a desktop notification to Niri DE via notify-send. urgency: 'low', 'normal', 'critical'

arch_network_statusA

Query active network connections, Wi-Fi, and Ethernet devices using nmcli.

arch_battery_statusA

Check battery status, capacity level, and charging state.

arch_clipboard_getA

Get current text content from the Wayland clipboard (wl-paste).

arch_clipboard_setA

Set text content into the Wayland clipboard (wl-copy).

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/oki3505F/arch-niri-mcp'

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