Skip to main content
Glama

Shopify MCPサーバー

(よろしければ星を付けてください!)

Shopify API用のMCPサーバー。GraphQL APIを介してストアデータとのやり取りを可能にします。このサーバーは、商品、顧客、注文などを管理するためのツールを提供します。

特徴

  • 製品管理: 製品情報の検索と取得

  • 顧客管理: 顧客データを読み込み、顧客タグを管理する

  • 注文管理:高度な注文照会とフィルタリング

  • GraphQL 統合: Shopify の GraphQL 管理 API との直接統合

  • 包括的なエラー処理: APIおよび認証の問題に関する明確なエラーメッセージ

Related MCP server: Shopify MCP Server

前提条件

  1. Node.js (バージョン 16 以上)

  2. Shopifyカスタムアプリアクセストークン(以下の設定手順を参照)

設定

Shopifyアクセストークン

この MCP サーバーを使用するには、Shopify ストアでカスタム アプリを作成する必要があります。

  1. Shopify管理画面から、 「設定」 > **「アプリと販売チャネル」**に移動します。

  2. **「アプリを開発」**をクリックします(最初に開発者プレビューを有効にする必要がある場合があります)

  3. 「アプリを作成」をクリック

  4. アプリの名前を設定します(例:「Shopify MCP Server」)

  5. 管理APIスコープの設定をクリックします

  6. 次のスコープを選択します。

    • read_products 、 write_products

    • read_customers 、 write_customers

    • read_orders 、 write_orders

  7. 保存をクリック

  8. アプリをインストールをクリック

  9. インストールをクリックすると、アプリがストアデータにアクセスできるようになります

  10. インストール後、管理APIアクセストークンが表示されます。

  11. このトークンをコピーしてください - 設定に必要になります

Claude Desktopでの使用

これをclaude_desktop_config.jsonに追加します:

{
  "mcpServers": {
    "shopify": {
      "command": "npx",
      "args": [
        "shopify-mcp",
        "--accessToken",
        "<YOUR_ACCESS_TOKEN>",
        "--domain",
        "<YOUR_SHOP>.myshopify.com"
      ]
    }
  }
}

Claude Desktop 構成ファイルの場所:

  • MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%/Claude/claude_desktop_config.json

代替案: 環境変数を使ってローカルで実行する

コマンドライン引数の代わりに環境変数を使用する場合:

  1. Shopify の資格情報を使用して.envファイルを作成します。

    SHOPIFY_ACCESS_TOKEN=your_access_token
    MYSHOPIFY_DOMAIN=your-store.myshopify.com
  2. npx を使用してサーバーを実行します。

    npx shopify-mcp-server

直接インストール(オプション)

パッケージをグローバルにインストールする場合:

npm install -g shopify-mcp-server

次にそれを実行します:

shopify-mcp-server --accessToken=<YOUR_ACCESS_TOKEN> --domain=<YOUR_SHOP>.myshopify.com

利用可能なツール

製品管理

  1. get-products

    • すべての製品を取得するか、タイトルで検索してください

    • 入力:

      • searchTitle (オプションの文字列): タイトルで製品をフィルタリングします

      • limit (数値): 返される商品の最大数

  2. get-product-by-id

    • IDで特定の商品を取得する

    • 入力:

      • productId (文字列): 取得する製品のID

顧客管理

  1. get-customers

    • 顧客を獲得するか、名前/メールアドレスで検索する

    • 入力:

      • searchQuery (オプションの文字列):名前またはメールアドレスで顧客をフィルタリングします

      • limit (オプションの数値、デフォルト:10):返される顧客の最大数

  2. update-customer

    • 顧客情報を更新する

    • 入力:

      • id (文字列、必須): Shopify顧客ID(数値IDのみ、例: "6276879810626")

      • firstName (文字列、オプション): 顧客の名

      • lastName (文字列、オプション): 顧客の姓

      • email (文字列、オプション): 顧客のメールアドレス

      • phone (文字列、オプション): 顧客の電話番号

      • tags (文字列の配列、オプション): 顧客に適用するタグ

      • note (文字列、オプション): 顧客に関するメモ

      • taxExempt (ブール値、オプション):顧客が税金を免除されているかどうか

      • metafields (オブジェクトの配列、オプション):追加データを保存するための顧客メタフィールド

  3. get-customer-orders

    • 特定の顧客の注文を取得する

    • 入力:

      • customerId (文字列、必須): Shopify 顧客 ID (数値 ID のみ、例: "6276879810626")

      • limit (オプションの数値、デフォルト:10):返される注文の最大数

注文管理

  1. get-orders

    • オプションのフィルタリングで注文を取得する

    • 入力:

      • status (オプションの文字列): 注文ステータスでフィルタリング

      • limit (オプションの数値、デフォルト:10):返される注文の最大数

  2. get-order-by-id

    • IDで特定の注文を取得する

    • 入力:

      • orderId (文字列、必須): Shopifyの完全な注文ID(例:"gid://shopify/Order/6090960994370")

  3. update-order

    • 既存の注文を新しい情報で更新する

    • 入力:

      • id (文字列、必須): Shopify注文ID

      • tags (文字列の配列、オプション): 注文の新しいタグ

      • email (文字列、オプション): 顧客のメールアドレスを更新する

      • note (文字列、オプション): 注文メモ

      • customAttributes (オブジェクトの配列、オプション): 注文のカスタム属性

      • metafields (オブジェクトの配列、オプション):メタフィールドの順序

      • shippingAddress (オブジェクト、オプション): 配送先住所情報

デバッグ

問題が発生した場合は、Claude Desktop の MCP ログを確認してください。

tail -n 20 -f ~/Library/Logs/Claude/mcp*.log

ライセンス

マサチューセッツ工科大学

Available Tools

5 tools
get-customersD
ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
searchQueryNo

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get-ordersD
ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
statusNoany

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get-product-by-idD
ParametersJSON Schema
NameRequiredDescriptionDefault
productIdYes

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get-productsD
ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
searchTitleNo

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update-orderD
ParametersJSON Schema
NameRequiredDescriptionDefault
customAttributesNo
emailNo
idYes
metafieldsNo
noteNo
shippingAddressNo
tagsNo

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 5 tool updatesv1.0.0
    • First observedget-customers
    • First observedget-orders
    • First observedget-product-by-id
    • First observedget-products
    • First observedupdate-order

TDQS

D1.8/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a clearly distinct purpose targeting specific Shopify resources: customers, orders, products, and order updates. There is no overlap in functionality, making it easy for an agent to select the correct tool for each task without confusion.

Naming Consistency4/5

The naming follows a consistent verb-noun pattern with hyphens (e.g., get-customers, update-order), which is predictable and readable. The minor deviation is that 'get-product-by-id' includes a preposition, slightly breaking the pure verb-noun style, but overall the pattern is clear and mostly uniform.

Tool Count3/5

With 5 tools, the count is reasonable for a Shopify integration, but it feels borderline thin for covering the domain comprehensively. While core read operations are present, the scope might benefit from additional tools for full CRUD or lifecycle coverage, such as creating or deleting resources.

Completeness2/5

The tool set has significant gaps for a Shopify server, focusing heavily on read operations (get-customers, get-orders, get-products) with only one update tool (update-order). Missing are create and delete operations for customers, orders, and products, as well as other common actions like inventory management or webhook handling, which limits agent workflows and could lead to failures in broader tasks.

Maintenance

ActivityInactive
ResponsivenessUnresponsive

Related MCP Connectors

Related MCP Servers