MCP Server · 80 Tools

Give your AI agents
full Shopify access

An MCP server that connects AI agents to the Shopify Admin API. Manage products, orders, customers, inventory, and more — using REST and GraphQL under the hood.

Get Started View on GitHub
$ npx @kockatoos/shopify-mcp
80
Tools
12
Categories
REST + GraphQL
API Support
OAuth
Authentication

Available Tools

80 tools across 12 categories covering the full Shopify Admin API surface.

Shop

1 tool
  • get_shop_info — Store name, domain, email, plan, currency, timezone

Products

10 tools
  • list_products — List with filters and pagination
  • get_product — Full details with variants and images
  • create_product — Create with variants and images
  • update_product — Update fields
  • delete_product — Permanently delete
  • list_product_metafields — List metafields (GraphQL)
  • get_product_metafield — Get by namespace/key (GraphQL)
  • set_product_metafield — Create/update via metafieldsSet (GraphQL)
  • delete_product_metafield — Delete metafield (GraphQL)
  • list_metafield_definitions — List definitions (GraphQL)
  • create_metafield_definition — Create definition with validation rules (GraphQL)

Product Images

5 tools
  • list_product_images — List all images
  • get_product_image — Get a specific image
  • create_product_image — Add by URL or base64
  • update_product_image — Update alt text or position
  • delete_product_image — Remove an image

Variants

5 tools
  • list_variants — List all variants of a product
  • get_variant — Get a specific variant
  • create_variant — Add a variant
  • update_variant — Update price, SKU, inventory
  • delete_variant — Remove a variant

Collections

10 tools
  • list_custom_collections — List manual collections
  • list_smart_collections — List automated collections
  • get_custom_collection — Get by ID
  • get_smart_collection — Get by ID
  • create_custom_collection — Create manual collection
  • update_custom_collection — Update collection
  • delete_custom_collection — Delete collection
  • add_product_to_collection — Add a product
  • remove_product_from_collection — Remove a product
  • list_collection_products — List products in collection

Orders

9 tools
  • list_orders — List with filters and date range
  • get_order — Full details with line items
  • update_order — Update notes, tags, email
  • close_order — Mark as closed
  • cancel_order — Cancel with reason and restock
  • list_order_metafields — List metafields (GraphQL)
  • get_order_metafield — Get by namespace/key (GraphQL)
  • set_order_metafield — Create/update (GraphQL)
  • delete_order_metafield — Delete metafield (GraphQL)

Customers

9 tools
  • list_customers — List with pagination
  • search_customers — Search by email, name, country
  • get_customer — Full details and addresses
  • create_customer — Create with addresses
  • update_customer — Update fields
  • list_customer_metafields — List metafields (GraphQL)
  • get_customer_metafield — Get by namespace/key (GraphQL)
  • set_customer_metafield — Create/update (GraphQL)
  • delete_customer_metafield — Delete metafield (GraphQL)

Inventory

5 tools
  • list_locations — List all locations
  • get_location — Get location details
  • list_inventory_levels — Stock quantities at a location
  • adjust_inventory — Adjust stock by +/−
  • set_inventory — Set absolute quantity

Draft Orders

7 tools
  • list_draft_orders — List with pagination
  • get_draft_order — Get by ID
  • create_draft_order — Create with line items
  • update_draft_order — Update draft
  • complete_draft_order — Convert to real order
  • send_draft_order_invoice — Email invoice
  • delete_draft_order — Delete draft

Discounts

8 tools
  • list_price_rules — List all price rules
  • get_price_rule — Get by ID
  • create_price_rule — Create rule (%, fixed, shipping)
  • update_price_rule — Update rule
  • delete_price_rule — Delete rule
  • list_discount_codes — List codes for a rule
  • create_discount_code — Create a code
  • delete_discount_code — Delete a code

Fulfillments

5 tools
  • list_fulfillment_orders — List fulfillment orders
  • list_fulfillments — List fulfillments
  • create_fulfillment — Create with tracking
  • update_fulfillment_tracking — Update tracking
  • cancel_fulfillment — Cancel fulfillment

Webhooks

5 tools
  • list_webhooks — List all webhooks
  • get_webhook — Get by ID
  • create_webhook — Register a webhook
  • update_webhook — Update URL or topic
  • delete_webhook — Remove a webhook

Quick Setup

Add to your MCP client configuration and start using it immediately.

{
  "mcpServers": {
    "kockatoos-shopify-mcp": {
      "command": "npx",
      "args": ["-y", "@kockatoos/shopify-mcp"],
      "env": {
        "SHOPIFY_STORE_NAME": "your-store-name",
        "SHOPIFY_CLIENT_ID": "your-client-id",
        "SHOPIFY_CLIENT_SECRET": "your-client-secret"
      }
    }
  }
}
VariableRequiredDescription
SHOPIFY_STORE_NAME Required Your store name (not the full .myshopify.com domain)
SHOPIFY_CLIENT_ID Required App client ID
SHOPIFY_CLIENT_SECRET Required App client secret
SHOPIFY_API_VERSION Optional API version (defaults to 2026-01)

Authentication

Uses Shopify's client_credentials OAuth grant. No browser auth needed.

Required App Scopes

Configure in Shopify Admin → Apps and sales channels → Develop apps → API access.

read_products, write_products
read_orders, write_orders
read_customers, write_customers
read_inventory, write_inventory
read_locations
read_draft_orders, write_draft_orders
read_price_rules, write_price_rules
read_discounts, write_discounts
read_shipping, write_shipping
read_fulfillments, write_fulfillments