Skip to main content
Glama
Mac Health MCP

Mac Health MCP

Startup items

startup_items
Read-onlyIdempotent

Lists macOS launch agents and daemons that start automatically, marking each as Apple or third party and making clear it only reads folder contents—no changes or deletions.

Instructions

What starts automatically: launch agents and daemons in ~/Library/LaunchAgents, /Library/LaunchAgents and /Library/LaunchDaemons, each marked as Apple or third party. Only lists folder contents; never changes or deletes anything.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "startup_items"
  }
}

Input Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is largely covered. The description nevertheless restates the guarantee in operational terms ('Only lists folder contents; never changes or deletes anything') and, more usefully, bounds the scope to those three directories, telling the agent what is deliberately NOT covered.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence front-loads the outcome ('What starts automatically'), then the locations, then the Apple/third-party label, then the read-only caveat. No filler, no restatement of the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description usefully tells the agent that entries are attributed to Apple or third party and are grouped by the three source folders, which implies the return shape. It stops short of describing exact fields or paths, so there is a small remaining gap for a tool with no output documentation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so there is nothing for the description to disambiguate; the baseline for a no-param tool applies. The description spends no words on non-existent inputs, which is the right call.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Names a specific resource and verb-phrase ('What starts automatically: launch agents and daemons') and enumerates the exact folders inspected (~/Library/LaunchAgents, /Library/LaunchAgents, /Library/LaunchDaemons). It also states the classification applied per entry (Apple vs third party), which no sibling diagnostic tool offers, so an agent can separate it from battery_report or top_processes without opening a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied by the scope statement rather than stated: an agent can infer this is the tool for inspecting auto-start persistence during a boot/slowness investigation. There is no explicit when-to-use framing (e.g. 'use when startup items are suspected of slowing boot') and no mention of any alternative, though the sibling list contains no overlapping tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.