Skip to content
Agentmart
Submit a tool

shopify-operations-mcp

Safe-write Shopify operations: plan-before-execute writes with out-of-band approval and audit.

Connector by jpka · GitHub account verified by the MCP Registry

IndexedMITLocal (stdio)
Write a review

Install

Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.

npx agentmarket install connector/jpka-shopify-operations-mcp

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Safe-write Shopify operations: plan-before-execute writes with out-of-band approval and audit.

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this server can do and what it asks for, from its tool list and install config. Checked Oct 25, 2026.

Tools
2 read · 6 write · 1 delete
Secrets
1 (API keys, tokens or passwords)
Install scripts
Not scanned yet
Runs as
Node.js package

Tools by what they do 9

Read from the source code; the running server may list different tools.

Read 2 · Look things up without changing anything.

  • list_orders
  • search_products

Write 6 · Create, change, send or run things.

  • cancel_order
  • create_discount
  • execute_plan
  • refund_order
  • update_inventory
  • update_prices

Delete 1 · Delete, drop, revoke or wipe things.

  • rollback_plan

Secrets and settings it asks for

Secrets: values you paste in that let it act as you.

  • SHOPIFY_ADMIN_TOKEN

Other settings (environment variables or headers).

  • SHOPIFY_APPROVAL_SERVER_PORT
  • SHOPIFY_AUDIT_PATH
  • SHOPIFY_CALLER_ID
  • SHOPIFY_CONFIG
  • SHOPIFY_PLAN_TTL_MS
  • SHOPIFY_PROTECTED_TAGS
  • SHOPIFY_STORE_DOMAIN

Tools (9)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • cancel_order

    Preview and execute order cancellation (two-phase). Cancellation is permanent — an order cannot be uncancelled — so every cancel plan ALWAYS requires human approval through the localhost approval UI, regardless of item count, and cancel_order can never be rolled back. The preview is a zero-write call that returns the refund implication and flags the human sees before granting or denying; execute applies the cancellation with the supplied restock and notifyCustomer flags.

  • create_discount

    Preview and execute the creation of a discount code (two-phase). Previews the planned discount (pure reads, zero mutation) and returns a plan_token; nothing changes until execute_plan runs with that token. A plan touching at least plans.approvalRequiredAboveItems items requires human approval through the localhost approval UI before it executes. Discount creation is reversible via rollback_plan, which deactivates the created code.

  • execute_plan

    Execute a previously previewed write (update_prices, update_inventory, create_discount, refund_order, or cancel_order). Pass back the exact plan_token and the exact manifest from the preview response. The token is single-use, expires, and refuses any manifest that does not fingerprint-match the preview; write plans also refuse when the current data drifted since the preview (STATE_CHANGED). Plans awaiting approval wait until a human approves or rejects them through the out-of-band localhost approval UI (never through this MCP tool set): an approval lets the plan execute, a rejection returns a …

  • list_orders

    List cancellable and refundable orders (id, name, financial and fulfillment status, total price, line items), optionally filtered by financial status, fulfillment status, and created-date range. Read-only: a single GraphQL query over the orders connection with no mutation.

  • refund_order

    Preview and execute an order refund (two-phase). Previews via Shopify's refundCalculate (zero writes) to obtain exact suggested refund amounts, then — only after a human approves through the localhost approval UI — executes via refundCreate. ALWAYS requires human approval regardless of item count, because a refund is irreversible and unwinds a payment. Refunds cannot be rolled back (refund_order is not among rollback_plan's supported kinds).

  • rollback_plan

    Undo a previously executed reversible plan (update_prices, update_inventory, or create_discount) in one call: restores each item to its previewed before-state by re-applying inverse mutations. Requires no approval — restoring prior state is the safe direction. Refused with ROLLBACK_UNSUPPORTED for non-reversible kinds (cancel_order, refund_order) or unknown tokens, and ROLLBACK_WINDOW_EXPIRED once the rollback window (plans.rollbackTtlMs, default 24 hours) has passed.

  • search_products

    Search products by title, sku, vendor, or tag and return variant pricing and per-location inventory references. Read-only: composes a Shopify search string, walks the cursor-paginated products connection to completion, and flags any product carrying a configured protected tag so a later write plan touching it is refused at preview time.

  • update_inventory

    Preview and execute bulk inventory quantity changes at one location (two-phase). Sets the available quantity of each inventory item at the location to the absolute value supplied (not a delta). Previews planned changes (pure reads, zero mutation) and returns a plan_token; nothing changes until execute_plan runs with that token. A plan touching at least plans.approvalRequiredAboveItems items requires human approval through the localhost approval UI before it executes. Inventory items belonging to a product carrying a protected tag are refused at preview time.

  • update_prices

    Preview and execute bulk variant price changes (two-phase). Previews the exact price change for every matched variant (pure reads, zero mutation) and returns a plan_token; nothing changes until execute_plan runs with that token. A plan that changes any single variant's price by more than plans.maxPriceChangePct (default 30%), or that touches at least plans.approvalRequiredAboveItems variants, requires human approval through the localhost approval UI before it executes. Variants belonging to a product carrying a protected tag are refused at preview time.

Signals

Stars
0
Forks
0
Open issues
2
Last commit
Sep 4, 2026 (1 month ago)
Last release
Aug 17, 2026 (2 months ago)

From GitHub (fetched Oct 24, 2026).

Details

Registry name
io.github.jpka/shopify-operations-mcp
Version
0.1.2
Auth
API key
License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from jpka

Cite this page

shopify-operations-mcp. Agent Mart. https://agentmart.dev/connectors/jpka-shopify-operations-mcp (last updated 2026-10-24)