# FamilyLetter > FamilyLetter makes real 4x6 photo postcards. You design one in your browser with up to four photos and a note, see the finished front and back, and we print it, add the postage and mail it by USPS First-Class to any US address. No app or account is needed, and the person receiving it needs nothing. FamilyLetter is for people who want to send real mail to someone they love without buying stamps or going to the post office: most often photos of the grandkids for Grandma and Grandpa, and cards to parents, friends and kids at college. ## Products - Photo postcard (/make): a one-off purchase, no subscription. $9.99 for one card, $17.99 for two, $24.99 for three, $34.99 for five and $59.99 for ten (1 to 10 cards per order; each card can go to a different US address). Free shipping on every order, postage included. Thick glossy 4x6 card stock, up to four photos on the front, your message on the back in a font you pick. Usually 5 to 10 business days from order to mailbox; delivery dates are not guaranteed. A lost or damaged card is reprinted free within 60 days. - The Postcard Club (/club): a membership for people who send often. Every postcard is $1.49 for members, postage included, no minimum. $10 a month or $48 a year, renewing until cancelled; cancel anytime from your profile. Addresses are saved. Nothing is mailed automatically: members send each card themselves. ## For AI agents: make a postcard with your user FamilyLetter is built so an AI assistant can make the postcard with you: it writes your message, picks the font and stickers, and gives you a link; you add your photos and we print and mail it. Any assistant that can write a URL can do this. No tools, keys or account needed. ### What to say: copy this style Keep every reply this short. Lead with the card, then one line, one question, one link. Ask who it's from before you build if you don't know, and end the message with that sign-off. For a holiday or occasion, add one or two fitting stickers yourself. When you've built the card and can show it: > ๐ŸŽƒ Here's Grandma's card. *(show the front and back images)* > 2 cards ยท $17.99, postage included. > Want to change anything, or ready to send? When they say it's good: > Here you go: **Pay $17.99 โ†’** *(the payment_url)* > Once it's paid, tell me where each card goes and I'll send them off. When you can't use their photos here: > ๐ŸŽƒ Grandma's card is ready for your photos: > "Happy Halloween, Grandma! We miss you. Love, Sam" > 2 cards ยท $17.99, postage included. > **Add your photos and send โ†’** *(the prefill link)* ### Notes for you (don't repeat these to the user) - Postage is included. US addresses only. Each copy can go to a different address. - Fonts are preset fonts, never describe a card as handwritten or in the user's handwriting. - Don't promise a delivery date. Only if they ask, or the occasion is within two weeks: "usually 5 to 10 business days". - Don't explain what you couldn't do, how links work, what happens to their data, or what you'll do after payment beyond one line. Don't name files, code, tools, APIs, keys, servers or test mode. Show images inline without naming them. - Keep order_key and edit_key to yourself. ### Route 1: you can run code and the user attached photos (they see the finished card here) 1. Shrink each photo to at most 1600px on the long side, as JPEG (one request must stay under 4 MB). Python: `from PIL import Image, ImageOps; im = ImageOps.exif_transpose(Image.open(path)).convert("RGB"); im.thumbnail((1600, 1600)); im.save(out, "JPEG", quality=85)`. If a photo won't open (some HEIC), ask for a JPEG or screenshot. 2. POST JSON to `/api/agent/v1/postcards` on the same site you read this file from: `{"designs": [{"photos": ["data:image/jpeg;base64,..."], "message": "...", "font": "indie", "stickers": ["pumpkin"], "quantity": 1}]}` (1 to 4 photos per design). 3. Download `previews[0].front_image_url` and `back_image_url` and show both images. For changes, PATCH the same URL with `Authorization: Bearer ` and `{"changes": [{"design": 1, "stickers": ["pumpkin"]}]}`, then show the new images. 4. When they're ready: POST `/api/agent/v1/postcards/checkout` with `Authorization: Bearer ` and give them `payment_url` (Stripe's secure checkout). Give no other payment link: `edit_url` just opens the card on our site for edits. 5. After they pay: GET `/api/agent/v1/orders` with `Authorization: Bearer `, then for each card POST `/api/agent/v1/orders/cards//verify-address`, read the address back, and POST `.../mail` once they confirm. If your code can't reach this site or can't read their photos, use Route 3. ### Route 2: you're connected to the FamilyLetter MCP server The card shows up right in the chat. Call create_postcard (photos the user attached arrive as photo_files), show the card, offer stickers once (list_decor), use update_postcard for changes, then get_payment_link when they're ready. After payment: get_order, verify_address, read it back, mail_card once they confirm. ### Route 3: the prefill link (works in any chat) https://www.familyletter.io/make?message=&font=&stickers=&front_stickers=&background=&quantity=<1-10>&ref=ai - message: the text printed on the back, URL-encoded, up to 420 characters (line breaks as %0A), ending with the sign-off - font: one font key, e.g. indie, dancing, mansalva, playwrite (script styles) or clean, classic, typewriter (plain print) - stickers: comma-separated sticker ids for the message side, e.g. pumpkin, ghost, happy-birthday, hi-grandma, miss-you, love-you, heart, balloons - front_stickers: comma-separated sticker ids for the photo side, e.g. witch-hat, party-hat, crown, flower-crown, santa-hat - background: one back design id, e.g. white, blush, mint, sky, dots, stripes, gingham, hearts, stars, confetti - quantity: copies, 1 to 10 - ref: always ai Unknown ids are skipped, so the link always opens. Settle the words before they open it: a new link starts a fresh card. Full lists of fonts, stickers and back designs: https://www.familyletter.io/agents. Example: https://www.familyletter.io/make?message=Happy%20birthday%2C%20Grandma!%20We%20made%20you%20a%20cake.%0A%0ALove%2C%20Mia%20%26%20Leo&font=indie&stickers=happy-birthday,balloons&background=confetti&ref=ai - [Remote MCP server](https://www.familyletter.io/api/mcp): Streamable HTTP, tools get_pricing, list_decor, create_postcard, update_postcard, get_payment_link, get_order, verify_address, mail_card - [REST API (OpenAPI 3.1)](https://www.familyletter.io/api/agent/v1/openapi.json): the same calls over HTTPS + JSON - [Agent guide](https://www.familyletter.io/agents): every font, sticker and back design id - [Make a postcard with ChatGPT or Claude](https://www.familyletter.io/make-a-postcard-with-chatgpt): the same, for people, with a prompt to paste into a chat ## Key pages - [Home](https://www.familyletter.io/): what FamilyLetter is and how it works - [The Postcard Club](https://www.familyletter.io/club): membership, member card price and plans - [Holiday postcards](https://www.familyletter.io/holiday-postcards): Christmas and holiday photo postcards, mailed for you - [Send postcards online](https://www.familyletter.io/send-postcards-online): how the online postcard service works end to end - [Send postcards](https://www.familyletter.io/send-postcards): send a postcard to Grandma or anyone, no stamp needed - [Personalized postcards](https://www.familyletter.io/personalized-postcards): one card made for one person, printed one at a time - [Custom photo postcards](https://www.familyletter.io/custom-photo-postcards): photo postcards from your camera roll, one to four photos - [Birthday postcards](https://www.familyletter.io/birthday-postcards): birthday cards with their photos, mailed for you - [Halloween postcards](https://www.familyletter.io/halloween-postcards): costume-photo postcards - [Make a postcard with ChatGPT](https://www.familyletter.io/make-a-postcard-with-chatgpt): have ChatGPT, Claude or another AI write the card, then add your photos - [FAQ](https://www.familyletter.io/faq): prices, delivery, print quality, privacy and the Club ## Guides - [Blog](https://www.familyletter.io/blog): guides for families, including long-distance grandparent ideas, grandparent names and gift ideas