Shopify MCP Server for Cloudflare Workers
110 tools available in the Shopify MCP server. Each tool can be called by AI assistants to perform specific actions.
shopify_get_collectionGet any collection by ID (custom or smart).
Args:
Returns: The collection details.
{
"type": "object",
"required": [
"collectionId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"collectionId": {
"type": "number",
"description": "Collection ID"
}
}
}shopify_open_orderRe-open a closed order.
Args:
Returns: The re-opened order.
{
"type": "object",
"required": [
"orderId"
],
"properties": {
"orderId": {
"type": "number",
"description": "Order ID"
}
}
}shopify_delete_discount_codeDelete a discount code.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"priceRuleId",
"discountCodeId"
],
"properties": {
"priceRuleId": {
"type": "number",
"description": "Price rule ID"
},
"discountCodeId": {
"type": "number",
"description": "Discount code ID"
}
}
}shopify_get_fulfillment_orderGet a single fulfillment order by ID.
Args:
Returns: The fulfillment order details.
{
"type": "object",
"required": [
"fulfillmentOrderId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"fulfillmentOrderId": {
"type": "number",
"description": "Fulfillment order ID"
}
}
}shopify_update_smart_collectionUpdate an existing smart collection.
Args:
Returns: The updated smart collection.
{
"type": "object",
"required": [
"collectionId"
],
"properties": {
"title": {
"type": "string"
},
"handle": {
"type": "string"
},
"bodyHtml": {
"type": "string"
},
"published": {
"type": "boolean"
},
"disjunctive": {
"type": "boolean"
},
"collectionId": {
"type": "number",
"description": "Collection ID"
}
}
}shopify_delete_smart_collectionDelete a smart collection.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"collectionId"
],
"properties": {
"collectionId": {
"type": "number",
"description": "Collection ID"
}
}
}shopify_list_custom_collectionsList custom collections with pagination and filters.
Custom collections are manually curated product groups.
Args:
Returns: Paginated list of custom collections.
{
"type": "object",
"properties": {
"title": {
"type": "string"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"handle": {
"type": "string"
},
"sinceId": {
"type": "string"
},
"productId": {
"type": "string"
},
"publishedStatus": {
"enum": [
"published",
"unpublished",
"any"
],
"type": "string"
}
}
}shopify_get_custom_collectionGet a single custom collection by ID.
Args:
Returns: The custom collection details.
{
"type": "object",
"required": [
"collectionId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"collectionId": {
"type": "number",
"description": "Collection ID"
}
}
}shopify_create_custom_collectionCreate a new custom collection.
Args:
Returns: The created collection.
{
"type": "object",
"required": [
"title"
],
"properties": {
"image": {
"type": "object"
},
"title": {
"type": "string",
"description": "Collection title (required)"
},
"handle": {
"type": "string"
},
"bodyHtml": {
"type": "string"
},
"published": {
"type": "boolean"
}
}
}shopify_update_custom_collectionUpdate an existing custom collection.
Args:
Returns: The updated collection.
{
"type": "object",
"required": [
"collectionId"
],
"properties": {
"title": {
"type": "string"
},
"handle": {
"type": "string"
},
"bodyHtml": {
"type": "string"
},
"published": {
"type": "boolean"
},
"collectionId": {
"type": "number",
"description": "Collection ID"
}
}
}shopify_delete_custom_collectionDelete a custom collection.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"collectionId"
],
"properties": {
"collectionId": {
"type": "number",
"description": "Collection ID"
}
}
}shopify_list_smart_collectionsList smart collections with pagination and filters.
Smart collections automatically include products based on rules.
Args:
Returns: Paginated list of smart collections.
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 50,
"maximum": 250,
"minimum": 1
},
"title": {
"type": "string"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"handle": {
"type": "string"
},
"sinceId": {
"type": "string"
},
"productId": {
"type": "string"
},
"publishedStatus": {
"enum": [
"published",
"unpublished",
"any"
],
"type": "string"
}
}
}shopify_get_smart_collectionGet a single smart collection by ID.
Args:
Returns: The smart collection with its rules.
{
"type": "object",
"required": [
"collectionId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"collectionId": {
"type": "number",
"description": "Collection ID"
}
}
}shopify_create_smart_collectionCreate a new smart collection with automated rules.
Args:
Returns: The created smart collection.
{
"type": "object",
"required": [
"title"
],
"properties": {
"title": {
"type": "string",
"description": "Collection title (required)"
},
"handle": {
"type": "string"
},
"bodyHtml": {
"type": "string"
},
"published": {
"type": "boolean"
},
"disjunctive": {
"type": "boolean",
"description": "Match any rule (true) or all rules (false)"
}
}
}shopify_list_collection_productsList products in a collection.
Args:
Returns: Paginated list of products in the collection.
{
"type": "object",
"required": [
"collectionId"
],
"properties": {
"limit": {
"type": "integer",
"default": 50,
"maximum": 250,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"collectionId": {
"type": "number",
"description": "Collection ID"
}
}
}shopify_list_collectsList product-collection relationships (collects).
Collects link products to custom collections.
Args:
Returns: List of collect relationships.
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 50,
"maximum": 250,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"productId": {
"type": "string"
},
"collectionId": {
"type": "string"
}
}
}shopify_create_collectAdd a product to a custom collection.
Args:
Returns: The created collect relationship.
{
"type": "object",
"required": [
"productId",
"collectionId"
],
"properties": {
"position": {
"type": "number",
"description": "Position in collection"
},
"productId": {
"type": "number",
"description": "Product ID"
},
"collectionId": {
"type": "number",
"description": "Collection ID"
}
}
}shopify_delete_collectRemove a product from a custom collection.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"collectId"
],
"properties": {
"collectId": {
"type": "number",
"description": "Collect ID"
}
}
}shopify_list_customersList customers from the store with pagination and filters.
Args:
Returns: Paginated list of customers.
{
"type": "object",
"properties": {
"ids": {
"type": "string"
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 250,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"sinceId": {
"type": "string"
},
"createdAtMax": {
"type": "string"
},
"createdAtMin": {
"type": "string"
},
"updatedAtMax": {
"type": "string"
},
"updatedAtMin": {
"type": "string"
}
}
}shopify_get_customerGet a single customer by ID.
Args:
Returns: The customer with all details including addresses.
{
"type": "object",
"required": [
"customerId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"customerId": {
"type": "number",
"description": "Customer ID"
}
}
}shopify_create_customerCreate a new customer.
Args:
Returns: The created customer.
{
"type": "object",
"required": [
"email"
],
"properties": {
"note": {
"type": "string"
},
"tags": {
"type": "string"
},
"email": {
"type": "string",
"description": "Customer email (required)"
},
"phone": {
"type": "string"
},
"lastName": {
"type": "string"
},
"firstName": {
"type": "string"
},
"sendEmailInvite": {
"type": "boolean"
},
"acceptsMarketing": {
"type": "boolean"
},
"sendEmailWelcome": {
"type": "boolean"
}
}
}shopify_update_customerUpdate an existing customer.
Args:
Returns: The updated customer.
{
"type": "object",
"required": [
"customerId"
],
"properties": {
"note": {
"type": "string"
},
"tags": {
"type": "string"
},
"email": {
"type": "string"
},
"phone": {
"type": "string"
},
"lastName": {
"type": "string"
},
"firstName": {
"type": "string"
},
"customerId": {
"type": "number",
"description": "Customer ID"
},
"acceptsMarketing": {
"type": "boolean"
}
}
}shopify_delete_customerDelete a customer.
Note: Customers with orders cannot be deleted.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"customerId"
],
"properties": {
"customerId": {
"type": "number",
"description": "Customer ID"
}
}
}shopify_get_customer_countGet the count of customers matching filters.
Args:
Returns: Count of matching customers.
{
"type": "object",
"properties": {
"createdAtMax": {
"type": "string"
},
"createdAtMin": {
"type": "string"
},
"updatedAtMax": {
"type": "string"
},
"updatedAtMin": {
"type": "string"
}
}
}shopify_list_locationsList all inventory locations.
Locations are places where you store inventory (warehouses, retail stores, etc.).
Args:
Returns: List of inventory locations.
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 50,
"maximum": 250,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}shopify_search_customersSearch for customers by query string.
The query can search across multiple fields like email, name, etc.
Args:
Returns: Matching customers.
{
"type": "object",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"default": 50,
"maximum": 250,
"minimum": 1
},
"order": {
"type": "string"
},
"query": {
"type": "string",
"description": "Search query"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}shopify_get_customer_ordersGet orders for a specific customer.
Args:
Returns: Customer's orders.
{
"type": "object",
"required": [
"customerId"
],
"properties": {
"limit": {
"type": "integer",
"default": 50,
"maximum": 250,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"status": {
"enum": [
"any",
"open",
"closed",
"cancelled"
],
"type": "string"
},
"customerId": {
"type": "number",
"description": "Customer ID"
}
}
}shopify_list_price_rulesList price rules with pagination and filters.
Price rules define discount logic (percentage off, fixed amount, buy X get Y, etc.).
Args:
Returns: Paginated list of price rules.
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 50,
"maximum": 250,
"minimum": 1
},
"endsAt": {
"type": "string"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"sinceId": {
"type": "string"
},
"startsAt": {
"type": "string"
}
}
}shopify_get_price_ruleGet a single price rule by ID.
Args:
Returns: The price rule details.
{
"type": "object",
"required": [
"priceRuleId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"priceRuleId": {
"type": "number",
"description": "Price rule ID"
}
}
}shopify_create_price_ruleCreate a new price rule.
Args:
Returns: The created price rule.
{
"type": "object",
"required": [
"title",
"targetType",
"targetSelection",
"allocationMethod",
"valueType",
"value",
"customerSelection",
"startsAt"
],
"properties": {
"title": {
"type": "string",
"description": "Price rule title (required)"
},
"value": {
"type": "string",
"description": "Discount value (negative, e.g., \"-10.00"
},
"endsAt": {
"type": "string"
},
"startsAt": {
"type": "string",
"description": "Start date (ISO 8601)"
},
"valueType": {
"enum": [
"fixed_amount",
"percentage"
],
"type": "string",
"description": "Value type"
},
"targetType": {
"enum": [
"line_item",
"shipping_line"
],
"type": "string",
"description": "Target type"
},
"usageLimit": {
"type": "number"
},
"oncePerCustomer": {
"type": "boolean"
},
"targetSelection": {
"enum": [
"all",
"entitled"
],
"type": "string",
"description": "Target selection"
},
"allocationMethod": {
"enum": [
"across",
"each"
],
"type": "string",
"description": "Allocation method"
},
"customerSelection": {
"enum": [
"all",
"prerequisite"
],
"type": "string",
"description": "Customer selection"
},
"entitledCountryIds": {
"type": "array",
"items": {
"type": "number"
}
},
"entitledProductIds": {
"type": "array",
"items": {
"type": "number"
}
},
"entitledVariantIds": {
"type": "array",
"items": {
"type": "number"
}
},
"entitledCollectionIds": {
"type": "array",
"items": {
"type": "number"
}
},
"prerequisiteProductIds": {
"type": "array",
"items": {
"type": "number"
}
},
"prerequisiteVariantIds": {
"type": "array",
"items": {
"type": "number"
}
},
"prerequisiteCustomerIds": {
"type": "array",
"items": {
"type": "number"
}
},
"prerequisiteCollectionIds": {
"type": "array",
"items": {
"type": "number"
}
},
"prerequisiteQuantityRange": {
"type": "object"
},
"prerequisiteSubtotalRange": {
"type": "object"
}
}
}shopify_update_price_ruleUpdate an existing price rule.
Args:
Returns: The updated price rule.
{
"type": "object",
"required": [
"priceRuleId"
],
"properties": {
"title": {
"type": "string"
},
"value": {
"type": "string"
},
"endsAt": {
"type": "string"
},
"startsAt": {
"type": "string"
},
"usageLimit": {
"type": "number"
},
"priceRuleId": {
"type": "number",
"description": "Price rule ID"
},
"oncePerCustomer": {
"type": "boolean"
}
}
}shopify_delete_price_ruleDelete a price rule and all associated discount codes.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"priceRuleId"
],
"properties": {
"priceRuleId": {
"type": "number",
"description": "Price rule ID"
}
}
}shopify_list_discount_codesList discount codes for a price rule.
Discount codes are the actual codes customers enter at checkout.
Args:
Returns: List of discount codes.
{
"type": "object",
"required": [
"priceRuleId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"priceRuleId": {
"type": "number",
"description": "Price rule ID"
}
}
}shopify_get_discount_codeGet a single discount code by ID.
Args:
Returns: The discount code details.
{
"type": "object",
"required": [
"priceRuleId",
"discountCodeId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"priceRuleId": {
"type": "number",
"description": "Price rule ID"
},
"discountCodeId": {
"type": "number",
"description": "Discount code ID"
}
}
}shopify_create_discount_codeCreate a discount code for a price rule.
Args:
Returns: The created discount code.
{
"type": "object",
"required": [
"priceRuleId",
"code"
],
"properties": {
"code": {
"type": "string",
"description": "Discount code string"
},
"priceRuleId": {
"type": "number",
"description": "Price rule ID"
}
}
}shopify_update_discount_codeUpdate a discount code.
Args:
Returns: The updated discount code.
{
"type": "object",
"required": [
"priceRuleId",
"discountCodeId",
"code"
],
"properties": {
"code": {
"type": "string",
"description": "New discount code string"
},
"priceRuleId": {
"type": "number",
"description": "Price rule ID"
},
"discountCodeId": {
"type": "number",
"description": "Discount code ID"
}
}
}shopify_get_locationGet a single location by ID.
Args:
Returns: The location details.
{
"type": "object",
"required": [
"locationId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"locationId": {
"type": "number",
"description": "Location ID"
}
}
}shopify_list_draft_ordersList draft orders with pagination and filters.
Draft orders are orders that haven't been completed yet.
Args:
Returns: Paginated list of draft orders.
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 50,
"maximum": 250,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"status": {
"enum": [
"open",
"invoice_sent",
"completed"
],
"type": "string"
},
"sinceId": {
"type": "string"
},
"updatedAtMax": {
"type": "string"
},
"updatedAtMin": {
"type": "string"
}
}
}shopify_get_draft_orderGet a single draft order by ID.
Args:
Returns: The draft order with all details.
{
"type": "object",
"required": [
"draftOrderId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"draftOrderId": {
"type": "number",
"description": "Draft order ID"
}
}
}shopify_create_draft_orderCreate a new draft order.
Args:
Returns: The created draft order.
{
"type": "object",
"properties": {
"note": {
"type": "string"
},
"tags": {
"type": "string"
},
"email": {
"type": "string"
},
"customer": {
"type": "object"
},
"taxExempt": {
"type": "boolean"
},
"useCustomerDefaultAddress": {
"type": "boolean"
}
}
}shopify_update_draft_orderUpdate an existing draft order.
Args:
Returns: The updated draft order.
{
"type": "object",
"properties": {
"note": {
"type": "string"
},
"tags": {
"type": "string"
},
"email": {
"type": "string"
},
"customer": {
"type": "object"
},
"draftOrderId": {
"type": "number",
"description": "Draft order ID"
}
}
}shopify_delete_draft_orderDelete a draft order.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"draftOrderId"
],
"properties": {
"draftOrderId": {
"type": "number",
"description": "Draft order ID"
}
}
}shopify_complete_draft_orderComplete a draft order and convert it to a real order.
Args:
Returns: The completed draft order with the created order ID.
{
"type": "object",
"required": [
"draftOrderId"
],
"properties": {
"draftOrderId": {
"type": "number",
"description": "Draft order ID"
},
"paymentPending": {
"type": "boolean"
}
}
}shopify_send_draft_order_invoiceSend an invoice for a draft order to the customer.
Args:
Returns: The invoice details.
{
"type": "object",
"required": [
"draftOrderId"
],
"properties": {
"to": {
"type": "string"
},
"from": {
"type": "string"
},
"subject": {
"type": "string"
},
"draftOrderId": {
"type": "number",
"description": "Draft order ID"
},
"customMessage": {
"type": "string"
}
}
}shopify_list_fulfillmentsList fulfillments for an order.
Args:
Returns: List of fulfillments with tracking information.
{
"type": "object",
"required": [
"orderId"
],
"properties": {
"limit": {
"type": "integer",
"default": 50,
"maximum": 250,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"orderId": {
"type": "number",
"description": "Order ID"
}
}
}shopify_get_fulfillmentGet a single fulfillment by ID.
Args:
Returns: The fulfillment details.
{
"type": "object",
"required": [
"orderId",
"fulfillmentId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"orderId": {
"type": "number",
"description": "Order ID"
},
"fulfillmentId": {
"type": "number",
"description": "Fulfillment ID"
}
}
}shopify_create_fulfillmentCreate a fulfillment for fulfillment orders.
This uses the new Fulfillment Orders API.
Args:
Returns: The created fulfillment.
{
"type": "object",
"properties": {
"notifyCustomer": {
"type": "boolean"
}
}
}shopify_update_fulfillment_trackingUpdate tracking information for a fulfillment.
Args:
Returns: The updated fulfillment.
{
"type": "object",
"required": [
"fulfillmentId"
],
"properties": {
"fulfillmentId": {
"type": "number",
"description": "Fulfillment ID"
},
"notifyCustomer": {
"type": "boolean"
}
}
}shopify_cancel_fulfillmentCancel a fulfillment.
Args:
Returns: The cancelled fulfillment.
{
"type": "object",
"required": [
"fulfillmentId"
],
"properties": {
"fulfillmentId": {
"type": "number",
"description": "Fulfillment ID"
}
}
}shopify_list_fulfillment_ordersList fulfillment orders for an order.
Fulfillment orders represent groups of items to be fulfilled together.
Args:
Returns: List of fulfillment orders with their line items.
{
"type": "object",
"required": [
"orderId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"orderId": {
"type": "number",
"description": "Order ID"
}
}
}shopify_get_location_countGet the count of locations.
Returns: Count of locations.
{
"type": "object",
"properties": {}
}shopify_list_inventory_levelsList inventory levels for items at locations.
You must provide at least one of: locationIds or inventoryItemIds.
Args:
Returns: List of inventory levels with available quantities.
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 50,
"maximum": 250,
"minimum": 1
},
"locationIds": {
"type": "string",
"description": "Comma-separated location IDs"
},
"inventoryItemIds": {
"type": "string",
"description": "Comma-separated inventory item IDs"
}
}
}shopify_adjust_inventory_levelAdjust the inventory level by a relative amount.
Use this to increment or decrement inventory (e.g., +5 or -3).
Args:
Returns: The updated inventory level.
{
"type": "object",
"required": [
"inventoryItemId",
"locationId",
"adjustment"
],
"properties": {
"adjustment": {
"type": "number",
"description": "Adjustment amount (positive or negative)"
},
"locationId": {
"type": "number",
"description": "Location ID"
},
"inventoryItemId": {
"type": "number",
"description": "Inventory item ID"
}
}
}shopify_set_inventory_levelSet the inventory level to an absolute value.
Use this to set inventory to a specific number (e.g., set to 100).
Args:
Returns: The updated inventory level.
{
"type": "object",
"required": [
"inventoryItemId",
"locationId",
"available"
],
"properties": {
"available": {
"type": "number",
"description": "New available quantity"
},
"locationId": {
"type": "number",
"description": "Location ID"
},
"inventoryItemId": {
"type": "number",
"description": "Inventory item ID"
}
}
}shopify_get_inventory_itemGet an inventory item by ID.
Inventory items are connected to product variants.
Args:
Returns: The inventory item details including SKU, cost, tracking settings.
{
"type": "object",
"required": [
"inventoryItemId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"inventoryItemId": {
"type": "number",
"description": "Inventory item ID"
}
}
}shopify_update_inventory_itemUpdate an inventory item.
Args:
Returns: The updated inventory item.
{
"type": "object",
"required": [
"inventoryItemId"
],
"properties": {
"sku": {
"type": "string"
},
"cost": {
"type": "string"
},
"tracked": {
"type": "boolean"
},
"inventoryItemId": {
"type": "number",
"description": "Inventory item ID"
},
"countryCodeOfOrigin": {
"type": "string"
},
"harmonizedSystemCode": {
"type": "string"
},
"provinceCodeOfOrigin": {
"type": "string"
}
}
}shopify_list_metafieldsList metafields for a resource.
Metafields store custom data for products, customers, orders, etc.
Args:
Returns: Paginated list of metafields.
{
"type": "object",
"required": [
"ownerResource",
"ownerId"
],
"properties": {
"key": {
"type": "string"
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 250,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"ownerId": {
"type": "number",
"description": "Resource ID"
},
"namespace": {
"type": "string"
},
"ownerResource": {
"type": "string",
"description": "Resource type (e.g., \"products"
}
}
}shopify_get_metafieldGet a single metafield by ID.
Args:
Returns: The metafield details.
{
"type": "object",
"required": [
"ownerResource",
"ownerId",
"metafieldId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"ownerId": {
"type": "number",
"description": "Resource ID"
},
"metafieldId": {
"type": "number",
"description": "Metafield ID"
},
"ownerResource": {
"type": "string",
"description": "Resource type"
}
}
}shopify_create_metafieldCreate a metafield for a resource.
Common types:
Args:
Returns: The created metafield.
{
"type": "object",
"required": [
"ownerResource",
"ownerId",
"namespace",
"key",
"value",
"type"
],
"properties": {
"key": {
"type": "string",
"description": "Metafield key"
},
"type": {
"type": "string",
"description": "Metafield type"
},
"value": {
"type": "string",
"description": "Metafield value"
},
"ownerId": {
"type": "number",
"description": "Resource ID"
},
"namespace": {
"type": "string",
"description": "Metafield namespace"
},
"description": {
"type": "string"
},
"ownerResource": {
"type": "string",
"description": "Resource type"
}
}
}shopify_get_assetGet a single asset from a theme.
Returns the asset content (value) and metadata.
Args:
Returns: The asset with its content.
{
"type": "object",
"required": [
"themeId",
"key"
],
"properties": {
"key": {
"type": "string",
"description": "Asset key (file path)"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"themeId": {
"type": "number",
"description": "Theme ID"
}
}
}shopify_update_metafieldUpdate an existing metafield.
Args:
Returns: The updated metafield.
{
"type": "object",
"required": [
"ownerResource",
"ownerId",
"metafieldId",
"value"
],
"properties": {
"type": {
"type": "string"
},
"value": {
"type": "string",
"description": "New value"
},
"ownerId": {
"type": "number",
"description": "Resource ID"
},
"metafieldId": {
"type": "number",
"description": "Metafield ID"
},
"ownerResource": {
"type": "string",
"description": "Resource type"
}
}
}shopify_delete_metafieldDelete a metafield.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"ownerResource",
"ownerId",
"metafieldId"
],
"properties": {
"ownerId": {
"type": "number",
"description": "Resource ID"
},
"metafieldId": {
"type": "number",
"description": "Metafield ID"
},
"ownerResource": {
"type": "string",
"description": "Resource type"
}
}
}shopify_list_shop_metafieldsList metafields attached to the shop itself.
Args:
Returns: Paginated list of shop metafields.
{
"type": "object",
"properties": {
"key": {
"type": "string"
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 250,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"namespace": {
"type": "string"
}
}
}shopify_create_shop_metafieldCreate a metafield for the shop.
Args:
Returns: The created shop metafield.
{
"type": "object",
"required": [
"namespace",
"key",
"value",
"type"
],
"properties": {
"key": {
"type": "string",
"description": "Metafield key"
},
"type": {
"type": "string",
"description": "Metafield type"
},
"value": {
"type": "string",
"description": "Metafield value"
},
"namespace": {
"type": "string",
"description": "Metafield namespace"
},
"description": {
"type": "string"
}
}
}shopify_list_ordersList orders from the store with pagination and filters.
Args:
Returns: Paginated list of orders.
{
"type": "object",
"properties": {
"ids": {
"type": "string"
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 250,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"status": {
"enum": [
"open",
"closed",
"cancelled",
"any"
],
"type": "string"
},
"sinceId": {
"type": "string"
},
"createdAtMax": {
"type": "string"
},
"createdAtMin": {
"type": "string"
},
"updatedAtMax": {
"type": "string"
},
"updatedAtMin": {
"type": "string"
},
"processedAtMax": {
"type": "string"
},
"processedAtMin": {
"type": "string"
}
}
}shopify_get_orderGet a single order by ID.
Args:
Returns: The order with all details including line items, shipping, etc.
{
"type": "object",
"required": [
"orderId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"orderId": {
"type": "number",
"description": "Order ID"
}
}
}shopify_create_orderCreate a new order (typically for importing historical orders).
Args:
Returns: The created order.
{
"type": "object",
"properties": {
"note": {
"type": "string"
},
"tags": {
"type": "string"
},
"email": {
"type": "string"
},
"customer": {
"type": "object"
},
"sendReceipt": {
"type": "boolean"
},
"financialStatus": {
"type": "string"
},
"fulfillmentStatus": {
"type": "string"
},
"sendFulfillmentReceipt": {
"type": "boolean"
}
}
}shopify_update_orderUpdate an existing order.
Args:
Returns: The updated order.
{
"type": "object",
"required": [
"orderId"
],
"properties": {
"note": {
"type": "string"
},
"tags": {
"type": "string"
},
"email": {
"type": "string"
},
"phone": {
"type": "string"
},
"orderId": {
"type": "number",
"description": "Order ID"
},
"buyerAcceptsMarketing": {
"type": "boolean"
}
}
}shopify_delete_orderDelete an order (moves to trash, can be restored within 60 days).
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"orderId"
],
"properties": {
"orderId": {
"type": "number",
"description": "Order ID"
}
}
}shopify_get_order_countGet the count of orders matching filters.
Args:
Returns: Count of matching orders.
{
"type": "object",
"properties": {
"status": {
"enum": [
"open",
"closed",
"cancelled",
"any"
],
"type": "string"
},
"createdAtMax": {
"type": "string"
},
"createdAtMin": {
"type": "string"
}
}
}shopify_close_orderClose an order (marks as archived).
Args:
Returns: The closed order.
{
"type": "object",
"required": [
"orderId"
],
"properties": {
"orderId": {
"type": "number",
"description": "Order ID"
}
}
}shopify_cancel_orderCancel an order.
Args:
Returns: The cancelled order.
{
"type": "object",
"required": [
"orderId"
],
"properties": {
"email": {
"type": "boolean",
"description": "Send cancellation email"
},
"reason": {
"enum": [
"customer",
"fraud",
"inventory",
"declined",
"other"
],
"type": "string"
},
"orderId": {
"type": "number",
"description": "Order ID"
},
"restock": {
"type": "boolean",
"description": "Restock inventory"
}
}
}shopify_list_productsList products from the Shopify store with pagination and filters.
Args:
Returns: Paginated list of products with variants.
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 50,
"maximum": 250,
"minimum": 1,
"description": "Number of products to return"
},
"title": {
"type": "string",
"description": "Filter by title"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string",
"default": "json",
"description": "Response format"
},
"handle": {
"type": "string",
"description": "Filter by handle"
},
"status": {
"enum": [
"active",
"archived",
"draft"
],
"type": "string",
"description": "Filter by status"
},
"vendor": {
"type": "string",
"description": "Filter by vendor"
},
"sinceId": {
"type": "string",
"description": "Return products after this ID"
},
"productType": {
"type": "string",
"description": "Filter by product type"
},
"collectionId": {
"type": "string",
"description": "Filter by collection ID"
}
}
}shopify_get_productGet a single product by ID.
Args:
Returns: The product with all variants and images.
{
"type": "object",
"required": [
"productId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"productId": {
"type": "number",
"description": "Product ID"
}
}
}shopify_create_productCreate a new product in the store.
Args:
Returns: The created product.
{
"type": "object",
"required": [
"title"
],
"properties": {
"tags": {
"type": "string",
"description": "Comma-separated tags"
},
"title": {
"type": "string",
"description": "Product title (required)"
},
"status": {
"enum": [
"active",
"archived",
"draft"
],
"type": "string",
"description": "Product status"
},
"vendor": {
"type": "string",
"description": "Product vendor"
},
"bodyHtml": {
"type": "string",
"description": "Product description in HTML"
},
"productType": {
"type": "string",
"description": "Product type"
}
}
}shopify_update_productUpdate an existing product.
Args:
Returns: The updated product.
{
"type": "object",
"required": [
"productId"
],
"properties": {
"tags": {
"type": "string"
},
"title": {
"type": "string"
},
"status": {
"enum": [
"active",
"archived",
"draft"
],
"type": "string"
},
"vendor": {
"type": "string"
},
"bodyHtml": {
"type": "string"
},
"productId": {
"type": "number",
"description": "Product ID to update"
},
"productType": {
"type": "string"
}
}
}shopify_delete_productDelete a product from the store.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"productId"
],
"properties": {
"productId": {
"type": "number",
"description": "Product ID to delete"
}
}
}shopify_get_product_countGet the count of products matching filters.
Args:
Returns: Count of matching products.
{
"type": "object",
"properties": {
"status": {
"enum": [
"active",
"archived",
"draft"
],
"type": "string"
},
"vendor": {
"type": "string"
},
"productType": {
"type": "string"
},
"collectionId": {
"type": "string"
}
}
}shopify_list_product_variantsList all variants for a product.
Args:
Returns: List of product variants.
{
"type": "object",
"required": [
"productId"
],
"properties": {
"limit": {
"type": "integer",
"default": 50,
"maximum": 250,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"productId": {
"type": "number",
"description": "Product ID"
}
}
}shopify_get_variantGet a single product variant by ID.
Args:
Returns: The variant details.
{
"type": "object",
"required": [
"variantId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"variantId": {
"type": "number",
"description": "Variant ID"
}
}
}shopify_create_variantCreate a new variant for a product.
Args:
Returns: The created variant.
{
"type": "object",
"required": [
"productId"
],
"properties": {
"sku": {
"type": "string"
},
"price": {
"type": "string"
},
"weight": {
"type": "number"
},
"barcode": {
"type": "string"
},
"option1": {
"type": "string"
},
"option2": {
"type": "string"
},
"option3": {
"type": "string"
},
"productId": {
"type": "number",
"description": "Product ID"
},
"weightUnit": {
"enum": [
"g",
"kg",
"lb",
"oz"
],
"type": "string"
},
"inventoryQuantity": {
"type": "number"
}
}
}shopify_update_variantUpdate an existing variant.
Args:
Returns: The updated variant.
{
"type": "object",
"required": [
"variantId"
],
"properties": {
"sku": {
"type": "string"
},
"price": {
"type": "string"
},
"weight": {
"type": "number"
},
"barcode": {
"type": "string"
},
"option1": {
"type": "string"
},
"option2": {
"type": "string"
},
"option3": {
"type": "string"
},
"variantId": {
"type": "number",
"description": "Variant ID"
},
"compareAtPrice": {
"type": "string"
}
}
}shopify_delete_variantDelete a product variant.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"productId",
"variantId"
],
"properties": {
"productId": {
"type": "number",
"description": "Product ID"
},
"variantId": {
"type": "number",
"description": "Variant ID"
}
}
}shopify_list_product_imagesList all images for a product.
Args:
Returns: List of product images.
{
"type": "object",
"required": [
"productId"
],
"properties": {
"limit": {
"type": "integer",
"default": 50,
"maximum": 250,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"productId": {
"type": "number",
"description": "Product ID"
}
}
}shopify_create_product_imageCreate a new image for a product.
Args:
Returns: The created image.
{
"type": "object",
"required": [
"productId"
],
"properties": {
"alt": {
"type": "string",
"description": "Alt text"
},
"src": {
"type": "string",
"description": "Image URL"
},
"position": {
"type": "number",
"description": "Position"
},
"productId": {
"type": "number",
"description": "Product ID"
},
"attachment": {
"type": "string",
"description": "Base64-encoded image"
},
"variantIds": {
"type": "array",
"items": {
"type": "number"
},
"description": "Variant IDs to associate"
}
}
}shopify_update_product_imageUpdate an existing product image.
Args:
Returns: The updated image.
{
"type": "object",
"required": [
"productId",
"imageId"
],
"properties": {
"alt": {
"type": "string"
},
"imageId": {
"type": "number",
"description": "Image ID"
},
"position": {
"type": "number"
},
"productId": {
"type": "number",
"description": "Product ID"
},
"variantIds": {
"type": "array",
"items": {
"type": "number"
}
}
}
}shopify_delete_product_imageDelete a product image.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"productId",
"imageId"
],
"properties": {
"imageId": {
"type": "number",
"description": "Image ID"
},
"productId": {
"type": "number",
"description": "Product ID"
}
}
}shopify_test_connectionTest the connection to the Shopify store.
Verifies that the API credentials are valid and returns shop information.
Returns: Connection status and shop name if successful.
{
"type": "object",
"properties": {}
}shopify_get_shopGet shop details and configuration.
Returns comprehensive information about the Shopify store including:
Args:
Returns: Complete shop configuration object.
{
"type": "object",
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string",
"default": "json",
"description": "Response format"
}
}
}shopify_list_themesList all themes in the store.
Returns themes with their roles (main, unpublished, demo).
Args:
Returns: List of themes.
{
"type": "object",
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}shopify_get_themeGet a single theme by ID.
Args:
Returns: The theme details.
{
"type": "object",
"required": [
"themeId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"themeId": {
"type": "number",
"description": "Theme ID"
}
}
}shopify_create_themeCreate a new theme.
Args:
Returns: The created theme.
{
"type": "object",
"required": [
"name"
],
"properties": {
"src": {
"type": "string",
"description": "URL to theme ZIP file"
},
"name": {
"type": "string",
"description": "Theme name"
},
"role": {
"enum": [
"main",
"unpublished"
],
"type": "string"
}
}
}shopify_update_themeUpdate an existing theme.
Args:
Returns: The updated theme.
{
"type": "object",
"required": [
"themeId"
],
"properties": {
"name": {
"type": "string"
},
"role": {
"enum": [
"main",
"unpublished"
],
"type": "string"
},
"themeId": {
"type": "number",
"description": "Theme ID"
}
}
}shopify_delete_themeDelete a theme.
Note: The main (published) theme cannot be deleted.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"themeId"
],
"properties": {
"themeId": {
"type": "number",
"description": "Theme ID"
}
}
}shopify_list_assetsList all assets in a theme.
Returns a list of asset keys (file paths) in the theme.
Args:
Returns: List of asset keys.
{
"type": "object",
"required": [
"themeId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"themeId": {
"type": "number",
"description": "Theme ID"
}
}
}shopify_create_or_update_assetCreate or update a theme asset.
Use value for text content or attachment for binary content.
Args:
Returns: The created/updated asset.
{
"type": "object",
"required": [
"themeId",
"key"
],
"properties": {
"key": {
"type": "string",
"description": "Asset key (file path)"
},
"value": {
"type": "string",
"description": "Text content"
},
"themeId": {
"type": "number",
"description": "Theme ID"
},
"sourceKey": {
"type": "string",
"description": "Copy from this asset key"
},
"attachment": {
"type": "string",
"description": "Base64-encoded binary content"
}
}
}shopify_delete_assetDelete an asset from a theme.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"themeId",
"key"
],
"properties": {
"key": {
"type": "string",
"description": "Asset key"
},
"themeId": {
"type": "number",
"description": "Theme ID"
}
}
}shopify_list_transactionsList all transactions for an order.
Transactions represent payments, refunds, and other monetary operations.
Args:
Returns: List of transactions.
{
"type": "object",
"required": [
"orderId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"orderId": {
"type": "number",
"description": "Order ID"
}
}
}shopify_get_transactionGet a single transaction by ID.
Args:
Returns: The transaction details.
{
"type": "object",
"required": [
"orderId",
"transactionId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"orderId": {
"type": "number",
"description": "Order ID"
},
"transactionId": {
"type": "number",
"description": "Transaction ID"
}
}
}shopify_create_transactionCreate a transaction for an order.
Use this to capture authorized payments or record external payments.
Args:
Returns: The created transaction.
{
"type": "object",
"required": [
"orderId"
],
"properties": {
"amount": {
"type": "string",
"description": "Transaction amount"
},
"gateway": {
"type": "string",
"description": "Payment gateway"
},
"orderId": {
"type": "number",
"description": "Order ID"
},
"currency": {
"type": "string",
"description": "Currency code"
},
"parentId": {
"type": "number",
"description": "Parent transaction ID"
}
}
}shopify_list_refundsList all refunds for an order.
Args:
Returns: List of refunds with line items and amounts.
{
"type": "object",
"required": [
"orderId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"orderId": {
"type": "number",
"description": "Order ID"
}
}
}shopify_get_refundGet a single refund by ID.
Args:
Returns: The refund details.
{
"type": "object",
"required": [
"orderId",
"refundId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"orderId": {
"type": "number",
"description": "Order ID"
},
"refundId": {
"type": "number",
"description": "Refund ID"
}
}
}shopify_calculate_refundCalculate the refund amounts before creating a refund.
Use this to preview what a refund would look like.
Args:
Returns: Calculated refund amounts.
{
"type": "object",
"properties": {
"orderId": {
"type": "number",
"description": "Order ID"
}
}
}shopify_create_refundCreate a refund for an order.
Args:
Returns: The created refund.
{
"type": "object",
"properties": {
"note": {
"type": "string"
},
"notify": {
"type": "boolean",
"default": true
},
"orderId": {
"type": "number",
"description": "Order ID"
}
}
}shopify_list_webhooksList webhooks with pagination and filters.
Webhooks send notifications to your app when events occur in the store.
Args:
Returns: Paginated list of webhooks.
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 50,
"maximum": 250,
"minimum": 1
},
"topic": {
"type": "string"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"address": {
"type": "string"
},
"sinceId": {
"type": "string"
}
}
}shopify_get_webhookGet a single webhook by ID.
Args:
Returns: The webhook details.
{
"type": "object",
"required": [
"webhookId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"webhookId": {
"type": "number",
"description": "Webhook ID"
}
}
}shopify_create_webhookCreate a new webhook subscription.
Common topics:
Args:
Returns: The created webhook.
{
"type": "object",
"required": [
"topic",
"address"
],
"properties": {
"topic": {
"type": "string",
"description": "Event topic (e.g., \"orders/create"
},
"fields": {
"type": "array",
"items": {
"type": "string"
}
},
"format": {
"enum": [
"json",
"xml"
],
"type": "string",
"default": "json"
},
"address": {
"type": "string",
"description": "Callback URL (HTTPS required)"
},
"metafieldNamespaces": {
"type": "array",
"items": {
"type": "string"
}
}
}
}shopify_update_webhookUpdate an existing webhook.
Args:
Returns: The updated webhook.
{
"type": "object",
"required": [
"webhookId"
],
"properties": {
"topic": {
"type": "string"
},
"fields": {
"type": "array",
"items": {
"type": "string"
}
},
"format": {
"enum": [
"json",
"xml"
],
"type": "string"
},
"address": {
"type": "string"
},
"webhookId": {
"type": "number",
"description": "Webhook ID"
},
"metafieldNamespaces": {
"type": "array",
"items": {
"type": "string"
}
}
}
}shopify_delete_webhookDelete a webhook subscription.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"webhookId"
],
"properties": {
"webhookId": {
"type": "number",
"description": "Webhook ID"
}
}
}shopify_get_webhook_countGet the count of webhooks matching filters.
Args:
Returns: Count of matching webhooks.
{
"type": "object",
"properties": {
"topic": {
"type": "string"
},
"address": {
"type": "string"
}
}
}