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.
14 tools: 1 can delete or cancel things and 13 only read.
Scanned Oct 21, 2026
- Deletes or cancels1Claude Code: deny: see these tools
- Can't be undone0Claude Code: ask
- Changes things0Claude Code: ask
- Only reads13Claude Code: allow: see these tools
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/mcpTools
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/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .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.