TeamTimeMake It Real 3 real products behind tools tool calls 0 prices invented 0

ChatGPT designs it. Only TeamTime is allowed to price it.

Your candidate test, built and running. Three real TeamTime products behind MCP tools, ChatGPT retrieving product information and pricing, size and quantity through to a checkout.

Six tools, one boundary

Products, sizes and both Premium tiers were read from teamtime.shop/products.json on 14 Aug 2026. Nothing on this page is a placeholder price.

ChatGPTTeamTime app connected
Then change the size, the tier, the quantity or the name. Every change goes through a tool.
TeamTime MCP serverwaiting

Every call the app makes shows up here, with what went out and what came back. Nothing on the left is allowed to state a price that did not come through this panel.

The three products in the build

These are not mock products. They are yours.

Your storefront already answers this publicly. That is the finding that matters for scoping: for products and prices there is nothing new to build, only something to wrap. Read from teamtime.shop/products.json on 14 Aug 2026, 250 products live.

Ogden Lady Owls Mens Basketball Jersey front and back mockup
Mens Basketball Jersey Ogden Lady Owls team store · 12 sizes Premium$29.99Ultra Premium$46.20
Panthers Football Jersey front and back mockup
Football Jersey Panthers team store · 12 sizes Premium$57.49Ultra Premium$71.93
Ogden Lady Owls Hoodie front and back mockup
Hoodie Ogden Lady Owls team store · 20 sizes Premium$49.99Ultra Premium$67.15
The failure your brief names

Ask a model what a jersey costs and it will answer. That is the whole problem.

A custom sublimated basketball jersey usually runs about $49.99, and for 12 you would be looking at roughly $540 with a team discount.

Fluent, confident, and every number in it is invented. Your real Premium basketball jersey is $29.99. The fix is not a better prompt. It is never letting the model hold the number.

  1. get_productsyour catalog says what exists
  2. calculate_priceyour catalog says what it costs
  3. create_checkoutyour store returns the link

The model picks which tool to call and how to say the answer out loud. It never holds the number. When a tool returns nothing, the app says so, which is what happens above when a Youth XX Large is asked for.

One correction to the brief, and it changes step 8

The brief has the customer paying inside ChatGPT. That door is not open to you yet. OpenAI's own guidance is that the in-chat payment sheet is limited to select marketplace partners, and that for everyone else standard external checkout is the required approach.

So the app configures and prices in the conversation, then hands off. Your storefront already accepts a cart permalink of the form teamtime.shop/cart/{variant_id}:{qty}, which means checkout, tax, shipping and the order record stay exactly where they are today and no new payment surface gets built.

developers.openai.com/apps-sdk/build/monetization

design_idttd_8Kq2R7
product_id9189599543524
variant_idfrom Size and Quality
concept_imagestored, original ChatGPT output
approved_mockupfront and back, with colour chips
personalizationMCCOURT / 24
checkoutexisting Shopify cart, your order flow

Your design team still prepares the final production artwork by hand. The brief says that is acceptable for the MVP, and it is the reason this MVP is small enough to be worth doing at all.

Three things I would settle before writing production code
Does the product API already exist?

For products and prices, yes. Your storefront answers publicly at products.json with ids, variant ids, the twelve size names and both Premium tiers. The three products in this build were read from it, not typed in. What does not exist yet is a design record, so that is the one piece of new storage.

Wrap what exists. Build only the design store.
Shopify checkout or TeamTime checkout?

Your brief says pick whichever needs the least new infrastructure. It is Shopify, and it is not close. A cart permalink or a draft order reuses your tax, shipping, order records and refunds, and adds no new place for card data to live.

Shopify. Nothing new to certify.
What proves it worked?

The brief already picked the metric: generated designs that turn into purchased physical products. That is one number, and it needs an event on design created, product selected, checkout opened and order paid, tagged with the design id so the whole path is one row.

Four events, one design_id, one funnel.