Run a custom-merch store from an agent: design, build products, list on every channel, fulfill.
Inferred from the transports this listing declares (stdio, streamable-http). A client not listed here hasn’t been ruled out — it just isn’t something Forge can confirm.
APPARELHUB_API_KEYAPI keyrequiredApparelHub Agent API key (create one at https://apparelhub.ai/developer/api-keys)
Declared by the author in the official MCP registry. Forge does not store, broker, or ever see these values — the config below is scaffolded with placeholders you fill in locally.
Verification confirms publisher identity (repo ownership), not code safety. The security scan covers known CVEs and suspicious install scripts.
Read out of the source npm actually ships, at scan time. The package was never executed. Tools registered dynamically at runtime, or hidden inside bundled or minified code, can be missed — so this is a floor on the tool surface, not a complete census of it.
analytics_summaryHeadline order/merch KPIs for a date range (gross revenue, orders, units, AOV, COGS,Headline order/merch KPIs for a date range (gross revenue, orders, units, AOV, COGS,
No input schema was published for this tool.
analytics_timeseriesKPI trend series over a date range, bucketed by day, week, or month (zero-filled). EachKPI trend series over a date range, bucketed by day, week, or month (zero-filled). Each
No input schema was published for this tool.
analytics_breakdownAggregate KPIs broken down by one dimension: product_type, sales_channel,Aggregate KPIs broken down by one dimension: product_type, sales_channel,
No input schema was published for this tool.
analytics_opsOperational health for a date range: fulfillment velocity (payment→submit→ship→deliverOperational health for a date range: fulfillment velocity (payment→submit→ship→deliver
No input schema was published for this tool.
analytics_portfolioCross-client portfolio: per-workspace (per-client) KPIs plus rolled-up totals — theCross-client portfolio: per-workspace (per-client) KPIs plus rolled-up totals — the
No input schema was published for this tool.
get_api_referenceDiscover the full ApparelHub agent API: returns a compact index of everyDiscover the full ApparelHub agent API: returns a compact index of every
No input schema was published for this tool.
api_requestEscape hatch: make an authenticated request to any ApparelHub agent APIEscape hatch: make an authenticated request to any ApparelHub agent API
No input schema was published for this tool.
browse_catalogNo description publishedThis tool published no description. Forge does not invent one.
get_garment_detailsFull detail for one garment: the variant matrix (colors/sizes/costs), print templates, ApparelHub pricing floor, and quality tier. Read-only.Full detail for one garment: the variant matrix (colors/sizes/costs), print templates, ApparelHub pricing floor, and quality tier. Read-only.
No input schema was published for this tool.
find_garmentsNo description publishedThis tool published no description. Forge does not invent one.
recommend_garmentRecommend a garment type for a design/use-case, encoding ApparelHub's garment trade-offs (BC 3001 vs Comfort Colors, budget vs premium, pricing floors). Returns a pick + rationale + alternatives. Advisory / knowledge-based.Recommend a garment type for a design/use-case, encoding ApparelHub's garment trade-offs (BC 3001 vs Comfort Colors, budget vs premium, pricing floors). Returns a pick + rationale + alternatives. Advisory / knowledge-based.
No input schema was published for this tool.
list_catalog_providersList the fulfillment providers this account can browse catalogs from. Use this to discover valid `provider` values for browse_catalog / get_garment_details — the set is account-specific and auth-gated on the platform (a provider only appears if this account is entitled to it), so never assume a fix…List the fulfillment providers this account can browse catalogs from. Use this to discover valid `provider` values for browse_catalog / get_garment_details — the set is account-specific and auth-gated on the platform (a provider only appears if this account is entitled to it), so never assume a fix…
No input schema was published for this tool.
channel_performanceWhat the sales channel reports about each of your listings: impressions, clicks,What the sales channel reports about each of your listings: impressions, clicks,
No input schema was published for this tool.
channel_opportunitiesThe listings wasting the most demand: proven traffic, broken conversion, ranked byThe listings wasting the most demand: proven traffic, broken conversion, ranked by
No input schema was published for this tool.
channel_coverageWhich of your connected sales channels report performance data, and which metricsWhich of your connected sales channels report performance data, and which metrics
No input schema was published for this tool.
listing_changesWhat has been changed on your listings, and whether it worked. The otherWhat has been changed on your listings, and whether it worked. The other
No input schema was published for this tool.
describe_listing_attributesDiscover the channel-defined listing fields you can set — TikTok productDiscover the channel-defined listing fields you can set — TikTok product
No input schema was published for this tool.
set_listing_attributesSet channel-defined listing attributes on ONE product (Material, Style,Set channel-defined listing attributes on ONE product (Material, Style,
No input schema was published for this tool.
set_channel_settingsSet SHOP-WIDE listing settings for one connected sales channel: productSet SHOP-WIDE listing settings for one connected sales channel: product
No input schema was published for this tool.
import_size_measurementsGet the blank's real per-size measurements from its fulfillment provider, inGet the blank's real per-size measurements from its fulfillment provider, in
No input schema was published for this tool.
list_collectionsList a store's product collections (categories/groups), each with its product count and per-channel sync status. Read-only.List a store's product collections (categories/groups), each with its product count and per-channel sync status. Read-only.
No input schema was published for this tool.
get_collectionGet a single collection by uuid, including its member products and per-channel sync status. Read-only.Get a single collection by uuid, including its member products and per-channel sync status. Read-only.
No input schema was published for this tool.
create_collectionCreate a new (empty) collection in a store. Provide a name (sent to the platform as the collection title) and an optional description. Add products with add_products_to_collection, then sync_collection to push it to a sales channel.Create a new (empty) collection in a store. Provide a name (sent to the platform as the collection title) and an optional description. Add products with add_products_to_collection, then sync_collection to push it to a sales channel.
No input schema was published for this tool.
update_collectionUpdate a collection's name and/or description. A name change is sent to the platform as the collection title. Editing a synced collection marks it for re-sync.Update a collection's name and/or description. A name change is sent to the platform as the collection title. Editing a synced collection marks it for re-sync.
No input schema was published for this tool.
delete_collectionprivilegedDelete a collection. If it is synced to any sales channel, the platform unsyncs it there first. The member products are NOT deleted, only the grouping.Delete a collection. If it is synced to any sales channel, the platform unsyncs it there first. The member products are NOT deleted, only the grouping.
No input schema was published for this tool.
add_products_to_collectionAdd one or more products (by uuid) to a collection. The products must already be associated with the store. If the collection is synced to a channel, the products are added there too.Add one or more products (by uuid) to a collection. The products must already be associated with the store. If the collection is synced to a channel, the products are added there too.
No input schema was published for this tool.
remove_product_from_collectionprivilegedRemove a single product from a collection (the product itself is not deleted). If the collection is synced to a channel, the product is removed there too.Remove a single product from a collection (the product itself is not deleted). If the collection is synced to a channel, the product is removed there too.
No input schema was published for this tool.
sync_collectionSync a collection to a sales channel (creates/updates the channel-side category and places all products in it that are already synced there). integration_uuid selects which channel; not all channels support collections (e.g. TikTok Shop), which returns a clear "collections_unsupported" error.Sync a collection to a sales channel (creates/updates the channel-side category and places all products in it that are already synced there). integration_uuid selects which channel; not all channels support collections (e.g. TikTok Shop), which returns a clear "collections_unsupported" error.
No input schema was published for this tool.
generate_imageGenerate a design image (split primitive of design_apparel). Returns the raw generated image; follow with process_transparency for apparel that needs a transparent background. Rate-limit errors are classified (model_rate_limited = one model's provider vs platform_rate_limited = this key's ApparelHu…Generate a design image (split primitive of design_apparel). Returns the raw generated image; follow with process_transparency for apparel that needs a transparent background. Rate-limit errors are classified (model_rate_limited = one model's provider vs platform_rate_limited = this key's ApparelHu…
No input schema was published for this tool.
process_transparencyKey a solid background out of a generated image to true RGBA transparency (flood-fill + enclosed-region sweep + tight crop) and upload the result. Runs server-side (Python + Pillow). If the generator produced a tinted/muted green instead of pure #00FF00, it auto-recovers by re-keying in green-domin…Key a solid background out of a generated image to true RGBA transparency (flood-fill + enclosed-region sweep + tight crop) and upload the result. Runs server-side (Python + Pillow). If the generator produced a tinted/muted green instead of pure #00FF00, it auto-recovers by re-keying in green-domin…
No input schema was published for this tool.
verify_design_textRead the text in a design with local OCR (tesseract) when available, so the agent can confirm spelling. Advisory: pass expected_text to get a match verdict, otherwise the detected text is returned for visual review. has_text is null when OCR is unavailable, meaning UNKNOWN — not "no text"; read the…Read the text in a design with local OCR (tesseract) when available, so the agent can confirm spelling. Advisory: pass expected_text to get a match verdict, otherwise the detected text is returned for visual review. has_text is null when OCR is unavailable, meaning UNKNOWN — not "no text"; read the…
No input schema was published for this tool.
design_apparelNo description publishedThis tool published no description. Forge does not invent one.
iterate_designGenerate a variation of an existing design via img2img (e.g. "make the cactus blue"). Almost every source supports editing; only Google Imagen 4 is text-to-image-only (rejected). Multi-reference edits (several source images) work on Seedream, Flux 2 Pro, and Wan; slow-model edits return 202 and are…Generate a variation of an existing design via img2img (e.g. "make the cactus blue"). Almost every source supports editing; only Google Imagen 4 is text-to-image-only (rejected). Multi-reference edits (several source images) work on Seedream, Flux 2 Pro, and Wan; slow-model edits return 202 and are…
No input schema was published for this tool.
fit_aspectNo description publishedThis tool published no description. Forge does not invent one.
archive_designArchive a design so it stops showing in the default gallery listing. Reversible withArchive a design so it stops showing in the default gallery listing. Reversible with
No input schema was published for this tool.
restore_designRestore a previously archived design so it appears in the default gallery listing again.Restore a previously archived design so it appears in the default gallery listing again.
No input schema was published for this tool.
delete_designprivilegedPermanently delete a design and its stored files. Irreversible. Refused withPermanently delete a design and its stored files. Irreversible. Refused with
No input schema was published for this tool.
report_fulfillment_issueReport a post-sale fulfillment issue (defect) on an order: the item does not match theReport a post-sale fulfillment issue (defect) on an order: the item does not match the
No input schema was published for this tool.
list_fulfillment_issuesList fulfillment issues. With order_uuid: that order's issues plus its report-windowList fulfillment issues. With order_uuid: that order's issues plus its report-window
No input schema was published for this tool.
check_fulfillment_issueFetch one fulfillment issue in full (affected items, evidence attachments, provider claimFetch one fulfillment issue in full (affected items, evidence attachments, provider claim
No input schema was published for this tool.
36 of 40 tools published a description.
Tool names and descriptions are written by the publisher and shown verbatim as inert text. They are the strings an MCP client passes to a model, so Forge scans them for prompt-injection patterns — any finding appears with the security scan above. “Privileged” is a keyword match on the tool name, not an audit of what the tool does: a benign-sounding name can still do anything.
Run a custom-merch store from an agent: design, build products, list on every channel, fulfill.
Linked names open Forge’s index of every entry observed exposing that tool. Browse all indexed tools.
The crawl stopped at the depth-4 limit. Anything below that level was never resolved.
The crawl stopped at the 60-package limit. The rest of the tree was never resolved.
36 more resolved packages are not drawn here (display cap: 24). Every dependency carrying an advisory is drawn regardless of the cap. Full inventory (CycloneDX SBOM)
54 declared dependencies never landed in the tree. They are missing from Forge's resolution, not from the package.
+42 more not listed. The counts by reason above cover all of them.
Not followed: peerDependencies. This tree covers runtime dependencies only, so anything those pull in was never resolved.