Automate Event Photos with a CLI and AI Agent

#cli#automation#ai#mcp#developer#events#photos
@PartoskaEN
Cover image for "Automate Event Photos with a CLI and AI Agent" blog post.

Automate Event Photos with a CLI and AI Agent

You just wrapped up organising the company offsite. Three days, forty people, hundreds of photos scattered across phones. Now you're sitting at your laptop, dreading the part where you message every single attendee: "Hey, can you send me your pics?"

You open a terminal instead.

p6a create -n "Spring Offsite 2026" p6a qr -e ${ID} -t offsite-qr.png

Two commands. The event exists, the QR code sits on your desktop, and you haven't touched a browser. Guests scan it, upload from their phones, done. Tomorrow morning you'll run p6a sync -t ~/photos and every image lands in a neatly organised folder.

That's Partoska from the command line. And it gets better: if you use an AI assistant, you don't even need the terminal.

Why a CLI for Event Photos?

Most photo-sharing tools give you a web dashboard and nothing else. That works fine if you run one birthday party a year. But what if you organise weekly meetups? Monthly company events? A sports league with matches every Saturday?

Clicking through a web UI twenty times a month gets old fast. You start forgetting to create events. The QR codes don't get printed. Half the photos never get collected.

A command-line tool changes the equation. Scripts don't forget. Cron jobs don't procrastinate. And a two-line shell script can do in seconds what takes five minutes of pointing and clicking.

Partoska is one of the first event photo-sharing platforms to ship a full CLI and AI agent integration. No other tool in this space offers anything close.

The Three Layers

Partoska gives you three ways to manage events, each suited to a different workflow:

1. The Web App

The familiar way. Login to Partoska, click "Create Event", fill in the details. Great for one-off events where you want a visual interface. No app download needed for you or your guests, works on any device with a browser.

2. The CLI (p6a)

A lightweight command-line tool for macOS, Linux, and Windows. Authenticate once with p6a login, then manage everything from the terminal.

Create an event and get its QR code in two commands:

ID=$(p6a create -n "Summer BBQ" -1) p6a qr -e "${ID}" -t summer-bbq-qr.png

Sync all your event photos to a local folder:

p6a sync -t ~/event-photos

Sync is smart: it skips files you already downloaded, organises photos into folders named YYYY-MM-DD Event Name, and handles images and videos alike. Run it once, run it nightly via cron, it doesn't matter. The result is always the same: every photo, neatly filed.

Back up only your own events, automatically:

#!/usr/bin/env bash set -euo pipefail p6a sync -t ~/backup --owner-only echo "Backup complete: $(date)"

Schedule that with cron and you never think about photo backups again.

Export event data for spreadsheets or scripts:

p6a list -F csv > events.csv p6a list -F json | jq '.[] | {name: .name, id: .id}'

The CLI outputs JSON, CSV, or plain text. Pipe it into jq, awk, or whatever you like. It plays well with the rest of your toolchain.

3. The AI Agent (MCP + Skills)

This is where things get interesting. Partoska runs an MCP server at https://api.partoska.com/mcp/v1 that any compatible AI assistant can connect to. There's also an open-source skill package you can install in one line:

npx skills add https://github.com/partoska/p6a-skills

Once connected, your AI assistant can manage Partoska directly. No commands to memorise, no flags to look up. Just tell it what you want:

  • "Create an event called Team Retreat and give me the QR code"
  • "Show me all my events from this month"
  • "Sync my photos to ~/backup"
  • "Write a script that backs up my favourite events every night"

The agent figures out whether to use MCP tools (for in-conversation tasks) or CLI commands (for scripts and automation). You just describe the goal.

Automate Event Creation

If you run recurring events, automation saves real time. A sports club with weekly matches can script the whole season:

#!/usr/bin/env bash set -euo pipefail MATCHES=("Round 1 vs Rovers" "Round 2 vs United" "Round 3 vs Athletic") for MATCH in "${MATCHES[@]}"; do ID=$(p6a create -n "${MATCH}" -1) p6a qr -e "${ID}" -t "qr-${ID}.png" echo "Created: ${MATCH} (${ID})" done

Every match gets its own event and QR code, ready to print. The whole season set up in seconds.

Or let your AI assistant handle it: "Create events for our next five home matches and download the QR codes." Then, just take the files with codes or links.

Generate Invitations Without Clicking

The QR code is your invitation. Partoska generates one for every event, and the tool gives you two formats (vector and bitmap):

p6a qr -e "${ID}" -t invite.png # PNG p6a qr -e "${ID}" -s -t invite.svg # SVG

Print it on a poster. Drop it into a slide deck. Tape it to the entrance. Guests scan, upload photos, and the collection grows on its own. No app installs, no account signups, no friction.

Need the shareable link instead?

p6a link -e "${ID}"

Send it over email, Slack, or whatever channel your team uses. Both the QR and the link lead to the same upload page.

Who Is This For?

You don't need to be a developer. If you can open a terminal and type a command, you can use p6a. But the people who benefit most are:

  • Community managers running weekly or monthly events who want to stop repeating the same clicks
  • Sports clubs with a full season of matches to set up at once
  • Corporate event planners who need photo collection baked into their existing workflows
  • Anyone building on top of Partoska, whether that's a custom dashboard, a Slack bot, or an internal tool

The REST API and MCP server mean Partoska fits into whatever stack you're already using.

But My Events Are Simple

Fair point. If you run one birthday party a year, the web app is all you need. Create the event, print the QR, collect the photos. It's free for small events and takes about a minute.

Start Your Event (Free)

But the moment you catch yourself doing the same thing for the third time, that's when a script starts making sense. And once you have the CLI installed, you'll wonder why every app doesn't work this way.

Where to Put the QR Code

Whether you generated it from the web app, the CLI, or asked your AI to do it, the QR code works the same. A few placement tips that make a real difference:

  • At the entrance. Catch people when they arrive, before they get distracted.
  • On each table at seated events. A small printed card works perfectly.
  • On the projector between presentations or during breaks.
  • In the event chat. Share the link alongside the QR for people who aren't physically there.
  • On the trophy/podium area at sports events. That's where people take the most photos.

Privacy and Control

Every event you create is yours. You choose whether it's public or private (p6a update -e ${ID} -p for public, -P for private). You can moderate uploads, remove content, and control who sees what. Partoska's moderation tools work the same regardless of how the event was created.

The Contest Trick

Want three times more uploads? Announce a "best photo" contest at the event. The prize can be anything: leftover cake, a coffee voucher, bragging rights. People who wouldn't bother uploading suddenly become photographers. It sounds silly. It works absurdly well.

Pricing

The free tier covers small events (25 MB storage, 7 days). For bigger events or ongoing use, paid plans unlock more storage and longer retention. The CLI and MCP server work on all tiers, free included.

Get Started

Web: Create an event in your browser.

CLI: Install p6a from GitHub releases, run p6a login, and you're set.

AI Agent: Add the Partoska skill to your agent, or connect to the MCP server at https://api.partoska.com/mcp/v1.

Pick whichever fits your workflow. They all create the same events, generate the same QR codes, and collect the same photos.

FAQ

Do I need to install anything to use Partoska? Guests don't. They scan a QR code and upload from their browser. As an organiser, the web app needs nothing installed either. The CLI (p6a) is optional for people who want terminal access.

What platforms does the CLI support? macOS, Linux, and Windows. Pre-built installers are available for all three: .pkg for Mac, .deb/.rpm for Linux, and a setup executable for Windows.

Is the MCP server free to use? Yes. The MCP server and CLI work on all plans, including the free tier. Your plan limits apply to storage and retention, not to how you access the service.

Can I automate event creation for a whole season? Absolutely. Write a shell script that loops through your events and calls p6a create for each one. Or ask your AI assistant to do it. Both approaches work.

Do CLI-created events differ from web-created ones? No. An event is an event regardless of how it was created. The QR codes, upload links, and photo galleries are identical.

Can my AI assistant download photos? The MCP server can list and preview photos (low resolution), but full-quality downloads require the CLI: p6a sync or p6a download. This is a protocol limitation, not a Partoska restriction.

Is the source code open? The CLI and skills package are open-source on GitHub under the MIT license. The Partoska service itself is a hosted platform.