Launch price: $25 $15 a book, shipped free
TinyTales
How it works What you get Pricing For agents Sign in
pick a crayon
Start a book

Update the curation profile

tinytales_update_curation_profile tinytales:write

Save optional notes for this account. Photo decisions: preferences free text, entries_json, or photo_ref with decision picked or skipped. Interview fields: kids_json (names; ages optional), cadence (monthly, occasions, on_demand), photo_source (google_photos_picker or attach_in_chat). Buyer defaults: default_quantity (1 = one shared copy) and shipping_address_json. Omit any field to leave it unchanged. Checkout works without a profile.


01Access

The signed-in customer must have approved tinytales:write. Calls stay inside that account.

02Annotations

readOnlyHint
false

The tool creates or updates records in the signed-in account.

destructiveHint
false

The change can be removed later with a delete tool, or it only adds data.

openWorldHint
false

This tool only reads or changes the signed-in TinyTales account. It does not post to the public internet or to other people’s services.

idempotentHint
true

Repeating the same call does not stack a second effect.

03Input

preferences
string

Free-text notes: who the books are for, style, what to skip.

entries_json
string

JSON array of {ref, decision: picked|skipped, reason} that replaces the stored list.

photo_ref
string

Photo filename, Google media id, or other stable ref to upsert.

decision
string

picked or skipped. Required when photo_ref is set.

reason
string

Why this photo was picked or skipped.

kids_json
string

JSON array of {name, age?}. Names are required; ages are optional. Keep kid data minimal.

cadence
string

How often to make a book: monthly, occasions, or on_demand.

photo_source
string

google_photos_picker (human picks in TinyTales) or attach_in_chat.

default_quantity
integer

Default printed copies for checkout when quantity is omitted. 1 means one shared copy. Ask “one for the family or one per kid?”

shipping_address_json
string

JSON shipping address reference: name, street1, street2, city, state_code, postcode, country_code, phone_number. Empty string clears it. Polar still collects the paid address at checkout.

response_format
string

json returns structured data. markdown returns the same data as a short readable summary. Defaults to json.

04Output

ok
boolean · required

True when the underlying TinyTales route accepted the call.

summary
string · required

One-line result for the model to read.

error
string

Present when ok is false. Names the failed state and the next tool to call.

05Errors

06Example request

{
  "photo_ref": "lake.jpg",
  "decision": "picked",
  "reason": "Clear faces, good for a canoe page",
  "default_quantity": 1
}

07Example response

{
  "ok": true,
  "summary": "Saved the curation profile."
}

All tools