Skip to main content
Glama
0aaryan

hypr-tools

by 0aaryan

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
HYPR_TOOLS_VENVNoPath to the Python virtual environment used by the optional voice_* helpers. Default is ./voice-venv.
HYPR_LED_ADDRESSNoMAC address of your BLE LED strip (LEDDMX / ELK-BLEDOM family). Optional — if unset, the strip is found by name. Requires `pip install bleak` for the led_* tools.
FIREFOX_BRIDGE_URLNoURL of the local Firefox bridge extension used by the wa_* (WhatsApp) tools. Default is http://localhost:7866.

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
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_volumeA

Get current audio output volume percentage and mute state

set_volumeA

Set audio output volume to a specific percentage (0-150)

increase_volumeA

Increase audio output volume by N percent (default 5)

decrease_volumeA

Decrease audio output volume by N percent (default 5)

toggle_muteA

Toggle audio output mute on/off

get_mic_volumeA

Get microphone input volume percentage and mute state

set_mic_volumeB

Set microphone input volume to a specific percentage (0-100)

toggle_mic_muteA

Toggle microphone mute on/off

list_audio_sinksA

List all audio output devices (speakers, headphones, etc.)

set_default_sinkA

Set the default audio output device by name or ID

list_audio_sourcesA

List all audio input devices (microphones)

set_default_sourceA

Set the default audio input device by name or ID

get_brightnessA

Get current screen brightness as a percentage

set_brightnessA

Set screen brightness to a specific percentage (1-100)

increase_brightnessA

Increase screen brightness by N percent (default 5)

decrease_brightnessA

Decrease screen brightness by N percent (default 5)

get_clipboardA

Get current clipboard text content

set_clipboardC

Copy text to the clipboard

list_clipboard_historyC

List recent clipboard history entries

paste_from_historyA

Copy a specific clipboard history entry to the active clipboard by its ID

delete_clipboard_entryB

Delete a specific entry from clipboard history by ID

clear_clipboard_historyA

Wipe the entire clipboard history

screenshot_fullA

Take a screenshot of all monitors and save to ~/Pictures/Screenshots/

screenshot_monitorA

Take a screenshot of the currently focused monitor

screenshot_regionA

Take a screenshot of a user-selected region (opens slurp selector)

screenshot_windowB

Take a screenshot of the currently focused window

screenshot_to_clipboardA

Take a screenshot of a region and copy directly to clipboard (no file saved)

start_recordingA

Start recording the screen to a video file in ~/Videos/Recordings/

stop_recordingB

Stop the current screen recording

is_recordingA

Check if a screen recording is currently in progress

start_recording_gifB

Start recording the screen as a GIF file

get_wallpaperA

Get the file path of the currently active wallpaper

set_wallpaperC

Set wallpaper to a specific image file path

next_wallpaperA

Switch to the next wallpaper in the current theme rotation

prev_wallpaperA

Switch to the previous wallpaper in the current theme rotation

list_wallpapersA

List all wallpaper files in the current theme directory

list_theme_wallpapersA

List all wallpaper files for a specific theme

get_wallpaper_colorsA

Get the extracted color palette from the current wallpaper (wallbash colors)

get_current_themeA

Get the currently active HyDE theme name

set_themeA

Switch to a specific HyDE theme by name

next_themeB

Cycle to the next HyDE theme

prev_themeB

Cycle to the previous HyDE theme

list_themesB

List all installed HyDE themes

get_wallbash_modeA

Get current wallbash color mode (theme/auto/dark/light)

set_wallbash_modeC

Set wallbash color mode

get_rofi_styleA

Get the current rofi launcher style number

set_rofi_styleB

Set rofi launcher style by number (1-12)

send_notificationC

Send a desktop notification with title, body, and optional urgency/icon

list_notification_historyA

Get recent notification history from dunst

close_all_notificationsA

Dismiss all currently visible notifications

toggle_dndB

Toggle Do Not Disturb mode for notifications

get_dnd_statusB

Check if Do Not Disturb mode is enabled

set_notification_pausedB

Pause or unpause notification display

list_windowsA

List all open windows with title, class, workspace, position, and size

get_focused_windowB

Get details of the currently focused/active window

focus_windowC

Focus a window by its class name or title substring

close_windowA

Gracefully close the focused window (or by address)

kill_windowB

Force kill a window by address (use as last resort)

toggle_floatA

Toggle floating mode on the focused window

toggle_fullscreenB

Toggle fullscreen on the focused window

pin_windowA

Toggle always-on-top pin on the focused window

move_window_to_workspaceB

Move the focused window to a specific workspace number

resize_windowA

Resize the focused window by a pixel delta

move_windowB

Move a floating window by a pixel delta

toggle_splitA

Toggle horizontal/vertical split direction for the focused window

group_windowB

Toggle window grouping (tabbed mode) on the focused window

move_to_scratchpadA

Move the focused window to the special scratchpad workspace

list_workspacesA

List all active workspaces with their IDs, names, and window counts

get_active_workspaceB

Get information about the currently active workspace

switch_workspaceB

Switch to a specific workspace by number

move_workspace_to_monitorA

Move a workspace to a different monitor

create_workspaceB

Switch to the first empty workspace (effectively creates a new workspace)

next_workspaceB

Switch to the next workspace

prev_workspaceB

Switch to the previous workspace

list_monitorsA

List all monitors with resolution, refresh rate, scale, and position

get_focused_monitorB

Get the currently focused monitor's details

set_monitor_dpmsB

Turn monitor display on or off (DPMS power management)

enable_monitorA

Enable a disabled monitor with its default settings

disable_monitorA

Disable a monitor (turns it off and removes from layout)

set_monitor_scaleC

Change a monitor's scaling factor

mirror_monitorC

Mirror one monitor to another

get_keyboard_layoutA

Get the current keyboard layout

switch_keyboard_layoutA

Cycle to the next keyboard layout

start_reading_modeC

Start key remapping for reading mode (evremap)

stop_reading_modeA

Stop key remapping for reading mode

get_media_statusA

Get currently playing track info: title, artist, album, player, status, position

media_play_pauseB

Toggle play/pause on the active media player

media_nextB

Skip to the next track

media_previousC

Go to the previous track

media_stopC

Stop media playback

media_seekB

Seek to a position in the current track (in seconds)

list_media_playersA

List all active MPRIS2 media players

get_network_statusA

Get current network connection status (WiFi SSID, IP, signal strength, device type)

list_wifi_networksA

Scan and list available WiFi networks with signal strength

connect_wifiC

Connect to a WiFi network by SSID

disconnect_wifiB

Disconnect from the current WiFi network

toggle_wifiB

Toggle WiFi radio on or off

get_ip_addressesB

Get all network interface IP addresses

get_bluetooth_statusA

Get bluetooth power state and currently connected devices

list_bluetooth_devicesA

List paired and nearby bluetooth devices

connect_bluetoothA

Connect to a paired bluetooth device by MAC address or name

disconnect_bluetoothB

Disconnect a bluetooth device by MAC address

toggle_bluetoothA

Toggle bluetooth power on or off

get_cpu_infoA

Get CPU model, usage percentage, temperature, and frequency

get_gpu_infoA

Get GPU model, usage, temperature, and VRAM usage

get_memory_infoA

Get RAM usage: used, total, available, swap

get_disk_infoA

Get disk usage per mount point

get_battery_infoA

Get battery percentage, charging state, and time remaining

get_uptimeA

Get system uptime and load averages

get_system_infoA

Get OS, kernel version, hostname, Hyprland version, and shell

list_processesA

List running processes, optionally filtered and sorted by CPU or memory usage

check_updatesA

Check for available system updates (pacman official + AUR)

search_packageA

Search for a package by name in official repos and AUR

list_installed_packagesB

List explicitly installed packages, optionally filtered by name

launch_appA

Launch an application by name or command (runs detached via hyprctl dispatch exec)

list_desktop_appsA

List all installed .desktop applications (filterable by name)

kill_appB

Kill a running application by name or PID

list_running_appsA

List running GUI applications (from Hyprland's client list)

get_waybar_modeA

Get the currently active waybar layout mode (line number in config.ctl)

set_waybar_modeA

Switch to a specific waybar layout by config.ctl line number

next_waybar_modeA

Cycle to the next waybar layout mode

prev_waybar_modeA

Cycle to the previous waybar layout mode

toggle_waybarA

Show or hide waybar (toggle visibility)

hypr_reloadA

Reload the Hyprland configuration

get_hypr_optionA

Get a Hyprland config option's current value (e.g. 'general:border_size', 'decoration:rounding')

set_hypr_optionA

Set a runtime Hyprland config option via keyword (non-persistent, resets on reload)

get_hypr_bindsB

List all active Hyprland keybindings

toggle_animationsA

Toggle Hyprland animations on or off

lock_screenA

Lock the screen using the configured screen locker (swaylock/hyprlock)

toggle_idle_inhibitorB

Prevent or allow the screen from timing out / going idle

toggle_gamemodeA

Toggle gamemode: disables animations, blur, and other effects for performance

get_gamemode_statusB

Check if gamemode (performance mode) is currently active

suspend_systemA

Suspend the system to RAM (sleep). WARNING: This will suspend your machine immediately.

pick_colorA

Open an on-screen color picker and return the selected hex color

pick_color_to_clipboardA

Pick a color from the screen and copy the hex value to clipboard

read_fileA

Read the contents of a file (sandboxed to home directory). Use for configs, logs, scripts.

write_fileA

Write content to a file (sandboxed to home directory). Creates parent directories if needed.

list_directoryA

List files and directories at a path (sandboxed to home directory)

file_infoB

Get metadata about a file: size, type, modification time

wa_send_messageA

Send a WhatsApp message via Firefox Bridge. Requires Firefox with WhatsApp Web open and the bridge extension active.

wa_list_chatsA

List visible WhatsApp chat names from the sidebar via Firefox Bridge

wa_read_messagesB

Read the last N messages from a WhatsApp chat via Firefox Bridge

led_set_colorA

Set LED strip to a specific RGB color (0-255 each) or a named color (red, green, blue, white, purple, cyan, yellow, orange, pink, warm, magenta)

led_set_brightnessB

Set LED strip brightness (0-100%)

led_powerC

Turn LED strip on or off

led_set_patternB

Set LED strip to a built-in animation pattern by index (0-210) or name. Examples: rainbow, strobe, wave, breathing, etc.

led_effectA

Run a LED animation effect: rainbow (color cycle), pulse (brightness breathing), or wave (smooth color transition)

led_scanA

Scan for BLE LED strips nearby

set_timerA

Set a countdown timer. Sends a desktop notification when it fires.

list_timersA

List all active timers with their remaining time

cancel_timerB

Cancel an active timer by its ID

cancel_all_timersB

Cancel all active timers

open_urlB

Open a URL in the default browser

open_file_managerC

Open the file manager at a given path

open_terminalC

Open a new terminal window, optionally with a command or working directory

trash_fileA

Move a file to trash (recoverable, NOT permanent delete). Uses gio trash.

show_desktopB

Minimize all windows to show the desktop

get_power_profileA

Get the current power profile (performance, balanced, power-saver)

set_power_profileC

Set the power profile

get_screen_timeoutA

Get the current screen idle timeout and lock timeout

get_thermal_infoA

Get CPU and GPU temperatures

run_macroB

Run a named macro (predefined chain of tools). Macros are defined in ~/.config/hypr/macros.json

list_macrosA

List all available macros with their descriptions and steps

get_macroB

Get full details of a specific macro

create_macroA

Create a new macro or overwrite an existing one. Steps are an array of {tool, params?} objects.

delete_macroC

Delete a macro by name

projector_setupA

Configure projector connection. Sets IP address, ADB port, Fully Kiosk Browser password and the dashboard URL. Run this first before using other projector tools.

projector_statusA

Check projector connection status. Tests ADB and Fully Kiosk Browser connectivity.

projector_open_urlC

Open a URL on the projector browser.

projector_show_dashboardA

Open the configured dashboard URL on the projector in fullscreen.

projector_wakeA

Wake up the projector screen (turn on display).

projector_sleepA

Put the projector screen to sleep (turn off display).

projector_fullscreenA

Enable fullscreen immersive mode on the projector (hide status bar and navigation).

projector_brightnessC

Set the projector screen brightness (0-255).

projector_reloadA

Reload the current page on the projector browser.

projector_screenshotC

Take a screenshot of the projector screen and save it locally.

projector_speakC

Make the projector speak text using text-to-speech.

projector_scanA

Scan the local network for Android devices that could be projectors. Uses nmap to find devices on port 5555.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

C2.9/5.0

Scored across 178 tools

Disambiguation3/5

Most tools target distinct resources and actions, but the 178-tool surface creates several overlapping areas: list_windows vs list_running_apps, close_window/kill_window vs kill_app, get_network_status vs get_ip_addresses, and led_set_pattern vs led_effect. Descriptions usually clarify the boundaries, but an agent could still misselect in these clusters.

Naming Consistency3/5

The dominant pattern is action_resource (get_, set_, list_, toggle_, start_, stop_), but there are many mixed conventions such as hypr_reload, media_play_pause, media_next, screenshot_full, wa_send_message, led_set_color, and projector_setup. The names remain readable, but the convention is not predictable across the whole set.

Tool Count1/5

178 tools is an extreme mismatch for a single MCP server, even for a broad Hyprland desktop-automation domain. The surface is far too large to navigate reliably and bundles many unrelated subsystems into one toolset.

Completeness4/5

The server covers an unusually broad set of desktop workflows: audio, brightness, clipboard, screenshots, recording, wallpapers/themes, windows, workspaces, monitors, media, network, Bluetooth, system info, packages, Waybar, Hyprland config, files, macros, LEDs, timers, and projector control. Minor lifecycle gaps exist (e.g., workspace deletion, richer window/workspace management), but most domains have workable coverage.

Maintenance

ActivityMaintained
ResponsivenessNo issues