com. wearmu/ mu
by wearmu.com · remote · no sign-in to list tools · v1.2.0 · published by com.wearmu
Official AI-native print-on-demand MCP — say it, AI designs it, sell 40+ goods, earn royalties.
32 tools: 1 do something that can't be undone, 20 change things and 11 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone1Claude Code: ask: see these tools
- Changes things20Claude Code: ask: see these tools
- Only reads11Claude Code: allow: see these tools
1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http mu https://mcp.wearmu.com/mcpFindings
Matches of fixed checks, with the text they matched.
- Infomu_guest
The description mentions "credential".
What this check looks forMatched text
description: "...immediately. The guest key is the ONLY credential — it cannot be recovered if lost, so th..."
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
32 tools
Can't be undone 1Claude Code: ask
mu_guestThe fastest way to start on MU: one call returns a guest `api_key`, a ready-made store (store slug + store_url) and free mu_credits — no email, no verification code.1 finding
Why it is in this group
- The description says "cannot be recovered".
Findings
- Info
The description mentions "credential".
What this check looks forMatched text
description: "...immediately. The guest key is the ONLY credential — it cannot be recovered if lost, so th..."
Description, as the server wrote it The fastest way to start on MU: one call returns a guest `api_key`, a ready-made store (store slug + store_url) and free mu_credits — no email, no verification code. After this call, tell the user their api_key and have them reconnect with header `Authorization: Bearer <api_key>`; then mu_create_product works immediately. The guest key is the ONLY credential — it cannot be recovered if lost, so the user should save it, and can later bind an email (via mu_register with the same key) to make the account recoverable. No authentication required for this call.
Changes things 20Claude Code: ask
mu_checkAsk the MU requirements engine whether a planned make satisfies its requirements: product spec floor (required attributes per kind), legal/compliance flags (e.g.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Ask the MU requirements engine whether a planned make satisfies its requirements: product spec floor (required attributes per kind), legal/compliance flags (e.g. JP 家庭用品品質表示法 / 技適 / 食品衛生法), and supplier order terms (MOQ, accepted input format, material constraints). Pass `kind` (required) + optional `region` (e.g. jp), `supplier_id`, and either `spec` (a JSON string) or individual attributes (material/dimensions/colors/print_method/placement/qty/size_range/embroidery_spec). Returns { ok, kind, report: { ok, gaps[], actions[] } }. Read-only, no API key. Use before mu_create_product or mu_rfq_create.
mu_create_productCreate a product in one of your MU stores.No findings
Why it is in this group
- The name "mu_create_product" says "create": a word for a change.
Description, as the server wrote it Create a product in one of your MU stores. Provide the artwork EITHER as `design_url` (an absolute https URL to ready-made art) OR as `ai_prompt` (a text brief — MU generates the artwork for you and deducts the AI-gen cost from your mu_credits balance; see mu_status → limits.ai_gen for cost_jpy and whether it is enabled). Pass exactly one of the two. `kind` must be one of: tee, tee_white, rashguard_ls, rashguard_black, hoodie, crewneck, sticker, mug, tote, tank, cap, phone_case, long_sleeve_tee, shorts, beanie, leggings, joggers, apron, canvas, metal_print, pillow, blanket, coaster, placemat, journal, mug_black, wine_glass, towel, bottle, mouse_pad, laptop_sleeve, poster, nfc_coin, device, event_ticket, song, zine, video, karaoke_ticket, house, socks, drawstring_bag, beach_towel, fanny_pack, bucket_hat, kids_tee, backpack, flag, printful_custom. `phone_case` is an iPhone tough case (Printful) — the buyer picks their iPhone model (11〜17, all sizes) inside checkout, so you create ONE product and it ships to whichever model they choose. . Two digital kinds need an extra field: `event_ticket` (a sellable event ticket — pass `capacity` for the seat limit; on purchase the buyer is emailed a QR that opens a VALID ticket page; no shipping) and `song` (a sellable track — pass `audio_url`, the https link to the audio; on purchase the buyer is emailed a private listen/download link; no shipping). Other digital kinds (`zine` PDF, `video`, `karaoke_ticket`) and manual-fulfilment kinds (`poster`, `tee_white`, `nfc_coin`, `device`, `house`) all take the same `design_url`/`ai_prompt` artwork; the buyer gets a download/redemption link (digital) or the operator ships/builds it (manual). Products go live immediately for trusted owners unless the risk gate trips, otherwise they wait for MA-council review — ALWAYS report the `status` field from the response, do not assume. Requires `Authorization: Bearer <api_key>`.
mu_create_storeOpen a new MU store (a branded storefront) under your agent account.No findings
Why it is in this group
- The name "mu_create_store" says "create": a word for a change.
Description, as the server wrote it Open a new MU store (a branded storefront) under your agent account. Returns the store slug and public store_url. Requires `Authorization: Bearer <api_key>`.
mu_gi_logo_setUpdate one gi sponsor placement (by slot from mu_gi_logos) — swap its logo_url, set its status (ok|low|request|missing) and/or add a note (e.g.No findings
Why it is in this group
- The name "mu_gi_logo_set" says "set": a word for a change.
Description, as the server wrote it Update one gi sponsor placement (by slot from mu_gi_logos) — swap its logo_url, set its status (ok|low|request|missing) and/or add a note (e.g. where the vector was requested). Owner-only.
mu_gi_request_logosFor every gi sponsor whose consent is not yes, generate a ready-to-send draft asking for (1) written permission to embroider their mark on the gi and (2) the vector logo.No findings
Why it is in this group
- The name "mu_gi_request_logos" says "request": a word for a change.
Description, as the server wrote it For every gi sponsor whose consent is not yes, generate a ready-to-send draft asking for (1) written permission to embroider their mark on the gi and (2) the vector logo. Does NOT send (outbound mail is a human gate). When a brand grants permission, record it with mu_gi_logo_set consent:yes. Owner-only.
mu_order_advanceMove an order one step in the lifecycle: ordered→production→shipped→completed, or ordered→refund_pending (lot expiry / human judgment), refund_pending→refunded (human recorded refu…No findings
Why it is in this group
- The description's first verb is "move": a word for a change.
Description, as the server wrote it Move an order one step in the lifecycle: ordered→production→shipped→completed, or ordered→refund_pending (lot expiry / human judgment), refund_pending→refunded (human recorded refund). Backward/skipped transitions are rejected. Production is blocked while lot_lock=true until the lot fills.
mu_order_createOpen a purchase order (受注) from a received RFQ (pass `rfq_id`) or directly with `supplier_id`+`kind`.No findings
Why it is in this group
- The name "mu_order_create" says "create": a word for a change.
Description, as the server wrote it Open a purchase order (受注) from a received RFQ (pass `rfq_id`) or directly with `supplier_id`+`kind`. If the supplier's MOQ is unmet, the order is lot-locked (lot_lock=true) until the lot (same supplier+kind) fills. Fills are public: any agent can contribute to a lot. If the deadline (30d) passes before fill, the order flips to refund_pending and is listed as an auto-refund candidate (human executes the refund). Status flow: ordered → production → shipped → completed, with refund_pending → refunded. Orders are scoped to your account (admin sees all).
mu_quoteAsk the MU manufacturing router how a thing could be MADE before you create a product: which supplier(s) can make it, the est.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Ask the MU manufacturing router how a thing could be MADE before you create a product: which supplier(s) can make it, the est. unit price (JPY), MOQ, lead time, fulfillment route, and whether it ships auto (POD, zero-inventory, order now) or needs a quote (RFQ to a factory). Pass `kind` (a known POD kind like tee/hoodie/rashguard_ls, OR a non-POD kind like `gi`/`loopwheel_sweat`/`seamless_knit`/`rashguard_premium`) OR a free-text `description` (e.g. "道着 for a dojo", "a seamless knit sweater") and the router infers the kind. Optional `qty`, `region` (e.g. jp/us), `budget` (JPY/unit). Read-only — creates nothing. No API key required. Options are ranked: buyable-now (auto + in budget) first. If an option's mode is `auto`, follow up with mu_create_product; if `quote`, it needs a human RFQ.
mu_registerStart MU agent registration.No findings
Why it is in this group
- The description's first verb is "start": a word for a change.
Description, as the server wrote it Start MU agent registration. Emails a 6-digit verification code to the address. After receiving the code, call mu_verify with {email, code} to obtain your api_key. No authentication required for this call.
mu_retire_productRetire one of your products (sets status=retired, removes it from the storefront).No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Retire one of your products (sets status=retired, removes it from the storefront). Owner-only. Requires `Authorization: Bearer <api_key>`.
mu_rfq_createOpen a quote request (RFQ) to a non-POD supplier (gi/loopwheel/seamless-knit/premium AOP).No findings
Why it is in this group
- The name "mu_rfq_create" says "create": a word for a change.
Description, as the server wrote it Open a quote request (RFQ) to a non-POD supplier (gi/loopwheel/seamless-knit/premium AOP). Generates a ready-to-send draft (subject/body) and saves it status='drafted'. Does NOT send — outbound mail/PO is a human gate. Pass `supplier_id` OR `kind`/`description` (the router resolves a quote-mode supplier), `qty`, and optionally `spec_id` (from mu_spec_draft), `product_ref`, `spec_pack_url`, `note`. RFQs are scoped to your account (admin sees all).
mu_rfq_recordAfter a factory replies, record the quote against an RFQ: set `status` (sent/received/expired) and, for received, `quoted_unit_jpy` (required) plus `moq`, `lead_time_days`, `valid_…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it After a factory replies, record the quote against an RFQ: set `status` (sent/received/expired) and, for received, `quoted_unit_jpy` (required) plus `moq`, `lead_time_days`, `valid_until` (ISO date). A received, still-valid quote is reflected back into mu_quote's est_unit_jpy (display only). RFQs are scoped to your account (admin sees all).
mu_ship_csvGenerate a 送り状 CSV for all un-shipped orders, formatted for import into ヤマト B2クラウド (courier=yamato) or 佐川 e飛伝 (courier=sagawa).No findings
Why it is in this group
- The description's first verb is "generate": a word for a change.
Description, as the server wrote it Generate a 送り状 CSV for all un-shipped orders, formatted for import into ヤマト B2クラウド (courier=yamato) or 佐川 e飛伝 (courier=sagawa). No carrier API/contract needed — import the CSV to request pickup. Returns {filename, csv_utf8 (for reading), csv_shift_jis_base64 (decode this for the actual import — B2クラウド/e飛伝 expect Shift_JIS)}. First time, register the column layout in B2クラウド. Owner-only.
mu_ship_import_trackingPaste the CSV that B2クラウド / e飛伝 produced AFTER issuing labels (it contains your お客様管理番号 MU-{id} plus the assigned 送り状番号).No findings
Why it is in this group
- The name "mu_ship_import_tracking" says "import": a word for a change.
Description, as the server wrote it Paste the CSV that B2クラウド / e飛伝 produced AFTER issuing labels (it contains your お客様管理番号 MU-{id} plus the assigned 送り状番号). Matches each MU-{id} to the order and sets tracking + marks it shipped, in bulk. The natural counterpart to mu_ship_csv. Owner-only.
mu_ship_markAdvance a physical order's ship_status and (when shipping) record the courier + tracking number.No findings
Why it is in this group
- The name "mu_ship_mark" says "mark": a word for a change.
Description, as the server wrote it Advance a physical order's ship_status and (when shipping) record the courier + tracking number. Owner-only. status must be one of pending|in_production|shipped|delivered.
mu_spec_draftTurn a natural-language request into a structured manufacturing spec (kind, material, dimensions, colors, print_method, placement, qty, region).No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Turn a natural-language request into a structured manufacturing spec (kind, material, dimensions, colors, print_method, placement, qty, region). Missing required attributes come back as `missing` with a follow-up `next_question` to fill them in. Feed the resulting spec_id into mu_rfq_create. Requires an API key (register/verify first) — uses a small amount of AI budget per call.
mu_submit_feedbackFound a bug, or have an idea to make MU better?No findings
Why it is in this group
- The name "mu_submit_feedback" says "submit": a word for a change.
Description, as the server wrote it Found a bug, or have an idea to make MU better? File it here. Use this when something on the platform/API misbehaves, a product looks wrong, or you want to request a feature. It lands in the MA-council triage queue. Requires `Authorization: Bearer <api_key>`.
mu_update_productUpdate one of your products.No findings
Why it is in this group
- The name "mu_update_product" says "update": a word for a change.
Description, as the server wrote it Update one of your products. Allowed ONLY while the product is in 'review' or 'retired' (never a live product). You may change label, description, price_jpy (clamped up to the kind's floor), design_url and position (print placement; re-renders the mockup). Printful ids can never change. Owner-only. Requires `Authorization: Bearer <api_key>`.
mu_upload_designUpload a PNG design (base64-encoded, <=3MB decoded) and receive a durable https url.No findings
Why it is in this group
- The name "mu_upload_design" says "upload": a word for a change.
Description, as the server wrote it Upload a PNG design (base64-encoded, <=3MB decoded) and receive a durable https url. Pass that url as `design_url` to mu_create_product. Requires `Authorization: Bearer <api_key>`.
mu_verifyVerify the 6-digit code emailed by mu_register and receive your permanent api_key.No findings
Why it is in this group
- The input takes a statement or command to run (input.code), which can change anything it can reach.
Description, as the server wrote it Verify the 6-digit code emailed by mu_register and receive your permanent api_key. Use that key as `Authorization: Bearer <api_key>` on all subsequent MU tool calls. No authentication required for this call.
Only reads 11Claude Code: allow
mu_affiliateGet your personal MU affiliate (referral) link + stats.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 your personal MU affiliate (referral) link + stats. Share the `link`; when someone buys any MU product within 30 days of clicking it, you earn a commission as MU store credit (default 10% of the sale). You can also append the returned `ref_param` to any product URL. Returns clicks, sales (uses), earned_jpy and your mu_credit_balance. Requires `Authorization: Bearer <api_key>`.
mu_gi_logosList the MU × JiuFlow sponsored gi's 17 sponsor placements with each logo's slot, brand, position, finished size, thread color, logo file/url, status (ok=hi-res | low=low-res | req…No findings
Why it is in this group
- The description's first verb is "list": a word for reading.
Description, as the server wrote it List the MU × JiuFlow sponsored gi's 17 sponsor placements with each logo's slot, brand, position, finished size, thread color, logo file/url, status (ok=hi-res | low=low-res | request=not collected | missing), and consent (yes=written permission to embroider on apparel | requested | no). ready_to_print is true ONLY when status=ok AND consent=yes — anything else must NOT be sent to ISAMI (using a brand's mark without permission is trademark misuse). Owner-only.
mu_gi_techpackReturn the MU × JiuFlow gi's public page and lifestyle/mockup image URLs (front/back/crest/QR).No findings
Why it is in this group
- The description's first verb is "return": a word for reading.
Description, as the server wrote it Return the MU × JiuFlow gi's public page and lifestyle/mockup image URLs (front/back/crest/QR). The dimensioned tech-pack PDF lives in the repo (docs/gi-isami-2026-05-12/). Owner-only.
mu_list_mineList every product you have created across your MU stores: sku, store, label, kind, retail_price_jpy, status (review/live/retired/…), design_file and pdp_url.No findings
Why it is in this group
- The name "mu_list_mine" says "list": a word for reading.
Description, as the server wrote it List every product you have created across your MU stores: sku, store, label, kind, retail_price_jpy, status (review/live/retired/…), design_file and pdp_url. Requires `Authorization: Bearer <api_key>`.
mu_order_statusList purchase orders with optional filters by `supplier_id`, `status`, and `refund=1` to show only auto-refund candidates (refund_pending).No findings
Why it is in this group
- The name "mu_order_status" says "status": a word for reading.
Description, as the server wrote it List purchase orders with optional filters by `supplier_id`, `status`, and `refund=1` to show only auto-refund candidates (refund_pending). Orders are scoped to your account (admin sees all).
mu_preview_mockupSee the mockup BEFORE creating any product — nothing is created or sold, and it costs no credits.No findings
Why it is in this group
- The name "mu_preview_mockup" says "preview": a word for reading.
Description, as the server wrote it See the mockup BEFORE creating any product — nothing is created or sold, and it costs no credits. Renders the design on the real garment (Printful) when the kind supports it (source: "printful"), otherwise a clean MU product card (source: "card"), and returns a durable preview image URL. Optionally pass `position` (front-print DTG apparel only: tee / tee_white / hoodie / crewneck / tank / long_sleeve_tee) to preview a custom print placement — passing the SAME position to mu_create_product prints exactly what you previewed (WYSIWYG). Usually answers in 10-45s; if it returns status="processing", call this tool again with the returned `preview_id` to keep waiting. Rate limit: 30 previews/hour. Requires `Authorization: Bearer <api_key>`.
mu_rfq_listList quote requests (RFQs) with optional filters by `supplier_id`, `kind`, `status` (drafted/sent/received/expired).No findings
Why it is in this group
- The name "mu_rfq_list" says "list": a word for reading.
Description, as the server wrote it List quote requests (RFQs) with optional filters by `supplier_id`, `kind`, `status` (drafted/sent/received/expired). RFQs are scoped to your account (admin sees all).
mu_salesGet sales for your MU stores: per-store and total order_count + revenue_jpy, plus the 50 most recent orders (sku, amount_jpy, created_at, status).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 sales for your MU stores: per-store and total order_count + revenue_jpy, plus the 50 most recent orders (sku, amount_jpy, created_at, status). Requires `Authorization: Bearer <api_key>`.
mu_ship_orderFetch a single physical order by id with its status, courier and tracking.No findings
Why it is in this group
- The description's first verb is "fetch": a word for reading.
Description, as the server wrote it Fetch a single physical order by id with its status, courier and tracking. Address/phone are masked unless reveal=true. Owner-only.
mu_ship_ordersList physical (address-bearing) orders for the factory shipping console with their ship_status (pending|in_production|shipped|delivered), courier and tracking.No findings
Why it is in this group
- The description's first verb is "list": a word for reading.
Description, as the server wrote it List physical (address-bearing) orders for the factory shipping console with their ship_status (pending|in_production|shipped|delivered), courier and tracking. Owner-only: requires the store owner's `Authorization: Bearer <api_key>` (403 otherwise).
mu_statusGet the authenticated agent's profile: email, mu_credits_balance, MA-council flag, their stores, and limits (allowed product kinds with price floors + per-hour caps).No findings
Why it is in this group
- The name "mu_status" says "status": a word for reading.
Description, as the server wrote it Get the authenticated agent's profile: email, mu_credits_balance, MA-council flag, their stores, and limits (allowed product kinds with price floors + per-hour caps). Requires `Authorization: Bearer <api_key>`.
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.2.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http mu https://mcp.wearmu.com/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__mu__mu_status",
"mcp__mu__mu_rfq_list",
"mcp__mu__mu_order_status",
"mcp__mu__mu_preview_mockup",
"mcp__mu__mu_affiliate",
"mcp__mu__mu_list_mine",
"mcp__mu__mu_sales",
"mcp__mu__mu_ship_orders",
"mcp__mu__mu_gi_logos",
"mcp__mu__mu_ship_order",
"mcp__mu__mu_gi_techpack"
],
"ask": [
"mcp__mu__mu_guest",
"mcp__mu__mu_register",
"mcp__mu__mu_verify",
"mcp__mu__mu_quote",
"mcp__mu__mu_check",
"mcp__mu__mu_spec_draft",
"mcp__mu__mu_rfq_create",
"mcp__mu__mu_rfq_record",
"mcp__mu__mu_order_create",
"mcp__mu__mu_order_advance",
"mcp__mu__mu_create_store",
"mcp__mu__mu_create_product",
"mcp__mu__mu_upload_design",
"mcp__mu__mu_retire_product",
"mcp__mu__mu_update_product",
"mcp__mu__mu_submit_feedback",
"mcp__mu__mu_ship_mark",
"mcp__mu__mu_ship_csv",
"mcp__mu__mu_gi_logo_set",
"mcp__mu__mu_ship_import_tracking",
"mcp__mu__mu_gi_request_logos"
],
"deny": []
}
}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 mu. Review it before you use it.