Packrift MCP Server
OfficialPackrift MCP-Server
Produktions-MCP-Server (Model Context Protocol) für Packrift, einen Shopify-Shop für Verpackungsmaterial. Ermöglicht KI-Agenten das Durchsuchen des Katalogs, den Abruf von Live-Preisen und Lagerbeständen, die Empfehlung von Kartons für Artikel, die Schätzung von Versandkosten und die Erstellung von Checkout-URLs.
Stack: Cloudflare Workers, TypeScript (strict), Hono, Zod, Streamable HTTP-Transport
Basis: Shopify Admin GraphQL API (
2025-04), Storepackrift.myshopify.comEndpunkt:
POST /mcp,GET /mcp(SSE),GET /(Health-Check),GET /.well-known/mcp/server-card.json
Tools
Tool | Zweck |
| Stichwortsuche im gesamten Katalog. 5 Min. in KV zwischengespeichert. |
| Vollständige Produktdetails inkl. Varianten, Dimensions-Metafeldern, Gewicht. |
| Live-Einzelpreis + Zeilensumme. Niemals zwischengespeichert. |
| Live-Lagerbestand. Niemals zwischengespeichert. |
| Bis zu 5 bewertete Varianten-Vorschläge mit 0,5–2 Zoll Polsterung. |
| Frachtraten via Shopify |
| Erstellt |
Related MCP server: UPS MCP Server
Lokale Entwicklung
Installieren Sie Node 24+ und die Abhängigkeiten:
cd ~/Downloads/packrift-mcp-server
npm installLokale Geheimnisse — bereits in .dev.vars erstellt (gitignored):
SHOPIFY_PACKRIFT_TOKEN=shpat_...Starten Sie den Server:
npx wrangler dev --port 8787 --localTesten Sie den MCP-Endpunkt mit curl:
# initialize
curl -s -X POST http://127.0.0.1:8787/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"1"}}}'
# list tools
curl -s -X POST http://127.0.0.1:8787/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'
# search
curl -s -X POST http://127.0.0.1:8787/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"search_products","arguments":{"query":"poly mailer","limit":3}}}'Typ-Prüfung:
npx tsc --noEmitBereitstellung
Das Cloudflare-Konto wird in einem separaten Prozess erstellt. Sobald es bereit ist und wrangler angemeldet ist (wrangler login), führen Sie diese Befehle nacheinander aus:
cd ~/Downloads/packrift-mcp-server
# 1. Create the KV namespace and copy the printed id into wrangler.toml
# (replace both `id` and `preview_id` with the same value).
npx wrangler kv namespace create CATALOG_CACHE
# 2. Set the Shopify Admin token as a secret (paste shpat_... when prompted).
npx wrangler secret put SHOPIFY_PACKRIFT_TOKEN
# 3. Deploy. Initial deploy puts the worker on
# https://packrift-mcp.<account>.workers.dev
npx wrangler deploy
# 4. (Once mcp.packrift.com is CNAME'd to the worker) uncomment the [[routes]]
# block in wrangler.toml and redeploy.
npx wrangler deployNach der Bereitstellung lautet der MCP-Endpunkt https://packrift-mcp.<account>.workers.dev/mcp (und später https://mcp.packrift.com/mcp). Die Server-Card befindet sich unter /.well-known/mcp/server-card.json.
Design-Hinweise / Vorbehalte
cartCreateist eine Storefront-API-Mutation, keine Admin-Mutation. Die Anforderung verlangtecartCreate+cartBuyerIdentityUpdatefür Versandraten, aber diese existieren nicht in der Admin-GraphQL-API, die dieser Server verwendet. Der unterstützte Admin-Pfad istdraftOrderCalculate, welcher vonget_shipping_estimateverwendet wird. Er gibt dieselben Frachtratendaten zurück, ohne eine echte Bestellung zu erstellen.Dimensions-Parsing. Packrift-Produktdimensionen befinden sich in
custom.specN_value-Metafeldern, bei denen das zugehörigecustom.specN_name„Dimensions“ oder „Size“ lautet. Das Format ist menschenlesbar (12 1/8" L x 11 5/8" W x 2 5/8" H).src/dimensions.tsparst gemischte Brüche und greift auf das Scannen des Titels zurück.Empfehlungs-Kollektionen. Die Anforderung erwähnte die Kollektion
mailer-boxes– dieses Handle existiert im Live-Shop nicht. Wir verwendenmailers-envelopes,boxes-mailers,corrugated-boxes,bubble-wrap-foam,cushioningundecommerce-fulfillment(verifiziert viacollections-Abfrage vom 29.04.2026).Anwendungsfall-Mapping befindet sich in
src/tools/recommend_packaging.ts(COLLECTIONS_BY_USE_CASE).Versandraten-
handlein der Antwort ist eine lange, undurchsichtige JWT-ähnliche Zeichenfolge – so gibt Shopify Raten-Handles zurück; geben Sie diese bei Bedarf an nachfolgende Aufrufe weiter.Fehler: Tool-Ausnahmen werden gemäß MCP-Spezifikation als
{ content: [...], isError: true }zurückgegeben, nicht als JSON-RPC-3260x-Fehler. Fehler auf Protokollebene (unbekanntes Tool, fehlerhaftes JSON) geben JSON-RPC-Fehler zurück.
Dateistruktur
src/
index.ts Hono app + MCP JSON-RPC dispatcher
shopify.ts Admin GraphQL client + id helpers
dimensions.ts Spec-string -> structured dimensions
server-card.ts /.well-known card
tools/
search_products.ts
get_product.ts
get_pricing.ts
check_inventory.ts
recommend_packaging.ts
get_shipping_estimate.ts
create_cart_url.ts
wrangler.toml Worker config (KV binding, vars, route)
package.json
tsconfig.json
.dev.vars Local-only secrets (gitignored)This server cannot be deployed
Maintenance
Related MCP Connectors
Multi-carrier shipping for AI agents: compare rates, buy labels, track packages, validate addresses
Product search for AI agents: Amazon + Shopify, cart-to-checkout buy path. Pay-per-call, no API key.
Shopify MCP Pack — wraps the Shopify Admin REST API (2024-01)
Related MCP Servers
- FlicenseNot gradedqualityNot gradedmaintenanceA Shopify-focused MCP server that enables AI agents to manage store operations like order tracking, product discovery, and checkout link generation. It facilitates customer-facing interactions including shipping estimates and real-time inventory searches.-
- AlicenseAqualityDmaintenanceEnables AI agents to create shipments, track packages, get rates, validate addresses, schedule pickups, and find UPS locations via the UPS API.913 npm2MIT
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to query and interact with Shopify store data via the Storefront API, including products, collections, carts, and customer information.9-
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to buy US shipping labels (USPS, UPS, FedEx) with automatic cheapest-rate selection, track parcels, and refund unused labels via the EasyPost API. Stateless, bring-your-own API key, free test keys available.MIT