Lodestar
An iPhone and iPad app that sets up a Sony camera from one sentence and takes the shot.
Built by David Vinkenroye in Geneva.
The story
I bought a Sony a7 and shot sunsets in Auto for way too long. The remote apps only give you buttons and the AI photo apps mostly give you advice, and I wanted an app that changes the settings for me. So I built Lodestar (still a working name). You describe the photo, for example "portrait by the window, soft background", and the phone connects to the camera's own Wi-Fi and suggests ISO, aperture, shutter, white balance and focus.
When you tap, the settings go to the camera, and a setting only counts once the camera reads it back. Then the app takes the shot, downloads the JPEG and checks it with real measurements: histogram, clipping, sharpness and colour cast. If something is off, one tap fixes it and takes the photo again.
Only the phone talks to the camera, over SSH and PTP/IP with a host key pinned at pairing, and the camera credentials stay in the Keychain. An on-device engine answers every request first, so the app still works on a hill with no signal. When there is signal, a backend on Cloudflare in the EU improves the answer with the model the user picked (Claude, OpenAI, Gemini or an open model), and it only uses providers the user agreed to. Photos are never stored on a server.
The first version was a small Python MCP server. It connected the camera to Claude Desktop over USB-C with eight tools to read and change the settings, get live view, shoot and see the result as numbers a model can use. It worked well, so I rebuilt it for the phone and the camera's Wi-Fi, and I built SimCam, a simulated a7 V made from recorded camera traffic, so I don't need the real camera for every test. The MVP runs end to end against SimCam, the first checks on a real a7 V over Wi-Fi have passed, and the full device checklist is next.
What was built
- The full loop: describe the shot, apply the settings, read them back from the camera, shoot, check the result, fix with one tap and reshoot
- Camera code in Swift using PTP/IP with Sony extensions over SSH, with an exactly pinned host key
- SimCam, a camera simulator built from recorded a7 V traffic, used for tests and as a demo camera
- Choice of model: Claude, OpenAI, Gemini or an open model, sent only to providers the user approved
- An instant on-device suggestion for every request, with cloud refinement when there is signal
- The AI only acts during a turn the user started, and every photo needs a tap
- iPad layout with a fixed inspector panel; landscape viewfinder on iPhone
- First version: an MCP server for Claude Desktop with 8 tools over USB-C, showing exposure as text bars a model can read
Key facts
- The first prototype: an MCP server for Claude Desktop with 8 tools
Stack
- Swift 6
- SwiftUI
- SwiftNIO SSH
- PTP/IP
- TypeScript
- Cloudflare Workers
- Durable Objects
- Vercel AI SDK
- XcodeGen
- Python
- MCP (FastMCP)
- gphoto2
Themes
AI agents
I wanted a personal AI assistant that can do everything online for me, and it can even make phone calls. I build them with whichever models and tools fit best: Claude, OpenAI, Gemini, open models and plenty of plain code.
Ask before acting
For actions like sending, paying, deleting or taking a photo, my apps wait for a tap from the user. When the AI changes something, you see the change and the reason for it, and where I can, there's an Undo button.
Retrieval and grounding
I want models to answer from the original records, so they read them when the question is asked. I measure recall against real questions. In Lodestar, a camera setting only counts once the camera reads it back.
MCP and tool use
I use the Model Context Protocol to connect AI assistants to real things: a camera, a photo library, my own archive and Emineon OS, my recruiting tool. I keep each server small with only a few tools, and read-only where that matters.
Cameras and photos
I take far more photos than I ever sort, so I built some tools for it. Lodestar sets up the camera before I shoot. Lightbox helps me choose which photos to keep, and Retouch Studio edits a whole shoot at once.