{"id":301419,"recorded_at":"2026-10-26T22:34:28.034082Z","observed_at":"2026-10-26T22:34:28.033986Z","subject_kind":"endpoint","subject":"eb9f9b06-ae4f-4d4f-ae84-b04801f63276","kind":"mcp.tools","method":"probe.mcp/1","body":{"count":21,"tools":[{"description":"Add a print file to the File Library from a public URL (PNG/JPG recommended). If a file with the same URL already exists it is returned instead. Processing is async — poll printful_get_file until status is ok. Printful: POST /files.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"filename":{"description":"File name to store it under.","type":"string"},"options":{"description":"Additional file options.","items":{"properties":{"id":{"description":"Option id, e.g. stitch_color or thread_colors.","type":"string"},"value":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"items":{"type":"string"},"type":"array"}],"description":"Option value."}},"required":["id","value"],"type":"object"},"type":"array"},"store_id":{"description":"Store id (numeric) for an ACCOUNT-level token; overrides PRINTFUL_STORE_ID. Not needed with a store-level token.","type":"string"},"type":{"description":"Role of the file, e.g. default or preview.","type":"string"},"url":{"description":"Public URL Printful downloads the file from.","format":"uri","type":"string"},"visible":{"description":"Show the file in the dashboard's File Library (default true).","type":"boolean"}},"required":["url"],"type":"object"},"name":"printful_add_file"},{"description":"Quote the shipping options (method id, name, rate, delivery-day estimate) for a set of items to an address. Only country_code is required (plus state_code for US/CA/AU). Changes nothing. Printful: POST /shipping/rates.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"currency":{"description":"3-letter currency to quote in (default: store currency).","type":"string"},"items":{"description":"Items to ship — give one of the variant ids per item.","items":{"properties":{"external_variant_id":{"description":"Your platform's variant id.","type":"string"},"quantity":{"description":"Quantity.","maximum":9007199254740991,"minimum":1,"type":"integer"},"value":{"description":"Item retail value, helps customs estimates.","type":"string"},"variant_id":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"string"}],"description":"Catalog variant id."},"warehouse_product_variant_id":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"string"}],"description":"Warehouse product variant id."}},"required":["quantity"],"type":"object"},"minItems":1,"type":"array"},"locale":{"description":"Locale for rate names: en_US (default) or es_ES.","type":"string"},"recipient":{"description":"Destination; more detail can return more precise rates.","properties":{"address1":{"type":"string"},"address2":{"type":"string"},"city":{"type":"string"},"country_code":{"description":"Two-letter ISO country code.","type":"string"},"phone":{"type":"string"},"state_code":{"description":"Required for US, CA and AU.","type":"string"},"zip":{"type":"string"}},"required":["country_code"],"type":"object"},"store_id":{"description":"Store id (numeric) for an ACCOUNT-level token; overrides PRINTFUL_STORE_ID. Not needed with a store-level token.","type":"string"}},"required":["recipient","items"],"type":"object"},"name":"printful_calculate_shipping_rates"},{"description":"Create an order as a DRAFT — nothing is charged or produced. It must be confirmed later in the Printful dashboard, where the charge is shown. Each item needs one of variant_id (+ files), sync_variant_id, external_variant_id, warehouse_product_variant_id or product_template_id (+ variant_id). Printful: POST /orders (never with confirm).","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"external_id":{"description":"Your own order id; the order is then also addressable as @<external_id>.","type":"string"},"gift":{"description":"Gift message for the packing slip.","properties":{"message":{"description":"Gift message text.","type":"string"},"subject":{"description":"Gift message title.","type":"string"}},"type":"object"},"items":{"description":"Order items.","items":{"properties":{"external_id":{"description":"Your line-item id.","type":"string"},"external_variant_id":{"description":"Your platform's variant id for a Sync Variant.","type":"string"},"files":{"description":"Print files (needed with a plain catalog variant_id).","items":{"properties":{"filename":{"description":"File name.","type":"string"},"id":{"description":"Id of a file already in the File Library. Give url or id.","maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"options":{"description":"Additional file options.","items":{"properties":{"id":{"description":"Option id, e.g. stitch_color or thread_colors.","type":"string"},"value":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"items":{"type":"string"},"type":"array"}],"description":"Option value."}},"required":["id","value"],"type":"object"},"type":"array"},"type":{"description":"Placement / role of the file, e.g. default, front, back, preview (see the catalog product's files).","type":"string"},"url":{"description":"Public URL of the print file. Give url or id.","type":"string"}},"type":"object"},"type":"array"},"name":{"description":"Display name on the packing slip.","type":"string"},"options":{"description":"Product options, e.g. embroidery thread colors.","items":{"properties":{"id":{"description":"Option id, e.g. stitch_color or thread_colors.","type":"string"},"value":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"items":{"type":"string"},"type":"array"}],"description":"Option value."}},"required":["id","value"],"type":"object"},"type":"array"},"product_template_id":{"description":"Product Template to generate print files from (variant_id is then required).","maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"quantity":{"description":"Quantity (max 1000 per item).","maximum":1000,"minimum":1,"type":"integer"},"retail_price":{"description":"Retail price shown on the packing slip, e.g. \"29.99\".","type":"string"},"sku":{"description":"Your SKU.","type":"string"},"sync_variant_id":{"description":"Sync Variant id from your Printful store.","maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"variant_id":{"description":"Catalog variant id (then give files).","maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"warehouse_product_variant_id":{"description":"Warehouse product variant id.","maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"}},"required":["quantity"],"type":"object"},"minItems":1,"type":"array"},"packing_slip":{"description":"Custom packing slip.","properties":{"custom_order_id":{"description":"Your own order id to print instead of Printful's.","type":"string"},"email":{"description":"Customer-service email.","type":"string"},"logo_url":{"description":"Logo / sticker URL (printed monochrome).","type":"string"},"message":{"description":"Custom packing-slip message.","type":"string"},"phone":{"description":"Customer-service phone.","type":"string"},"store_name":{"description":"Store name override for the return address.","type":"string"}},"type":"object"},"recipient":{"description":"Ship-to address (name, address1, city, country_code, zip are normally needed).","properties":{"address1":{"description":"Address line 1.","type":"string"},"address2":{"description":"Address line 2.","type":"string"},"city":{"description":"City.","type":"string"},"company":{"description":"Company name.","type":"string"},"country_code":{"description":"Two-letter ISO country code, e.g. US.","type":"string"},"email":{"description":"Email address.","type":"string"},"name":{"description":"Full name.","type":"string"},"phone":{"description":"Phone number.","type":"string"},"state_code":{"description":"State code — required for US, CA and AU.","type":"string"},"tax_number":{"description":"Tax number (required for Brazil: CPF/CNPJ).","type":"string"},"zip":{"description":"ZIP / postal code.","type":"string"}},"required":["country_code"],"type":"object"},"retail_costs":{"description":"Retail costs to show on the packing slip.","properties":{"currency":{"description":"3-letter currency code.","type":"string"},"discount":{"type":"string"},"shipping":{"type":"string"},"subtotal":{"type":"string"},"tax":{"type":"string"}},"type":"object"},"shipping":{"description":"Shipping method id from printful_calculate_shipping_rates (default STANDARD).","type":"string"},"store_id":{"description":"Store id (numeric) for an ACCOUNT-level token; overrides PRINTFUL_STORE_ID. Not needed with a store-level token.","type":"string"}},"required":["recipient","items"],"type":"object"},"name":"printful_create_draft_order"},{"description":"Start generating product mockups for a design on a catalog product — returns a task_key; poll printful_get_mockup_task for the images. Heavily rate-limited (about 10/min for established stores, 2/min for new ones). Printful: POST /mockup-generator/create-task/{id}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"files":{"description":"Design files per placement. Give files or product_template_id.","items":{"properties":{"image_url":{"description":"Public URL of the design image.","type":"string"},"options":{"items":{"properties":{"id":{"description":"Option id, e.g. stitch_color or thread_colors.","type":"string"},"value":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"items":{"type":"string"},"type":"array"}],"description":"Option value."}},"required":["id","value"],"type":"object"},"type":"array"},"placement":{"description":"Placement, e.g. front, back (see printful_get_printfiles).","type":"string"},"position":{"description":"Where the image sits inside the print area, in pixels.","properties":{"area_height":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"area_width":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"height":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"left":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"top":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"width":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"}},"required":["area_width","area_height","width","height","top","left"],"type":"object"}},"required":["placement","image_url"],"type":"object"},"type":"array"},"format":{"description":"Output format (png is transparent).","enum":["jpg","png"],"type":"string"},"option_groups":{"description":"Mockup option groups to generate.","items":{"type":"string"},"type":"array"},"options":{"description":"Mockup option names to generate (see printfiles).","items":{"type":"string"},"type":"array"},"product_id":{"description":"Catalog product id.","maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"product_options":{"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"items":{"type":"string"},"type":"array"}]},"description":"Product options, e.g. embroidery thread colors.","propertyNames":{"type":"string"},"type":"object"},"product_template_id":{"description":"Use a saved Product Template instead of files.","maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"store_id":{"description":"Store id (numeric) for an ACCOUNT-level token; overrides PRINTFUL_STORE_ID. Not needed with a store-level token.","type":"string"},"variant_ids":{"description":"Catalog variant ids to render.","items":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"minItems":1,"type":"array"},"width":{"description":"Mockup width in px, 50-2000 (default 1000).","maximum":2000,"minimum":50,"type":"integer"}},"required":["product_id","variant_ids"],"type":"object"},"name":"printful_create_mockup_task"},{"description":"Price an order WITHOUT creating it: item, print, shipping and tax costs, plus retail totals. Same item shape as printful_create_draft_order. Changes nothing. Printful: POST /orders/estimate-costs.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"items":{"description":"Order items.","items":{"properties":{"external_id":{"description":"Your line-item id.","type":"string"},"external_variant_id":{"description":"Your platform's variant id for a Sync Variant.","type":"string"},"files":{"description":"Print files (needed with a plain catalog variant_id).","items":{"properties":{"filename":{"description":"File name.","type":"string"},"id":{"description":"Id of a file already in the File Library. Give url or id.","maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"options":{"description":"Additional file options.","items":{"properties":{"id":{"description":"Option id, e.g. stitch_color or thread_colors.","type":"string"},"value":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"items":{"type":"string"},"type":"array"}],"description":"Option value."}},"required":["id","value"],"type":"object"},"type":"array"},"type":{"description":"Placement / role of the file, e.g. default, front, back, preview (see the catalog product's files).","type":"string"},"url":{"description":"Public URL of the print file. Give url or id.","type":"string"}},"type":"object"},"type":"array"},"name":{"description":"Display name on the packing slip.","type":"string"},"options":{"description":"Product options, e.g. embroidery thread colors.","items":{"properties":{"id":{"description":"Option id, e.g. stitch_color or thread_colors.","type":"string"},"value":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"items":{"type":"string"},"type":"array"}],"description":"Option value."}},"required":["id","value"],"type":"object"},"type":"array"},"product_template_id":{"description":"Product Template to generate print files from (variant_id is then required).","maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"quantity":{"description":"Quantity (max 1000 per item).","maximum":1000,"minimum":1,"type":"integer"},"retail_price":{"description":"Retail price shown on the packing slip, e.g. \"29.99\".","type":"string"},"sku":{"description":"Your SKU.","type":"string"},"sync_variant_id":{"description":"Sync Variant id from your Printful store.","maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"variant_id":{"description":"Catalog variant id (then give files).","maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"warehouse_product_variant_id":{"description":"Warehouse product variant id.","maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"}},"required":["quantity"],"type":"object"},"minItems":1,"type":"array"},"recipient":{"description":"Ship-to address.","properties":{"address1":{"description":"Address line 1.","type":"string"},"address2":{"description":"Address line 2.","type":"string"},"city":{"description":"City.","type":"string"},"company":{"description":"Company name.","type":"string"},"country_code":{"description":"Two-letter ISO country code, e.g. US.","type":"string"},"email":{"description":"Email address.","type":"string"},"name":{"description":"Full name.","type":"string"},"phone":{"description":"Phone number.","type":"string"},"state_code":{"description":"State code — required for US, CA and AU.","type":"string"},"tax_number":{"description":"Tax number (required for Brazil: CPF/CNPJ).","type":"string"},"zip":{"description":"ZIP / postal code.","type":"string"}},"required":["country_code"],"type":"object"},"retail_costs":{"description":"Retail costs to show on the packing slip.","properties":{"currency":{"description":"3-letter currency code.","type":"string"},"discount":{"type":"string"},"shipping":{"type":"string"},"subtotal":{"type":"string"},"tax":{"type":"string"}},"type":"object"},"shipping":{"description":"Shipping method id from printful_calculate_shipping_rates (default STANDARD).","type":"string"},"store_id":{"description":"Store id (numeric) for an ACCOUNT-level token; overrides PRINTFUL_STORE_ID. Not needed with a store-level token.","type":"string"}},"required":["recipient","items"],"type":"object"},"name":"printful_estimate_order_costs"},{"description":"Fetch one catalog product with ALL its variants (size, color, variant_id, price, stock). Use the variant_id values when quoting shipping or building an order. Printful: GET /products/{id}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"product_id":{"description":"Catalog product id, e.g. 71.","maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"}},"required":["product_id"],"type":"object"},"name":"printful_get_catalog_product"},{"description":"Fetch one catalog variant and its parent product. Printful: GET /products/variant/{id}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"variant_id":{"description":"Catalog variant id, e.g. 4012.","maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"}},"required":["variant_id"],"type":"object"},"name":"printful_get_catalog_variant"},{"description":"Fetch one File Library entry — processing status (ok / waiting / failed), dimensions, DPI and preview URLs. Poll this after printful_add_file. Printful: GET /files/{id}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"file_id":{"description":"File id.","maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"store_id":{"description":"Store id (numeric) for an ACCOUNT-level token; overrides PRINTFUL_STORE_ID. Not needed with a store-level token.","type":"string"}},"required":["file_id"],"type":"object"},"name":"printful_get_file"},{"description":"Check a mockup-generation task: status (pending / completed / failed) and, when done, the mockup image URLs per placement and variant. Printful: GET /mockup-generator/task.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"store_id":{"description":"Store id (numeric) for an ACCOUNT-level token; overrides PRINTFUL_STORE_ID. Not needed with a store-level token.","type":"string"},"task_key":{"description":"The task_key returned by printful_create_mockup_task.","type":"string"}},"required":["task_key"],"type":"object"},"name":"printful_get_mockup_task"},{"description":"Fetch one order: status, recipient, items, costs, and shipments with carrier and tracking links — the answer to 'where is my order?'. Printful: GET /orders/{id}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"order_id":{"description":"Numeric Printful order id, or your External ID prefixed with @ (e.g. @SHOP-1001).","type":"string"},"store_id":{"description":"Store id (numeric) for an ACCOUNT-level token; overrides PRINTFUL_STORE_ID. Not needed with a store-level token.","type":"string"}},"required":["order_id"],"type":"object"},"name":"printful_get_order"},{"description":"List the print areas (placements) and required print-file pixel sizes/DPI for each variant of a catalog product — what a design must match before mockups or orders. DTG is assumed unless technique is given. Printful: GET /mockup-generator/printfiles/{id}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"orientation":{"description":"For wall art: orientation.","enum":["horizontal","vertical"],"type":"string"},"product_id":{"description":"Catalog product id.","maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"store_id":{"description":"Store id (numeric) for an ACCOUNT-level token; overrides PRINTFUL_STORE_ID. Not needed with a store-level token.","type":"string"},"technique":{"description":"Printing technique for multi-technique products, e.g. DTG, EMBROIDERY, SUBLIMATION, DTFILM.","type":"string"}},"required":["product_id"],"type":"object"},"name":"printful_get_printfiles"},{"description":"Sales, costs, profit and order-count reports for a period of at most 6 months. Printful: GET /reports/statistics.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"currency":{"description":"3-letter currency, or display_currency for the account's display currency (default: store currency).","type":"string"},"date_from":{"description":"Start date, YYYY-MM-DD.","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"date_to":{"description":"End date, YYYY-MM-DD (max 6 months after date_from).","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"report_types":{"description":"Reports to include, e.g. [\"sales_and_costs_summary\", \"profit\", \"total_paid_orders\"].","items":{"enum":["sales_and_costs","sales_and_costs_summary","printful_costs","profit","total_paid_orders","costs_by_amount","costs_by_product","costs_by_variant","average_fulfillment_time"],"type":"string"},"minItems":1,"type":"array"},"store_id":{"description":"Store id (numeric) for an ACCOUNT-level token; overrides PRINTFUL_STORE_ID. Not needed with a store-level token.","type":"string"}},"required":["date_from","date_to","report_types"],"type":"object"},"name":"printful_get_statistics"},{"description":"Fetch one product of a Manual-order / API store with all its Sync Variants — catalog variant, print files, retail price. For a Shopify, Etsy, WooCommerce or other integrated store use printful_get_sync_product instead. Printful: GET /store/products/{id}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"product_id":{"description":"Numeric Printful id, or your platform's External ID prefixed with @ (e.g. @988123).","type":"string"},"store_id":{"description":"Store id (numeric) for an ACCOUNT-level token; overrides PRINTFUL_STORE_ID. Not needed with a store-level token.","type":"string"}},"required":["product_id"],"type":"object"},"name":"printful_get_store_product"},{"description":"Fetch one product imported from an integrated store (Shopify, Etsy, WooCommerce…) with all its Sync Variants — catalog variant, print files, retail price, sync status. Ids come from printful_list_sync_products. Printful: GET /sync/products/{id}.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"product_id":{"description":"Numeric Printful id, or your platform's External ID prefixed with @ (e.g. @988123).","type":"string"},"store_id":{"description":"Store id (numeric) for an ACCOUNT-level token; overrides PRINTFUL_STORE_ID. Not needed with a store-level token.","type":"string"}},"required":["product_id"],"type":"object"},"name":"printful_get_sync_product"},{"description":"List Printful's catalog categories (T-shirts, Mugs, Posters…) with their ids and parent ids — the filter for printful_list_catalog_products. Printful: GET /categories.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{},"type":"object"},"name":"printful_list_catalog_categories"},{"description":"List the blank products Printful can print on (id, title, brand, model, variant count, print-file placements), optionally filtered by category. Printful: GET /products.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"category_id":{"description":"Comma-separated category ids, e.g. 24 or 24,55 (see printful_list_catalog_categories).","type":"string"}},"type":"object"},"name":"printful_list_catalog_products"},{"description":"List the store's orders, newest first, optionally by status (draft, pending, failed, canceled, inprocess, onhold, partial, fulfilled, archived). Printful: GET /orders.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"limit":{"description":"Items per page, 1-100.","maximum":100,"minimum":1,"type":"integer"},"offset":{"description":"Result set offset (items to skip).","maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"description":"Order status, e.g. draft, pending, fulfilled, failed.","type":"string"},"store_id":{"description":"Store id (numeric) for an ACCOUNT-level token; overrides PRINTFUL_STORE_ID. Not needed with a store-level token.","type":"string"}},"type":"object"},"name":"printful_list_orders"},{"description":"List the Sync Products in a Manual-order / API store. For a Shopify, Etsy, WooCommerce or other integrated store use printful_list_sync_products instead. Printful: GET /store/products.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"category_id":{"description":"Comma-separated catalog category ids.","type":"string"},"status":{"description":"Filter by sync status.","enum":["all","synced","unsynced","ignored","imported","discontinued","out_of_stock"],"type":"string"},"store_id":{"description":"Store id (numeric) for an ACCOUNT-level token; overrides PRINTFUL_STORE_ID. Not needed with a store-level token.","type":"string"}},"type":"object"},"name":"printful_list_store_products"},{"description":"List the stores this token can reach (id, name, platform type). A cheap way to confirm the token works, and where to find the store_id an ACCOUNT-level token needs. Printful: GET /stores.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{},"type":"object"},"name":"printful_list_stores"},{"description":"List the products Printful has imported from an integrated store (Shopify, Etsy, WooCommerce…), with how many variants are synced. Filter by status=unsynced to find products that still need a design or catalog variant. Printful: GET /sync/products.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"limit":{"description":"Items per page, 1-100.","maximum":100,"minimum":1,"type":"integer"},"offset":{"description":"Result set offset (items to skip).","maximum":9007199254740991,"minimum":0,"type":"integer"},"search":{"description":"Product name search.","type":"string"},"status":{"description":"Filter by sync status.","enum":["all","synced","unsynced","ignored","imported","discontinued","out_of_stock"],"type":"string"},"store_id":{"description":"Store id (numeric) for an ACCOUNT-level token; overrides PRINTFUL_STORE_ID. Not needed with a store-level token.","type":"string"}},"type":"object"},"name":"printful_list_sync_products"},{"description":"Change a DRAFT order (unsubmitted orders only) — send only the fields to change. CAUTION: if you send `items`, it replaces the list: existing items not included (by id or external_id) are removed. The order stays a draft; nothing is charged. Printful: PUT /orders/{id} (never with confirm).","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"external_id":{"description":"New external id.","type":"string"},"gift":{"properties":{"message":{"description":"Gift message text.","type":"string"},"subject":{"description":"Gift message title.","type":"string"}},"type":"object"},"items":{"description":"Full replacement item list (see caution).","items":{"properties":{"external_id":{"description":"Your line-item id.","type":"string"},"external_variant_id":{"description":"Your platform's variant id for a Sync Variant.","type":"string"},"files":{"description":"Print files (needed with a plain catalog variant_id).","items":{"properties":{"filename":{"description":"File name.","type":"string"},"id":{"description":"Id of a file already in the File Library. Give url or id.","maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"options":{"description":"Additional file options.","items":{"properties":{"id":{"description":"Option id, e.g. stitch_color or thread_colors.","type":"string"},"value":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"items":{"type":"string"},"type":"array"}],"description":"Option value."}},"required":["id","value"],"type":"object"},"type":"array"},"type":{"description":"Placement / role of the file, e.g. default, front, back, preview (see the catalog product's files).","type":"string"},"url":{"description":"Public URL of the print file. Give url or id.","type":"string"}},"type":"object"},"type":"array"},"id":{"description":"Existing line-item id to keep/update.","maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"name":{"description":"Display name on the packing slip.","type":"string"},"options":{"description":"Product options, e.g. embroidery thread colors.","items":{"properties":{"id":{"description":"Option id, e.g. stitch_color or thread_colors.","type":"string"},"value":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"items":{"type":"string"},"type":"array"}],"description":"Option value."}},"required":["id","value"],"type":"object"},"type":"array"},"product_template_id":{"description":"Product Template to generate print files from (variant_id is then required).","maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"quantity":{"description":"Quantity (max 1000 per item).","maximum":1000,"minimum":1,"type":"integer"},"retail_price":{"description":"Retail price shown on the packing slip, e.g. \"29.99\".","type":"string"},"sku":{"description":"Your SKU.","type":"string"},"sync_variant_id":{"description":"Sync Variant id from your Printful store.","maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"variant_id":{"description":"Catalog variant id (then give files).","maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"warehouse_product_variant_id":{"description":"Warehouse product variant id.","maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"}},"required":["quantity"],"type":"object"},"type":"array"},"order_id":{"description":"Numeric Printful order id, or External ID prefixed with @.","type":"string"},"packing_slip":{"properties":{"custom_order_id":{"description":"Your own order id to print instead of Printful's.","type":"string"},"email":{"description":"Customer-service email.","type":"string"},"logo_url":{"description":"Logo / sticker URL (printed monochrome).","type":"string"},"message":{"description":"Custom packing-slip message.","type":"string"},"phone":{"description":"Customer-service phone.","type":"string"},"store_name":{"description":"Store name override for the return address.","type":"string"}},"type":"object"},"recipient":{"description":"New ship-to address fields.","properties":{"address1":{"description":"Address line 1.","type":"string"},"address2":{"description":"Address line 2.","type":"string"},"city":{"description":"City.","type":"string"},"company":{"description":"Company name.","type":"string"},"country_code":{"description":"Two-letter ISO country code, e.g. US.","type":"string"},"email":{"description":"Email address.","type":"string"},"name":{"description":"Full name.","type":"string"},"phone":{"description":"Phone number.","type":"string"},"state_code":{"description":"State code — required for US, CA and AU.","type":"string"},"tax_number":{"description":"Tax number (required for Brazil: CPF/CNPJ).","type":"string"},"zip":{"description":"ZIP / postal code.","type":"string"}},"type":"object"},"retail_costs":{"properties":{"currency":{"description":"3-letter currency code.","type":"string"},"discount":{"type":"string"},"shipping":{"type":"string"},"subtotal":{"type":"string"},"tax":{"type":"string"}},"type":"object"},"shipping":{"description":"New shipping method id.","type":"string"},"store_id":{"description":"Store id (numeric) for an ACCOUNT-level token; overrides PRINTFUL_STORE_ID. Not needed with a store-level token.","type":"string"}},"required":["order_id"],"type":"object"},"name":"printful_update_draft_order"}]},"body_sha256":"ca6deed4d6fc2db558cbb6414e713f9c303ff13b0695d90c9f03616e44dcb6ba","prev_id":null,"leaf":"0xb133acad2ed4d2285ed6578b2faca25dbd6486a2905e95e770187180278ecd76","leaf_text":"{\"body\":\"ca6deed4d6fc2db558cbb6414e713f9c303ff13b0695d90c9f03616e44dcb6ba\",\"id\":301419,\"kind\":\"mcp.tools\",\"method\":\"probe.mcp/1\",\"observed_us\":1793054068033986,\"prev\":null,\"subject\":\"eb9f9b06-ae4f-4d4f-ae84-b04801f63276\",\"subject_kind\":\"endpoint\"}","day":{"day":"2026-10-26","leaves":296695,"root":"0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8","chained":"0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a","anchor_chain":"eip155:5042002","anchor_tx":"0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae","anchor_block":69251483},"proof":["0xb13494e0d2844fa4375fb53fabad62365f5dd466028727768c27e0831de80cd2","0xe933fa034abb39391bc81b083d7a5d55a3e5525c7f91eaf0c7acff569a4adcd6","0x8a1d2ec8446f3b01f569a2f6d23f8df2ee5f69a5d101102856a2ff33bce4d133","0x232b866ecd41a3f709db4cc171245ef9749bfcfc0c1af569e2dd5d963216a3fa","0x128d0b138822990e6fefe8edf60f09d63d9c14e6295b8ab95223a25ee46c5287","0xfd6e3f6537b80c35dc8c72f89f6536c06bfddb0d25a56a7bbd6f198ff43d4c07","0x8f946b4652aff5634cc23fe82792d3c9e8af1b0058a569dc16d7a9a224c9fe1e","0x561bf932aaf087b43d3bdc62a651c0691a9b518c93d26b2f5e6d0e27b3e89be6","0xfe760d927c146e0e56e6689bf773a2073125c3f350f60f5a25a4042ba3b1fd4e","0x55838b11251efb24add31c997e02aac1cdf6d78a790f4178057a4c2095a5d448","0x68459613b28284909eadec125bcf23808811e99ecfabc229bf7deb2178ab9826","0xce1aeb889b974291cea1fbfd01595655bd2c1b3636dc5b56eeb8904adb9f6c65","0x3b1c0e225d1b1cb24cd5d5ea4af2de20ed68a1eaf8b61924ed1b81e4b9cf7e39","0x083427e39db4dd470662401f6db5db8fadf084fc4274cf8621b368416952b78b","0x1a74ed3b3756b9cd946da49701bcec120ec88645013da99fa9eea60b39e1a570","0x123ec8bee20ddc55223eeef5a4f4d6c4b6416515adbb911c56759f5cde56e452","0xd0651cb9bc8155eb52b5247d506e74b8a935057dc190ba52091702ac25ed3a40","0x9a9024edb5069d88a324facb310a5ce8e495214bbaa968f077bede437390194f","0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a"]}