Printful MCP server

Browse the Printful catalog, orders, shipping quotes and stats, and create draft orders and mockups. Hosted by usefulapi — connect from Claude, Cursor, or any MCP client.

Claude

  1. Open Settings → Connectors → Add custom connector
  2. Paste this URL:
    https://printful.usefulapi.io/mcp
  3. Authenticate with Printful when prompted

Cursor · VS Code · Windsurf · Cline

Add to your MCP config, then reload & authorize:

{
  "mcpServers": {
    "printful": {
      "url": "https://printful.usefulapi.io/mcp"
    }
  }
}
live22 toolsFree 100 tool calls / monthPro $9/mo · $90/yr

Tools 22

ToolTypeWhat it does
printful_list_storesread
List stores
List the stores this token can reach (id, name, platform type). A cheap way to confirm the token works, and where to find the store_id an ACCOUNT-level token needs. Printful: GET /stores.
printful_list_catalog_categoriesread
List catalog categories
List Printful's catalog categories (T-shirts, Mugs, Posters…) with their ids and parent ids — the filter for printful_list_catalog_products. Printful: GET /categories.
printful_list_catalog_productsread
List catalog products
List the blank products Printful can print on (id, title, brand, model, variant count, print-file placements), optionally filtered by category. Printful: GET /products.
printful_get_catalog_productread
Get a catalog product
Fetch one catalog product with ALL its variants (size, color, variant_id, price, stock). Use the variant_id values when quoting shipping or building an order. Printful: GET /products/{id}.
printful_get_catalog_variantread
Get a catalog variant
Fetch one catalog variant and its parent product. Printful: GET /products/variant/{id}.
printful_list_store_productsread
List store products (Manual/API store)
List the Sync Products in a Manual-order / API store. For a Shopify, Etsy, WooCommerce or other integrated store use printful_list_sync_products instead. Printful: GET /store/products.
printful_get_store_productread
Get a store product
Fetch one Sync Product with all its Sync Variants — catalog variant, print files, retail price. Works for any store type. Printful: GET /store/products/{id}.
printful_list_sync_productsread
List synced products (integrated store)
List the products Printful has imported from an integrated store (Shopify, Etsy, WooCommerce…), with how many variants are synced. Filter by status=unsynced to find products that still need a design or catalog variant. Printful: GET /sync/products.
printful_list_ordersread
List orders
List the store's orders, newest first, optionally by status (draft, pending, failed, canceled, inprocess, onhold, partial, fulfilled, archived). Printful: GET /orders.
printful_get_orderread
Get an order
Fetch one order: status, recipient, items, costs, and shipments with carrier and tracking links — the answer to 'where is my order?'. Printful: GET /orders/{id}.
printful_calculate_shipping_ratesread
Calculate shipping rates
Quote the shipping options (method id, name, rate, delivery-day estimate) for a set of items to an address. Only country_code is required (plus state_code for US/CA/AU). Changes nothing. Printful: POST /shipping/rates.
printful_estimate_order_costsread
Estimate order costs
Price an order WITHOUT creating it: item, print, shipping and tax costs, plus retail totals. Same item shape as printful_create_draft_order. Changes nothing. Printful: POST /orders/estimate-costs.
printful_get_fileread
Get a file
Fetch one File Library entry — processing status (ok / waiting / failed), dimensions, DPI and preview URLs. Poll this after printful_add_file. Printful: GET /files/{id}.
printful_get_printfilesread
Get printfile specs for a product
List the print areas (placements) and required print-file pixel sizes/DPI for each variant of a catalog product — what a design must match before mockups or orders. DTG is assumed unless technique is given. Printful: GET /mockup-generator/printfiles/{id}.
printful_get_mockup_taskread
Get a mockup task result
Check a mockup-generation task: status (pending / completed / failed) and, when done, the mockup image URLs per placement and variant. Printful: GET /mockup-generator/task.
printful_get_statisticsread
Get store statistics
Sales, costs, profit and order-count reports for a period of at most 6 months. Printful: GET /reports/statistics.
printful_create_draft_orderwrite
Create a draft order
Create an order as a DRAFT — nothing is charged or produced. It must be confirmed later in the Printful dashboard, where the charge is shown. Each item needs one of variant_id (+ files), sync_variant_id, external_variant_id, warehouse_product_variant_id or product_template_id (+ variant_id). Printful: POST /orders (never with confirm).
printful_update_draft_orderwrite
Update a draft order
Change a DRAFT order (unsubmitted orders only) — send only the fields to change. CAUTION: if you send `items`, it replaces the list: existing items not included (by id or external_id) are removed. The order stays a draft; nothing is charged. Printful: PUT /orders/{id} (never with confirm).
printful_add_filewrite
Add a file to the File Library
Add a print file to the File Library from a public URL (PNG/JPG recommended). If a file with the same URL already exists it is returned instead. Processing is async — poll printful_get_file until status is ok. Printful: POST /files.
printful_create_mockup_taskwrite
Create a mockup generation task
Start generating product mockups for a design on a catalog product — returns a task_key; poll printful_get_mockup_task for the images. Heavily rate-limited (about 10/min for established stores, 2/min for new ones). Printful: POST /mockup-generator/create-task/{id}.
printful_usage_statusmeta
Usage status (free-tier meter)
Report the caller's current free-tier usage this month: calls used, monthly limit, remaining, and whether the cap is reached. Read-only; does not count against the meter.
printful_upgrademeta
Upgrade to Pro (unlimited)
Subscribe to the Pro plan for UNLIMITED Printful tool calls (the free tier caps monthly usage). Choose monthly ($9/month) or yearly ($90/year — 2 months free) billing. Returns a Stripe Checkout link to open in your browser; after payment your account upgrades automatically. Read-only; does not count against the meter.

Pricing

PlanPriceLimit
Free$0100 tool calls / month
Proper user$9/mo · $90/yrUnlimited

This is a Model Context Protocol endpoint — meant to be connected from an AI client, not opened in a browser. An invalid_token response at the URL is the auth gate working as designed; clients authenticate automatically.

More Commerce & Memberships MCP servers

BettermodeBloomerangBooqableBreeze ChMSEcwidElvantoEventbriteFoxy.ioGumroadHumanitixLearnWorldsLittle Green LightLoyverseMemberfulNeon CRMOwnerRezPrintifyRaiselyRechargeSmile.ioSwellTeamUpTitoUnleashed SoftwareVirtuousWild Apricot

All Commerce & Memberships servers →