Skip to main content
Glama
anonyme-afk

Universal Device MCP

by anonyme-afk

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
UDMCP_POLICYNoPath to a JSON file containing optional local communication restrictions. No policy is imposed by default.
UDMCP_DATABASENoOverride the SQLite database path. The default database lives in the operating system's per-user application data directory under UniversalDeviceMCP/devices.sqlite3.
UDMCP_AUTO_MONITORNoSet to false to disable the automatic background monitor for USB, HID, serial and ADB devices.true

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
}

Tools

Functions exposed to the LLM to take actions

NameDescription
discover_devicesA

Discover connected devices using available USB, serial, BLE, Android ADB and iOS adapters.

Optionally restrict transports to usb, hid, serial, bluetooth, adb, ios or network. Optional adapter dependencies and OS access errors are reported per transport without stopping other scans.

get_runtime_statusA

Report runtime, adapter, optional-library and host-tool availability without scanning hardware.

discover_wireless_devicesB

Discover BLE/local mDNS services, wireless Android ADB and paired iOS mobdev2 services.

pair_android_over_wifiA

Pair Android Wireless Debugging using a six-digit code shown by the owner on the device.

The endpoint must currently be advertised by ADB mDNS as a TLS pairing service. The code is passed through stdin to adb and is not saved in device memory or experiment history.

connect_android_over_wifiB

Connect to an Android TLS ADB service currently advertised by ADB mDNS.

list_known_devicesA

List device profiles saved in the local knowledge database.

start_device_monitorC

Start automatic USB, HID, serial and ADB connect/disconnect monitoring in this server.

stop_device_monitorB

Stop automatic device connection monitoring.

get_device_eventsA

Read persistent connect/disconnect events; pass the last event id to fetch new events.

get_access_policyA

Show the optional local policy from UDMCP_POLICY; absent policy leaves operations unrestricted.

inspect_deviceB

Inspect known device details and transport-specific interfaces/services.

communicateA

Perform a generic transport operation. Payload bytes are supplied as hexadecimal.

Serial supports read/write/send/receive. USB supports read/write plus control_read and control_write; endpoints, lengths and USB control setup fields belong in options. BLE supports read/write using a characteristic UUID. ADB supports execute with argv in options. iOS supports lockdown inspection and pymobiledevice3 commands through argv, with the selected UDID pinned by the adapter and no shell. Pass session_id from open_interface to reuse a persistent session. Transport access may change device state; target and payload must be deliberate.

open_interfaceC

Open a persistent USB, HID, serial, TCP or UDP interface and return its session id.

close_interfaceB

Close a previously opened interface session and release its operating-system handle.

remember_discoveryC

Append knowledge to a device profile with confidence='hypothesis' or 'confirmed'.

update_device_profileA

Edit a saved profile's name, identity, hardware metadata or interface list.

Identity and hardware objects are merged with existing values; interfaces are replaced. Device fingerprint and transport cannot be edited because they identify the physical target.

get_device_knowledgeC

Read all retained discoveries and the recent communication experiment history.

analyze_payloadA

Inspect generic bytes and optionally compare a sample with a baseline.

Returns common text and integer views, entropy, changed offsets, and cautious hypotheses. This is analysis, not protocol identification; save validated findings separately.

export_device_profileB

Export a complete device profile as JSON text for backup or sharing.

forget_deviceA

Permanently delete one device profile and its saved discoveries and experiments.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
Known device profilesLocal inventory and remembered technical profiles for discovered devices.

TDQS

B3.4/5.0

Scored across 20 tools

Disambiguation4/5

Most tools have clearly distinct targets: discovery, monitoring, profile management, interface sessions, and payload analysis are separable. The main overlap is between discover_devices and discover_wireless_devices, since discover_devices can also include wireless transports, and communicate/open_interface boundaries require reading descriptions carefully.

Naming Consistency4/5

Names are consistently snake_case and mostly follow a verb_noun convention such as discover_devices, get_runtime_status, and update_device_profile. The only notable deviation is the verb-only name communicate, which is still understandable but breaks the pattern slightly.

Tool Count4/5

Twenty tools is somewhat heavy but defensible for a universal device server spanning discovery, monitoring, Android wireless workflows, interface sessions, profile knowledge, and payload analysis. Each tool has a meaningful role, though the surface is larger than the typical 3-15 tool range.

Completeness4/5

The set covers the core lifecycle well: discovery, monitoring/events, device inspection, interface open/close, communication, profile CRUD/export, and knowledge retention. Minor gaps remain, such as policy mutation, granular deletion of discoveries/experiments, or a more generic device connection abstraction beyond Android wireless.

Maintenance

ActivityMaintained
ResponsivenessNo issues