shopify-graphql-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SHOPIFY_STORE_URL | Yes | Your Shopify store URL (e.g., your-store.myshopify.com) | |
| SHOPIFY_ACCESS_TOKEN | Yes | Your Shopify Admin API access token | |
| SHOPIFY_STORE_API_URL | Yes | Your Shopify Admin API GraphQL endpoint URL (e.g., https://your-store.myshopify.com/admin/api/2025-01/graphql.json) | |
| ENABLED_TOOL_CATEGORIES | No | Comma-separated list of tool categories to enable (e.g., 'essential', 'essential,commerce'). Default is 'all'. | all |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| health_checkA | Check if the Shopify GraphQL MCP server is running and configured |
| get_shop_infoB | Fetch general shop information |
| get_shop_policiesB | Fetch shop policies (refund, privacy, terms of service, etc.) |
| shopifyql_queryB | Execute a ShopifyQL query for analytics (requires read_analytics scope) |
| get_productsC | Fetch products from the Shopify store with optional filtering |
| get_productA | Fetch a specific product by ID |
| create_productB | Create a new product in the Shopify store |
| update_productB | Update an existing product |
| delete_productB | Delete a product from the store |
| get_ordersB | Fetch orders from the Shopify store with optional filtering |
| get_orderA | Fetch a specific order by ID |
| get_all_ordersA | Fetch all orders with comprehensive data including archived and cancelled orders |
| cancel_orderD | Cancel an order |
| create_orderB | Create a new order programmatically. Useful for importing orders from external systems or creating wholesale orders. Requires write_orders scope. |
| update_orderA | Update order attributes like email, shipping address, tags, and notes. For line item changes, use order editing instead. |
| open_orderA | Reopen a closed order |
| close_orderB | Close an open order. A closed order indicates no further work is required. |
| delete_orderA | Permanently delete an order. Only certain order types can be deleted. This action is irreversible. |
| capture_order_paymentA | Capture payment for an authorized transaction. Use this to claim money that was previously reserved by an authorization. |
| mark_order_as_paidA | Mark an order as paid by recording a payment transaction for the outstanding amount. Useful for manual payment methods. |
| create_refundA | Create a refund for an order. Supports refunding line items, shipping costs, and processing refunds through different payment methods. |
| get_customersB | Fetch customers from the Shopify store with optional filtering |
| get_customerA | Fetch a specific customer by ID |
| create_customerB | Create a new customer in the Shopify store |
| update_customerC | Update an existing customer |
| delete_customerB | Delete a customer from the store |
| create_customer_addressB | Create a new address for a customer |
| update_customer_addressA | Update a customer's existing address |
| delete_customer_addressB | Delete a customer's address |
| get_collectionsC | Fetch collections from the Shopify store |
| get_collectionA | Fetch a specific collection by ID |
| create_collectionA | Create a new collection (manual or smart collection) |
| add_products_to_collectionB | Add products to a manual collection |
| update_collectionC | Update an existing collection |
| delete_collectionC | Delete a collection |
| publish_collectionB | Publish a collection to sales channels |
| unpublish_collectionB | Unpublish a collection from sales channels |
| get_inventoryC | Fetch inventory levels for products |
| adjust_inventoryC | Adjust inventory quantities |
| set_inventoryC | Set on-hand inventory quantity |
| get_locationsC | Fetch store locations |
| get_locationA | Fetch a specific location by ID |
| create_locationC | Create a new location |
| update_locationB | Update an existing location |
| delete_locationB | Delete a location from the store |
| activate_locationA | Activate a location so that you can stock inventory at the location |
| deactivate_locationA | Deactivate a location and moves inventory, pending orders, and transfers to a destination location |
| get_draft_ordersC | Fetch draft orders from the store |
| get_draft_orderA | Fetch a specific draft order by ID |
| create_draft_orderC | Create a new draft order |
| complete_draft_orderB | Complete a draft order and convert it to an order |
| delete_draft_orderB | Delete a draft order |
| get_discountsB | Fetch discount codes from the store |
| get_discount_codeA | Fetch a specific discount code by ID |
| create_discountB | Create a basic discount code (percentage or fixed amount) |
| update_discount_codeC | Update an existing discount code |
| delete_discountC | Delete a discount code |
| get_discounts_allocator_functionsB | Fetch discounts allocator functions for the store |
| create_discounts_allocator_functionC | Create a discounts allocator function using a Shopify Function |
| get_assigned_fulfillment_ordersA | Fetch fulfillment orders assigned to a fulfillment service |
| get_fulfillment_orderA | Fetch a specific fulfillment order by ID |
| accept_fulfillment_requestB | Accept a fulfillment request for a fulfillment order |
| reject_fulfillment_requestB | Reject a fulfillment request for a fulfillment order |
| get_fulfillment_servicesB | Fetch custom fulfillment services configured in the store |
| create_fulfillmentC | Create a fulfillment for a fulfillment order |
| hold_fulfillment_orderA | Apply a fulfillment hold on a fulfillment order. Use this to pause fulfillment due to inventory issues, customer requests, or other reasons. |
| release_fulfillment_holdA | Release the fulfillment hold on a fulfillment order, allowing it to be fulfilled. |
| move_fulfillment_orderA | Move a fulfillment order to a different location for fulfillment. |
| open_fulfillment_orderB | Mark a fulfillment order as open, ready for fulfillment. |
| close_fulfillment_orderA | Close a fulfillment order as incomplete, indicating the fulfillment service cannot ship remaining items. |
| cancel_fulfillment_orderB | Cancel a fulfillment order. |
| reschedule_fulfillment_orderB | Reschedule a scheduled fulfillment order to a new date and time. |
| get_gift_cardsC | Fetch gift cards from the store |
| get_gift_cardA | Fetch a specific gift card by ID |
| create_gift_cardB | Create a new gift card |
| update_gift_cardC | Update an existing gift card |
| disable_gift_cardC | Disable a gift card |
| get_gift_card_transactionsC | Fetch gift card transactions |
| credit_gift_cardA | Add credit to a gift card. Creates a credit transaction that increases the gift card balance. |
| debit_gift_cardB | Debit (deduct) from a gift card. Creates a debit transaction that decreases the gift card balance. |
| send_gift_card_notification_to_customerB | Send a gift card notification email to the customer associated with the gift card |
| send_gift_card_notification_to_recipientB | Send a gift card notification email to the specified recipient |
| get_returnable_fulfillmentsB | Fetch fulfillments that can be returned for an order |
| get_returns_by_orderA | Fetch returns for a specific order |
| get_returnA | Fetch a specific return by ID |
| create_returnB | Create a new return from an order |
| approve_return_requestC | Approve a return request |
| decline_return_requestB | Decline a return request |
| close_returnC | Close a return |
| get_checkoutsB | Fetch abandoned or active checkouts from the store |
| get_checkoutA | Fetch a specific checkout by ID |
| get_checkout_branding_settingsA | Fetch checkout branding settings for the store |
| update_checkout_branding_settingsC | Update checkout branding settings |
| complete_checkoutA | Convert an abandoned checkout to a draft order (for recovery) |
| get_payment_termsB | Fetch payment terms configurations |
| create_payment_termsC | Create new payment terms |
| update_payment_termsB | Update existing payment terms |
| delete_payment_termsA | Delete payment terms |
| get_payment_mandatesA | Fetch payment mandates for the store |
| get_payment_customizationsA | Fetch payment customizations from the store |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/UVU-Store/shopify-graphql-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server