Agents (MCP)

Qix embeds an MCP server, so an AI agent can search, inspect, keyword, rate, and file your photos — through Qix's own command layer, with every safety rail attached, and every edit undoable with ⌘Z.

Why embedded matters

An agent that touched library files directly would bypass everything this manual has promised: pair-atomic planning, verified writes, the undo journal, trash-only deletion. So the MCP server lives inside the running app — agent calls execute the same code the keyboard does. An agent physically cannot split a Live pair, overwrite a file, or delete anything: there is no delete tool at all. Deletion stays a human act.

Hooking up a client

The server listens on a Unix socket that only your user account can reach — no open port, no token to leak. Clients spawn the bundled --mcp-proxy bridge. For Claude Code:

{ "mcpServers": { "qix": {
    "command": "~/Applications/Qix.app/Contents/MacOS/qix",
    "args": ["--mcp-proxy"] } } }

Qix must be running; the proxy says so plainly if it isn't.

The toolset

ToolWhat it does
qix_statethe open library, mounted sources, recents
qix_list_foldera folder's subfolders and items, Live pairs fused, with dates and ratings
qix_searchlibrary-wide search with the full query grammar
qix_inspectfull metadata for files — camera, exposure, GPS, keywords, everything
qix_thumbnailreturns an actual image — agents can look at your photos, not just their filenames
qix_set_keywords / qix_set_rating / qix_set_descriptionverified metadata writes, pair-aware, journaled
qix_move / qix_create_folderfiling — pair-atomic, hash-verified across volumes, journaled
qix_rename_preview / qix_rename_applythe same rename engine as ⌘R, preview first, one undo entry

What this makes possible

Things you can ask an agent to do against a real library, today:

Watch the app while an agent works: the grid updates live through the same watcher that tracks Finder, and afterward the whole session unwinds with ⌘Z if you disagree with its taste.

Guardrails, spelled out