Skip to main content
Glama
Terence1219

airbattery-mcp

by Terence1219

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
AIRBATTERY_CLINoOptionally set the environment variable AIRBATTERY_CLI to the absolute path of the AirBattery CLI executable if automatic discovery does not find it. The server finds AirBattery's command line tool in this order: $AIRBATTERY_CLI, /usr/local/bin/airbattery, /Applications/AirBattery.app/Contents/Resources/abt, ~/Applications/AirBattery.app/Contents/Resources/abt, then airbattery on PATH.

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
get_battery_statusA

Get current battery levels of the user's devices (AirPods, iPhone, mice, headphones, speakers...).

Data comes from the AirBattery app on this Mac. Each entry has:

  • level_percent: battery level 0-100

  • status: charging / discharging / paused / unknown

  • minutes_since_update: how old the reading is

  • stale: true when older than 10 minutes. A stale device is probably disconnected, so its level is the last known value, not the current one. Say so when answering.

Non-Apple devices only report while connected to this Mac, and some report coarse levels, so treat small differences cautiously.

Args: device: optional case-insensitive name filter, e.g. "airpods" or "mx master". include_nearcast: also include devices reported by other Macs on the LAN via AirBattery Nearcast.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.6/5.0

Scored across 1 tool

Disambiguation5/5

There is only one tool, so there is no possibility of misselection or overlap. Its purpose (read current battery levels) is stated precisely and its scope is unambiguous.

Naming Consistency5/5

get_battery_status follows a clean verb_noun convention with no competing names to clash against. Within a single-tool server, naming is maximally consistent.

Tool Count3/5

A single tool is on the thin side even for a narrow domain; a companion tool (e.g. listing known devices or per-device history) would round out the surface. The one tool does earn its place and the count is not excessive.

Completeness4/5

The read path is well covered: filtering by device, Nearcast inclusion, and rich per-entry metadata with staleness semantics. Minor gaps remain (no device enumeration without a call, no history or alerting), but the stated purpose is fully served.

Maintenance

ActivityMaintained
ResponsivenessNo issues