What PhotoPrintAgent MCP server does
PhotoPrintAgent turns uploaded customer images into physical photo-print orders delivered in the United States. It exposes product discovery, artwork specifications, image handling, design previews, price estimation, checkout, payment, and order-status operations through MCP.
The catalog includes product dimensions, image-slot rules, bleed and rotation requirements, supported formats, availability, and seller-facing product codes. Agents can work with standard prints as well as multi-image compositions and calendars. Calendar items use a cover and one image per month; the service generates the date grids. Composition items are assembled by the service from ordered source images.
How it works
An agent can begin with public catalog and estimate operations. list_products returns paginated products and their artwork requirements, while preview_print_price and estimate_print_price provide non-payable estimates. Authoritative totals come from quote_prints, which uses uploaded photo IDs, the destination, quantities, and optional coupons.
Images are uploaded separately through an authenticated binary endpoint obtained from create_upload. Each upload should use the selected product’s ID and be retained in slot order. The service accepts JPEG, PNG/APNG, WebP, GIF, HEIC/HEIF, TIFF, AVIF, BMP, and self-contained SVG files. Upload recovery uses a stable idempotency key; image bytes and options can be retried with that same key.
After a quote is approved, create_print_order creates the order only when the buyer has accepted the terms and explicitly approved the purchase. Card checkout uses a private link or returned checkout URL. Crypto payment uses a listed token, a short-lived crypto quote, and the x402 payment flow. Zero-total orders have a separate confirmation step.
Setup and configuration
The full MCP endpoint is available at https://photoprintagent.com/mcp; a narrower connector is available at https://photoprintagent.com/mcp-narrow. Public account and guest-authentication instructions are returned by get_checkout_options.
Guest checkout can mint a private guest credential once. Account users can create 90-day agent keys with a verified Firebase ID token, and can list or revoke those keys from a verified account session. Credentials and returned photo or checkout links should be stored and shared as private data.
The upload SDK is available at https://photoprintagent.com/sdk/photo-upload.mjs. Images must be sent as binary data rather than base64 or remote URLs. Use application/octet-stream when the image MIME type is unavailable, and convert unsupported encodings before upload.
Tools and capabilities
- Browse paginated products, specifications, availability, and supported artwork layouts.
- Upload, list, download, preview, and delete owned photos.
- Quote mixed products, multi-image designs, calendars, quantities, destinations, and coupons.
- Create orders, obtain checkout links, pay through card or x402 crypto flows, and confirm complimentary orders.
- List orders, inspect private order states, read event history, and request support actions.
- Subscribe an owned order to an HTTPS webhook, replay failed events, and manage subscriptions.
- Manage account agent keys and access admin-only products with an allowlisted admin session.
Limitations and notes
Printing and shipping are paid services. A quote requires buyer consent for processing the photos and delivery address, and an order requires both terms acceptance and explicit buyer approval. The service does not accept card details through MCP.
Uploads are governed by the chosen product’s artwork specifications, not a universal 4x6 layout. Minimum DPI values are quality guidance rather than upload rejection thresholds. Orders support up to 200 uploaded images and 500 product units, with no more than 500 total prints. Shipping may use a flat rate that changes between one print and two or more; agents should use the returned total rather than multiplying shipping by quantity.
Order processing and payment status are distinct. A processing state means the service accepted the order for processing, not that it has shipped. Support, address-change, cancellation, and refund tools create requests only; they do not guarantee that an action will be executed. Webhook delivery is at least once, so consumers should verify signatures and deduplicate by order ID and event sequence.