Skip to content

Printify MCP by usefulapi

by usefulapi.io · remote · no sign-in to list tools · v1.16.3 · published by io.usefulapi

Read shops, catalog blueprints, print providers, products and orders; create and publish products.

Deletes · 1

14 tools: 1 can delete or cancel things and 13 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http printify https://printify.usefulapi.io/mcp

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

14 tools

Deletes or cancels 1Claude Code: deny
  • printify_publish_productPublish a product to the shop's connected sales channel (e.g.No findings

    Why it is in this group

    • The name "printify_publish_product" says "publish": a word for a change that another call does not undo.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Publish a product to the shop's connected sales channel (e.g. Shopify, Etsy). STATE-CHANGING: this locks the product and pushes the selected fields to the external store. The body is an object of booleans controlling which fields are published; all default to true. Printify REST: POST /v1/shops/{shop_id}/products/{product_id}/publish.json.

    Annotations the server declares

    • title: Publish product
    • destructiveHint: true
Only reads 13Claude Code: allow
  • printify_calculate_shippingGet a shipping price quote for a set of line items to a destination address.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a shipping price quote for a set of line items to a destination address. Non-destructive — it only prices, it does NOT place an order. `line_items` is an array where each item is one of {product_id, variant_id, quantity}, {print_provider_id, blueprint_id, variant_id, quantity}, or {sku, quantity}. `address_to` is the destination (first_name, last_name, email, phone, country, region, address1, address2, city, zip, company). Printify REST: POST /v1/shops/{shop_id}/orders/shipping.json.

    Annotations the server declares

    • title: Calculate shipping
    • readOnlyHint: true
  • printify_get_blueprintGet a single catalog blueprint's details.No findings

    Why it is in this group

    • The name "printify_get_blueprint" says "get": a word for reading.
    Description, as the server wrote it
    Get a single catalog blueprint's details. Printify REST: GET /v1/catalog/blueprints/{blueprint_id}.json.

    Annotations the server declares

    • title: Get blueprint
    • readOnlyHint: true
  • printify_get_orderGet a single order's full details, including `shipments` (carrier + tracking numbers).No findings

    Why it is in this group

    • The name "printify_get_order" says "get": a word for reading.
    Description, as the server wrote it
    Get a single order's full details, including `shipments` (carrier + tracking numbers). Printify REST: GET /v1/shops/{shop_id}/orders/{order_id}.json.

    Annotations the server declares

    • title: Get order
    • readOnlyHint: true
  • printify_get_print_providersList the print providers that can produce a given blueprint.No findings

    Why it is in this group

    • The name "printify_get_print_providers" says "get": a word for reading.
    Description, as the server wrote it
    List the print providers that can produce a given blueprint. Printify REST: GET /v1/catalog/blueprints/{blueprint_id}/print_providers.json.

    Annotations the server declares

    • title: Get blueprint print providers
    • readOnlyHint: true
  • printify_get_productGet a single product's full details (variants, images, print areas, publish status).No findings

    Why it is in this group

    • The name "printify_get_product" says "get": a word for reading.
    Description, as the server wrote it
    Get a single product's full details (variants, images, print areas, publish status). Printify REST: GET /v1/shops/{shop_id}/products/{product_id}.json.

    Annotations the server declares

    • title: Get product
    • readOnlyHint: true
  • printify_get_variantsList the variants (sizes, colors) a print provider offers for a blueprint.No findings

    Why it is in this group

    • The name "printify_get_variants" says "get": a word for reading.
    Description, as the server wrote it
    List the variants (sizes, colors) a print provider offers for a blueprint. Printify REST: GET /v1/catalog/blueprints/{blueprint_id}/print_providers/{print_provider_id}/variants.json.

    Annotations the server declares

    • title: Get variants
    • readOnlyHint: true
  • printify_list_catalog_blueprintsList all blueprints (product types, e.g.No findings

    Why it is in this group

    • The name "printify_list_catalog_blueprints" says "list": a word for reading.
    Description, as the server wrote it
    List all blueprints (product types, e.g. 'Unisex T-Shirt') available in the Printify catalog. Printify REST: GET /v1/catalog/blueprints.json.

    Annotations the server declares

    • title: List catalog blueprints
    • readOnlyHint: true
  • printify_list_ordersList orders in a shop (paginated), optionally filtered by status or SKU.No findings

    Why it is in this group

    • The name "printify_list_orders" says "list": a word for reading.
    Description, as the server wrote it
    List orders in a shop (paginated), optionally filtered by status or SKU. Printify REST: GET /v1/shops/{shop_id}/orders.json.

    Annotations the server declares

    • title: List orders
    • readOnlyHint: true
  • printify_list_print_providersList all print providers in the Printify catalog.No findings

    Why it is in this group

    • The name "printify_list_print_providers" says "list": a word for reading.
    Description, as the server wrote it
    List all print providers in the Printify catalog. Printify REST: GET /v1/catalog/print_providers.json.

    Annotations the server declares

    • title: List print providers
    • readOnlyHint: true
  • printify_list_productsList products in a shop (paginated).No findings

    Why it is in this group

    • The name "printify_list_products" says "list": a word for reading.
    Description, as the server wrote it
    List products in a shop (paginated). Printify REST: GET /v1/shops/{shop_id}/products.json.

    Annotations the server declares

    • title: List products
    • readOnlyHint: true
  • printify_list_shopsList all shops connected to the Printify account.No findings

    Why it is in this group

    • The name "printify_list_shops" says "list": a word for reading.
    Description, as the server wrote it
    List all shops connected to the Printify account. This is the entry point — each shop's `id` is required by the product, order and webhook tools. Printify REST: GET /v1/shops.json.

    Annotations the server declares

    • title: List shops
    • readOnlyHint: true
  • printify_list_uploadsList images uploaded to the account's media library (paginated).No findings

    Why it is in this group

    • The name "printify_list_uploads" says "list": a word for reading.
    Description, as the server wrote it
    List images uploaded to the account's media library (paginated). Printify REST: GET /v1/uploads.json.

    Annotations the server declares

    • title: List uploads
    • readOnlyHint: true
  • printify_list_webhooksList the webhooks configured for a shop.No findings

    Why it is in this group

    • The name "printify_list_webhooks" says "list": a word for reading.
    Description, as the server wrote it
    List the webhooks configured for a shop. Printify REST: GET /v1/shops/{shop_id}/webhooks.json.

    Annotations the server declares

    • title: List webhooks
    • readOnlyHint: true

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.16.3. Values in angle brackets are yours to fill in.

claude mcp add --transport http printify https://printify.usefulapi.io/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__printify__printify_list_shops",
      "mcp__printify__printify_list_products",
      "mcp__printify__printify_get_product",
      "mcp__printify__printify_list_orders",
      "mcp__printify__printify_get_order",
      "mcp__printify__printify_calculate_shipping",
      "mcp__printify__printify_list_catalog_blueprints",
      "mcp__printify__printify_get_blueprint",
      "mcp__printify__printify_get_print_providers",
      "mcp__printify__printify_get_variants",
      "mcp__printify__printify_list_print_providers",
      "mcp__printify__printify_list_webhooks",
      "mcp__printify__printify_list_uploads"
    ],
    "ask": [],
    "deny": [
      "mcp__printify__printify_publish_product"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as printify. Review it before you use it.