Labsco
MCP SERVER

macOS Defaults

by g0t4

Read and change macOS settings through the defaults system, from the client.

Desktop & OS Automation
Summary
The defaults command, without remembering the domain names.

Most macOS preference tweaking is a hunt for the right domain and key followed by a command you paste. Listing the domains and reading them back makes that a conversation, and the write goes through the same mechanism the blog posts tell you to run.

What it is

A thin MCP wrapper around the macOS defaults command. list-domains is defaults domains; defaults-read is defaults read <domain> <key>, returning the whole domain when no key is given; defaults-write is defaults write <domain> <key> <value>.

What you get
  • Every preference domain on the machine listed
  • A domain read by key, or the entire domain at once
  • A preference written by domain, key and value
Requirements

macOS, plus uv or uvx to run the package. It executes the system defaults command as the user who launched it, so writes change real settings — point it at a test domain first if you want to see the shape of a write before making one.

Setup effort

One command — uvx mcp-server-macos-defaults