Browse the Gooten catalog, stock, shipping and price quotes; search orders and cancel items.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
WRITE: cancel specific items of an order (cannot be undone). Only items of orders in a pre-production status can be cancelled. Pass the numeric Gooten order id and the order item ids (OrderItemId from gooten_get_order). PUT /orderCancel.
Numeric Gooten order id (GootenId).
Order item ids to cancel (OrderItemId), 1-100.
The server marks this tool as destructive. Running it may delete or overwrite data on the server or in any account you connected with your headers.
WRITE: cancel specific items of an order (cannot be undone). Only items of orders in a pre-production status can be cancelled. Pass the numeric Gooten order id and the order item ids (OrderItemId from gooten_get_order). PUT /orderCancel.
| Argument | Type | Description |
|---|---|---|
| order_id* | integer | Numeric Gooten order id (GootenId). |
| order_item_ids* | array | Order item ids to cancel (OrderItemId), 1-100. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"order_id",
"order_item_ids"
],
"properties": {
"order_id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "Numeric Gooten order id (GootenId).",
"exclusiveMinimum": 0
},
"order_item_ids": {
"type": "array",
"items": {
"type": "integer",
"maximum": 9007199254740991,
"exclusiveMinimum": 0
},
"maxItems": 100,
"minItems": 1,
"description": "Order item ids to cancel (OrderItemId), 1-100."
}
}
}Which of the given SKUs are out of stock for a destination (country, state, postal code). Returns only the out-of-stock SKUs; an empty list means all are available. Unknown SKUs are an error. POST /variantstatus (a read: nothing is changed).
| Argument | Type | Description |
|---|---|---|
| skus* | array | SKUs to check (1-50). |
| state | string | Shipping state/province code, e.g. NY (omit for countries without states). |
| postal_code* | string | Shipping postal code. |
| country_code* | string | 2-letter ISO 3166-1 country code, e.g. US. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"skus",
"country_code",
"postal_code"
],
"properties": {
"skus": {
"type": "array",
"items": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Gooten SKU (product variant), e.g. CanvsWrp-ImgWrp-10x10. See gooten_list_product_variants."
},
"maxItems": 50,
"minItems": 1,
"description": "SKUs to check (1-50)."
},
"state": {
"type": "string",
"maxLength": 20,
"minLength": 1,
"description": "Shipping state/province code, e.g. NY (omit for countries without states)."
},
"postal_code": {
"type": "string",
"maxLength": 20,
"minLength": 1,
"description": "Shipping postal code."
},
"country_code": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"description": "2-letter ISO 3166-1 country code, e.g. US."
}
}
}One order by its Safe Order ID: items with status, tracking numbers and carriers, images, options, totals, shipping and billing addresses, discount and metadata. GET /orders.
| Argument | Type | Description |
|---|---|---|
| order_id* | string | Gooten Safe Order ID (the long id like 13-f91acc87-...), as returned by gooten_search_orders (Id). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"order_id"
],
"properties": {
"order_id": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "Gooten Safe Order ID (the long id like 13-f91acc87-...), as returned by gooten_search_orders (Id)."
}
}
}Billing breakdown of an order: product cost per item, shipping, surcharge, tax, fees, discount and total. Takes the numeric Gooten order id (GootenId from gooten_get_order), not the Safe Order ID. Needs the Partner Billing Key. GET /orderbilling.
| Argument | Type | Description |
|---|---|---|
| order_id* | integer | Numeric Gooten order id. |
| currency_code | string | 3-letter currency code (default USD). See gooten_list_currencies. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"order_id"
],
"properties": {
"order_id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "Numeric Gooten order id.",
"exclusiveMinimum": 0
},
"currency_code": {
"type": "string",
"pattern": "^[A-Za-z]{3}$",
"description": "3-letter currency code (default USD). See gooten_list_currencies."
}
}
}Estimate the cost of an order before placing it: per-item partner price, customer price and tax, plus shipping total, for SKUs shipped to an address. POST /price (a quote: nothing is ordered or charged).
| Argument | Type | Description |
|---|---|---|
| city* | string | Shipping city. |
| items* | array | Order lines (1-50). |
| state | string | Shipping state/province code, if any. |
| postal_code* | string | Shipping postal code. |
| country_code* | string | 2-letter ISO 3166-1 country code, e.g. US. |
| address_line1* | string | Shipping address line 1. |
| address_line2 | string | Shipping address line 2. |
| currency_code | string | 3-letter currency code (default USD). See gooten_list_currencies. |
Print templates for a SKU: how many images are needed, required pixel sizes/DPI, print spaces and layer coordinates, and preview assets. GET /producttemplates.
| Argument | Type | Description |
|---|---|---|
| sku* | string | Gooten SKU (product variant), e.g. CanvsWrp-ImgWrp-10x10. See gooten_list_product_variants. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"sku"
],
"properties": {
"sku": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Gooten SKU (product variant), e.g. CanvsWrp-ImgWrp-10x10. See gooten_list_product_variants."
}
}
}Shipping price range and delivery time for a product to a country: whether expedited is possible and estimated shipping days, plus min/max price and producing country when Gooten returns them. GET /shippriceestimate.
| Argument | Type | Description |
|---|---|---|
| product_id* | integer | Catalog product id. |
| country_code* | string | 2-letter ISO 3166-1 country code, e.g. US. |
| currency_code | string | 3-letter currency code (default USD). See gooten_list_currencies. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"product_id",
"country_code"
],
"properties": {
"product_id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "Catalog product id.",
"exclusiveMinimum": 0
},
"country_code": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"description": "2-letter ISO 3166-1 country code, e.g. US."
},
"currency_code": {
"type": "string",
"pattern": "^[A-Za-z]{3}$",
"description": "3-letter currency code (default USD). See gooten_list_currencies."
}
}
}Available shipping methods (Standard, Expedited, Overnight) with price and delivery days for a cart of SKUs to a destination. POST /shippingprices (a quote: nothing is ordered).
| Argument | Type | Description |
|---|---|---|
| items* | array | Cart lines (1-50). |
| state | string | Destination state/province code, if any. |
| postal_code* | string | Destination postal code. |
| country_code* | string | 2-letter ISO 3166-1 country code, e.g. US. |
| currency_code | string | 3-letter currency code (default USD). See gooten_list_currencies. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"items",
"country_code",
"postal_code"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"sku",
"quantity"
],
"properties": {
"sku": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Gooten SKU (product variant), e.g. CanvsWrp-ImgWrp-10x10. See gooten_list_product_variants."
},
"quantity": {
"type": "integer",
"maximum": 10000,
"exclusiveMinimum": 0
}
}
},
"maxItems": 50,
"minItems": 1,
"description": "Cart lines (1-50)."
},
"state": {
"type": "string",
"maxLength": 20,
"minLength": 1,
"description": "Destination state/province code, if any."
},
"postal_code": {
"type": "string",
"maxLength": 20,
"minLength": 1,
"description": "Destination postal code."
},
"country_code": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"description": "2-letter ISO 3166-1 country code, e.g. US."
},
"currency_code": {
"type": "string",
"pattern": "^[A-Za-z]{3}$",
"description": "3-letter currency code (default USD). See gooten_list_currencies."
}
}
}Currencies Gooten can quote prices in (name, code, display format). GET /currencies.
No arguments.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {}
}Your print-ready products (PRPs: SKUs with artwork already attached) with their variant counts. Paging starts at 1. GET /prpproducts.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
}
}
}Orderable SKUs of your print-ready products, optionally for one PRP product name (from gooten_list_print_ready_products). GET /prpvariants.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| product_name | string | A PRP product name; omit for all variants. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"product_name": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "A PRP product name; omit for all variants."
}
}
}The orderable variants (SKUs) of a catalog product for a destination country, with option values (size, color, ...) and Gooten's price for your account. SKUs differ by region (inch vs cm sizes). GET /productvariants.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| page_size | integer | Results per page, 1-100 (default 25). |
| product_id* | integer | Catalog product id from gooten_list_products. |
| country_code* | string | 2-letter ISO 3166-1 country code, e.g. US. |
| currency_code | string | 3-letter currency code (default USD). See gooten_list_currencies. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"product_id",
"country_code"
],
"properties": {
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"page_size": {
"type": "integer",
"maximum": 100,
"description": "Results per page, 1-100 (default 25).",
"exclusiveMinimum": 0
},
"product_id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "Catalog product id from gooten_list_products.",
"exclusiveMinimum": 0
},
"country_code": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"description": "2-letter ISO 3166-1 country code, e.g. US."
},
"currency_code": {
"type": "string",
"pattern": "^[A-Za-z]{3}$",
"description": "3-letter currency code (default USD). See gooten_list_currencies."
}
}
}Browse the Gooten print-on-demand product catalog (public data): product id, name, categories, cheapest price and shipping, stock and deprecation flags. Filter by name text or category; use product_id with gooten_list_product_variants. Prices are in USD for the cheapest variant.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| query | string | Only products whose name contains this text (case-insensitive). |
| category | string | Only products in this category (exact name, case-insensitive; see the categories list in the reply). |
| page_size | integer | Results per page, 1-100 (default 25). |
| include_deprecated | boolean | Include deprecated products (default false). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"query": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "Only products whose name contains this text (case-insensitive)."
},
"category": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "Only products in this category (exact name, case-insensitive; see the categories list in the reply)."
},
"page_size": {
"type": "integer",
"maximum": 100,
"description": "Results per page, 1-100 (default 25).",
"exclusiveMinimum": 0
},
"include_deprecated": {
"type": "boolean",
"description": "Include deprecated products (default false)."
}
}
}Countries Gooten ships to (code, name, whether supported, measurement system, default currency). By default only supported countries. GET /countries.
| Argument | Type | Description |
|---|---|---|
| include_unsupported | boolean | Also list countries Gooten does not ship to (default false). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"include_unsupported": {
"type": "boolean",
"description": "Also list countries Gooten does not ship to (default false)."
}
}
}Search your Gooten orders by free text (name, address, phone...), last name, email, postal code, creation date range or your own user id. Returns order id, items with status and tracking, totals and addresses. Needs the Partner Billing Key. GET /ordersearch.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| text | string | Any value related to the order (partner name, address, phone, ...). |
| string | Customer email on the order. | |
| end_date | string | Orders created on or before this date, yyyy-mm-dd. |
| last_name | string | Customer last name on the order. |
| page_size | integer | Results per page, 1-100 (default 25). |
| start_date | string | Orders created on or after this date, yyyy-mm-dd. |
| postal_code | string | Postal code on the order. |
| unique_user_id |
WRITE: change an order's status. Allowed targets: Cancelled (cancels the whole order), Hold (pause before production) and New (re-submit an order that was fixed, e.g. after an image or address issue; it then goes on to production and billing). Only orders in AccountingIssue, AddressIssue, HoldByCIImageIssue, ImageIssue, NeedsManualApproval, New, ReadyForAccounting, ReadyForImageDl or Pending can change; a held order cannot be released through the API (Gooten support must release it); otherwise Gooten refuses. POST /orderstatus.
| Argument | Type | Description |
|---|---|---|
| status* | string | The new status. |
| order_id* | string | Gooten Safe Order ID (the long id like 13-f91acc87-...), as returned by gooten_search_orders (Id). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"order_id",
"status"
],
"properties": {
"status": {
"enum": [
"Cancelled",
"Hold",
"New"
],
"type": "string",
"description": "The new status."
},
"order_id": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "Gooten Safe Order ID (the long id like 13-f91acc87-...), as returned by gooten_search_orders (Id)."
}
}
}Check a shipping address: validity, a score and Gooten's suggested corrected address. GET /addressvalidation.
| Argument | Type | Description |
|---|---|---|
| city* | string | City. |
| line1* | string | Address line 1. |
| line2 | string | Address line 2. |
| state | string | State/province code, if any. |
| postal_code* | string | Postal code. |
| country_code* | string | 2-letter ISO 3166-1 country code, e.g. US. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"line1",
"city",
"postal_code",
"country_code"
],
"properties": {
"city": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "City."
},
"line1": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Address line 1."
},
"line2": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Address line 2."
},
"state": {
"type": "string",
"maxLength": 20,
"minLength": 1,
"description": "State/province code, if any."
},
"postal_code": {
"type": "string",
"maxLength": 20,
"minLength": 1,
"description": "Postal code."
},
"country_code": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"description": "2-letter ISO 3166-1 country code, e.g. US."
}
}
}{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"items",
"address_line1",
"city",
"postal_code",
"country_code"
],
"properties": {
"city": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "Shipping city."
},
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"sku",
"quantity"
],
"properties": {
"sku": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Gooten SKU (product variant), e.g. CanvsWrp-ImgWrp-10x10. See gooten_list_product_variants."
},
"quantity": {
"type": "integer",
"maximum": 10000,
"exclusiveMinimum": 0
},
"ship_type": {
"enum": [
"Standard",
"Expedited",
"Overnight"
],
"type": "string",
"description": "Shipping method (default Standard)."
}
}
},
"maxItems": 50,
"minItems": 1,
"description": "Order lines (1-50)."
},
"state": {
"type": "string",
"maxLength": 20,
"minLength": 1,
"description": "Shipping state/province code, if any."
},
"postal_code": {
"type": "string",
"maxLength": 20,
"minLength": 1,
"description": "Shipping postal code."
},
"country_code": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"description": "2-letter ISO 3166-1 country code, e.g. US."
},
"address_line1": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Shipping address line 1."
},
"address_line2": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Shipping address line 2."
},
"currency_code": {
"type": "string",
"pattern": "^[A-Za-z]{3}$",
"description": "3-letter currency code (default USD). See gooten_list_currencies."
}
}
}| string |
| Your own user id stored on the orders. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"text": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Any value related to the order (partner name, address, phone, ...)."
},
"email": {
"type": "string",
"maxLength": 254,
"minLength": 1,
"description": "Customer email on the order."
},
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Orders created on or before this date, yyyy-mm-dd."
},
"last_name": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "Customer last name on the order."
},
"page_size": {
"type": "integer",
"maximum": 100,
"description": "Results per page, 1-100 (default 25).",
"exclusiveMinimum": 0
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Orders created on or after this date, yyyy-mm-dd."
},
"postal_code": {
"type": "string",
"maxLength": 20,
"minLength": 1,
"description": "Postal code on the order."
},
"unique_user_id": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Your own user id stored on the orders."
}
}
}