MasterPark — Printing Press CLI
Prerequisites: Install the CLI
This skill drives the masterpark-pp-cli binary. You must verify the CLI is installed before invoking any command from this skill. If it is missing, install it first:
- Install via the Printing Press installer. It defaults binaries to
$HOME/.local/binon macOS/Linux and%LOCALAPPDATA%\Programs\PrintingPress\binon Windows:npx -y @mvanhorn/printing-press-library install masterpark --cli-only - Verify:
masterpark-pp-cli --version - Ensure the reported install directory is on
$PATHfor the agent/runtime that will invoke this skill.
If the npx install fails (no Node, offline, etc.), fall back to a direct Go install (requires Go 1.26.6 or newer). This installs into $GOPATH/bin (default $HOME/go/bin), so add that directory to $PATH instead:
go install github.com/mvanhorn/printing-press-library/library/travel/masterpark/cmd/masterpark-pp-cli@latest
If --version reports "command not found" after install, the runtime cannot see the binary directory on $PATH. Do not proceed with skill commands until verification succeeds.
Unofficial command-line client for MasterPark airport parking reservations using the netParkV2 WordPress/AJAX endpoints behind masterparking.com.
Command Reference
locations — List MasterPark parking locations.
masterpark-pp-cli locations— List parking lots.masterpark-pp-cli locations --json— List parking lots as JSON.
quote — Price a parking date range.
masterpark-pp-cli quote --lot B --dropoff "2030-06-11 07:00" --pickup "2030-06-13 18:30"— Get standard quotes.masterpark-pp-cli quote --lot G --dropoff "2030-06-11 07:00" --pickup "2030-06-13 18:30" --vehicle-type oversize --json— Get oversize quotes as JSON.
auth — Manage credential sources without printing passwords.
masterpark-pp-cli auth check— Report which credential sources are available.masterpark-pp-cli auth from-1password --vault Agent --item Masterparking --login-check --save— Load from 1Password, validate login, and save only non-secret references.masterpark-pp-cli auth sync-profile --username-command "op read op://Agent/Masterparking/username" --password-command "op read op://Agent/Masterparking/password"— Save non-secret customer and vehicle defaults from the account.
reservations — Read the reservations profile endpoint.
masterpark-pp-cli reservations list --json— List reservations returned by MasterPark's profile/history endpoint.
Important: reservations list is not authoritative for freshly-created bookings. In live testing, saveReservation returned an active reservation and MasterPark sent a confirmation email, but listReservations did not immediately include that new reservation. Treat the successful saveReservation response and confirmation email as the source of truth immediately after booking.
reserve — Compose or submit a parking reservation.
masterpark-pp-cli reserve --lot B --dropoff "2030-06-11 07:00" --pickup "2030-06-13 18:30" --quote 0— Dry-run a reservation; does not book.masterpark-pp-cli reserve --lot B --dropoff "2030-06-11 07:00" --pickup "2030-06-13 18:30" --quote 0 --submit --yes— Submit the reservation for real.
reserve is dry-run by default. Real booking requires both --submit and --yes. Under PRINTING_PRESS_VERIFY=1, it no-ops before calling live mutation endpoints.
Credential Safety
Credential injection is generic and not tied to 1Password. Commands that need login accept direct flags and command-output flags:
masterpark-pp-cli auth check --username-command "op read op://Agent/Masterparking/username" --password-command "op read op://Agent/Masterparking/password"
Password values are never printed or persisted. Config may store non-secret metadata, command references, and saved customer/vehicle profile data.
Exit Codes
| Code | Meaning |
|---|---|
| 0 | Success |
| 1 | Error |
Argument Parsing
Parse $ARGUMENTS:
- Empty,
help, or--help→ showmasterpark-pp-cli --helpoutput. - Starts with
install→ follow Prerequisites above. - Anything else → run the requested
masterpark-pp-clicommand. Prefer--jsonfor machine-readable output.