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": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
scan_printersA

Scan for nearby Bluetooth LE devices to find the printer's address.

Put the printer in pairing mode (usually: hold its power button, or open its companion app once) before scanning, then look for a device name that resembles the printer (e.g. containing "D1", "GB", "Q3", "Print", or a string of letters/numbers) in the results.

Requires the LuckJingle print daemon to be running (see get_daemon_info).

probe_deviceA

Connect to a BLE device and list its GATT services/characteristics.

Useful for confirming a candidate address (found via scan_printers) is really a supported printer before adding it - a compatible printer should expose a custom service containing characteristics ending in ff01, ff02, and ff03. Note that this GATT layout alone doesn't tell you which driver to use - more than one incompatible protocol variant shares it - so still confirm with a real test print after adding it.

set_printer_addressA

Save the Bluetooth address of the printer for future print jobs.

This is a shortcut for the common single-printer case - it updates whichever printer is currently active (creating one named "default" if none exists yet). To configure more than one printer, use add_printer instead, which lets you name each one.

get_printer_configA

Return the active printer's saved configuration (address, driver, paper width, etc). Use list_printers to see every configured printer.

list_printersA

List every configured printer (name, driver, address, settings) and which one is currently active - the one print_text/print_image use when no printer is named explicitly.

add_printerA

Add (or update, if the name already exists) a named printer profile. If this is the first printer configured, it becomes the active one automatically - otherwise use select_printer to switch to it.

driver identifies the printer's protocol family - "luckprinter" (the default) covers the LuckPrinter-SDK rebrand family (NHOWIN, PPS1, C&Co 3128, DP-L1S, etc) and is the only driver available so far.

remove_printerA

Remove a configured printer. If it was the active one, another remaining configured printer (if any) becomes active.

select_printerA

Set which configured printer print_text/print_image use by default when no printer is named explicitly on the call.

set_printer_optionsA

Tune print quality for a printer. width is the paper width in dots (384 is standard for common 48mm/58mm thermal labels - only change it if prints come out cropped or skewed). density (0=light, 1=normal, 2=dark) adjusts print darkness if prints look too light/dark - leave unset to use the printer's own default. font_path points to a .ttf/.otf file to use for print_text instead of the built-in fallback. name picks which configured printer to change settings for - leave unset to use the active printer.

print_textB

Print a block of text on the label printer, wrapped to the paper width.

align may be "left", "center", or "right". printer names which configured printer to use for this one print job, overriding the active printer - leave unset to use the active printer.

print_imageA

Print an image file (PNG/JPG/etc) on the label printer.

The image is resized to the printer's configured paper width and converted to black & white. Leave dither=True for photos/gradients; set dither=False for already-black-and-white line art or text to keep edges crisp. printer names which configured printer to use for this one print job, overriding the active printer - leave unset to use the active printer.

get_daemon_infoA

Explain how to start the required LuckJingle print daemon, and whether it is currently reachable.

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/davidray/iocane'

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