{"apiVersion":"v1","directorySlug":"hutterproducts-mcp-7d748eca2e","title":"Hutterproducts","description":null,"pageUrl":"https://www.mcpbundles.com/skills/hutterproducts-mcp-7d748eca2e","connectPath":"importable","connectAction":"import_server","catalogListing":false,"bundleSlug":null,"listingKind":"remote_mcp","kind":"provider","transportUrl":"https://hutterproducts.com/api/v1/mcp","hostedMcpUrl":null,"toolCount":39,"toolInventoryStatus":"observed","refreshedAt":"2026-11-03T13:26:00.516172+00:00","registryName":"com.hutterproducts/hutterproducts-mcp-7d748eca2e","registryVersion":"2026.11.3","registryEligible":true,"tools":[{"name":"advise_saved_product_brief","description":"Use this when the signed-in user wants product advice from a saved brief. Pass its private briefRef and exact expectedRevision from save_product_brief, refine_product_brief, or read_product_brief. The server reads the saved requirements and evidence; do not reconstruct them in this call. Optional productQuery or sku narrows catalog search. Ask the returned focused clarification, or present the returned choices. When a required input/model lock asks for exact model confirmation, obtain explicit u","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["briefRef","expectedRevision"],"properties":{"sku":{"type":"string","maxLength":120,"minLength":1},"briefRef":{"type":"string","pattern":"^pb_[A-Za-z0-9_-]{32}$"},"productQuery":{"type":"string","maxLength":240,"minLength":1},"expectedRevision":{"type":"integer","maximum":9007199254740990,"exclusiveMinimum":0}},"additionalProperties":false},"title":"Advise from saved product brief","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"advise_saved_product_brief","displayName":"Advise from saved product brief"},{"name":"read_product_brief","description":"Use this when the signed-in user wants to resume or review a saved product brief whose private briefRef is already available. Return the current requirements, evidence, unanswered questions, and revision. Keep the reference private and do not invent one. For a DRAFT brief, use advise_saved_product_brief with this revision. For a CONVERTED brief, use its private conversion.designId with get_design_context to resume the existing design. This read-only operation does not change the brief, select a","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["briefRef"],"properties":{"briefRef":{"type":"string","pattern":"^pb_[A-Za-z0-9_-]{32}$"}},"additionalProperties":false},"title":"Resume saved product brief","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"read_product_brief","displayName":"Resume saved product brief"},{"name":"link_chatgpt_identity","description":"Use this only when the user explicitly asks to connect this ChatGPT app identity to an existing signed-in MerchandAise account and provides a fresh one-time code from their MerchandAise Connections page. It consumes that code and links only the current ChatGPT subject. It never creates an account, lists or changes design sessions, reads commercial data, abandons a draft, or starts checkout.","inputSchema":{"type":"object","required":["code"],"properties":{"code":{"type":"string","pattern":"^MA-[A-Za-z0-9_-]{32}$"}},"additionalProperties":false},"title":"Link MerchandAise account","logicalName":"link_chatgpt_identity","displayName":"Link MerchandAise account","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"render_configurator_widget","description":"Use this render tool when the user wants to view, show, open, or refresh the MerchandAise 3D product widget for an existing designId. It does not buy, order, or change the visual design. Supplying quantity requests a quote preview; otherwise the result may include the current persisted quote. When reviewView is supplied, it records actor-owned version-bound review evidence for the unchanged design version and clears the prior model-review receipt. For an ordinary open, pass designId plus optiona","inputSchema":{"type":"object","required":["designId"],"properties":{"currency":{"type":"string","maxLength":3,"minLength":3},"designId":{"type":"string"},"quantity":{"type":"integer","maximum":50000,"minimum":1},"autoQuote":{"type":"boolean"},"reviewView":{"enum":["front","back","left","right","artwork_detail","material_detail","animation_motion"],"type":"string"},"reviewFrame":{"type":"object","required":["reviewId","challenge","frameHash","width","height","renderer","readiness","geometryCount","renderedFrameCount"],"properties":{"image":{"type":"object","required":["data","mimeType"],"properties":{"data":{"type":"string","maxLength":1398104,"minLength":1},"mimeType":{"enum":["image/png"],"type":"string"}},"additionalProperties":false},"width":{"type":"integer","maximum":8192,"minimum":1},"height":{"type":"integer","maximum":8192,"minimum":1},"renderer":{"enum":["native-three"],"type":"string"},"reviewId":{"type":"string","maxLength":120,"minLength":1},"challenge":{"type":"string","maxLength":128,"minLength":32},"frameHash":{"type":"string","pattern":"^[a-f0-9]{64}$"},"readiness":{"enum":["ready"],"type":"string"},"geometryCount":{"type":"integer","maximum":10000000,"minimum":1},"renderedFrameCount":{"type":"integer","maximum":10000,"minimum":1}},"additionalProperties":false},"leadTimeDays":{"type":"number","maximum":365,"minimum":1},"shipToCountry":{"type":"string","maxLength":2,"minLength":2},"expectedVersion":{"type":"integer","minimum":1},"refreshReviewId":{"type":"string","maxLength":120,"minLength":1},"readCapturedReviewId":{"type":"string","maxLength":120,"minLength":1}},"additionalProperties":false},"title":"Render 3D configurator","logicalName":"render_configurator_widget","displayName":"Render 3D configurator","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"read_captured_review_image","description":"Use this read-only image tool after render_configurator_widget reports frame_captured with tool_content_prepared. Pass that exact current designId, version, review view and review ID. It returns the captured native PNG in MCP image content without opening another widget, changing the design, or creating a quote. Describe only pixels actually received; a captured receipt alone is not visual acceptance.","inputSchema":{"type":"object","required":["designId","expectedVersion","reviewView","reviewId"],"properties":{"designId":{"type":"string"},"reviewId":{"type":"string","maxLength":120,"minLength":1},"reviewView":{"enum":["front","back","left","right","artwork_detail","material_detail","animation_motion"],"type":"string"},"expectedVersion":{"type":"integer","minimum":1}},"additionalProperties":false},"title":"Read captured review image","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"read_captured_review_image","displayName":"Read captured review image"},{"name":"record_model_visual_review","description":"Use this only after the native configurator has returned prepared image content in the current conversation context. Record the model visual assessment against the exact design version, review IDs, image SHA-256 values, and context signature. This receipt does not claim that ChatGPT displayed or understood an image, does not approve a design, and does not replace supplier or physical-production proof. For authored garments, include creativeReview with concrete reference criteria and a revision v","inputSchema":{"type":"object","required":["designId","expectedVersion","contextSignature","views"],"properties":{"views":{"type":"array","items":{"type":"object","required":["key","reviewId","sha256","assessment"],"properties":{"key":{"enum":["front","back","left","right","artwork_detail","material_detail","animation_motion"],"type":"string"},"sha256":{"type":"string","pattern":"^[a-f0-9]{64}$"},"findings":{"type":"array","items":{"type":"string","maxLength":500,"minLength":1},"maxItems":10},"reviewId":{"type":"string","maxLength":120,"minLength":1},"assessment":{"enum":["inspected","not_inspectable"],"type":"string"},"confidence":{"type":"number","maximum":1,"minimum":0}},"additionalProperties":false},"maxItems":7,"minItems":1},"designId":{"type":"string"},"creativeReview":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["schemaVersion","compositionId","compositionRevision","referenceBasis","verdict","criteria","revisionActions"],"properties":{"verdict":{"enum":["revise","ready_for_customer_review","not_inspectable"],"type":"string"},"criteria":{"type":"array","items":{"type":"object","required":["key","target","observed","assessment","viewKeys"],"properties":{"key":{"enum":["palette","motif_scale","motif_distribution","panel_continuity","branding_hierarchy","reference_character"],"type":"string"},"target":{"type":"string","maxLength":600,"minLength":12},"observed":{"type":"string","maxLength":600,"minLength":12},"viewKeys":{"type":"array","items":{"enum":["front","back","left","right"],"type":"string"},"maxItems":4,"minItems":1},"assessment":{"enum":["meets_brief","revise","not_inspectable"],"type":"string"}},"additionalProperties":false},"maxItems":6,"minItems":6},"compositionId":{"type":"string","maxLength":40,"minLength":1},"schemaVersion":{"type":"string","const":"2026-09-20.creative-review.v1"},"referenceBasis":{"type":"object","required":["kind","description","unavailableViews"],"properties":{"kind":{"enum":["reference_images","original_brief"],"type":"string"},"referenceAssetId":{"type":"string","maxLength":160,"minLength":1},"unavailableViews":{"type":"array","items":{"enum":["front","back","left","right"],"type":"string"},"maxItems":4}},"additionalProperties":false},"revisionActions":{"type":"array","items":{"type":"object","required":["criterion","instruction","preserve"],"properties":{"preserve":{"type":"array","items":{"type":"string","maxLength":160,"minLength":1},"maxItems":12,"minItems":1},"criterion":{"enum":["palette","motif_scale","motif_distribution","panel_continuity","branding_hierarchy","reference_character"],"type":"string"},"instruction":{"type":"string","maxLength":600,"minLength":12}},"additionalProperties":false},"maxItems":12},"compositionRevision":{"type":"integer","maximum":9007199254740991,"minimum":1}},"additionalProperties":false},"expectedVersion":{"type":"integer","minimum":1},"contextSignature":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"additionalProperties":false},"title":"Record visual review","logicalName":"record_model_visual_review","displayName":"Record visual review","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"render_configurator_diagnostic_widget","description":"Use this read-only diagnostic render tool only when the user explicitly asks for diagnostics or when the full configurator widget cannot mount. Never use it for ordinary requests to view, show, open, or refresh a jersey/configurator. It does not load a product, mutate a design session, or quote an order.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"title":"Render diagnostic widget","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"render_configurator_diagnostic_widget","displayName":"Render diagnostic widget"},{"name":"get_design_context","description":"Use this when ChatGPT needs the current product capabilities, design zones, materials, UV references, manufacturability constraints, and editable design state before advising, planning a complex design, or adapting a reference image. For a new composition or selective artwork revision, use semanticAuthoring and its permitted semantic targets with create_design_plan.semanticComposition. Current/base material values describe the rendered product and are not selectable authority. Describe a materia","inputSchema":{"type":"object","required":["designId"],"properties":{"designId":{"type":"string"}},"additionalProperties":false},"title":"Get design context","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_design_context","displayName":"Get design context"},{"name":"inspect_design_readiness","description":"Use this read-only tool after the final visual draft and required assets are prepared, and before the first supplier quote or checkout handoff. It validates the exact current design version against product zones, UV calibration, artwork assets, direct-edit identity, material and technique capability, rights context, technique-preview approval, quote freshness, native rendered frames, and the current model visual review receipt. It returns both the broader readiness summary and the persisted reco","inputSchema":{"type":"object","required":["designId"],"properties":{"designId":{"type":"string"}},"additionalProperties":false},"title":"Inspect design readiness","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"inspect_design_readiness","displayName":"Inspect design readiness"},{"name":"manage_design_workspace","description":"Use this only when the user asks to inspect or restore the immutable history of the one current design. ChatGPT must refine that single visible design and must not create parallel options. Restoring history creates a new version and never deletes later work. restore_history requires expectedVersion and must be followed by render_configurator_widget when renderRequired is true. Refresh quote_current_design only when the user requests current commerce terms.","inputSchema":{"type":"object","required":["designId","action"],"properties":{"limit":{"type":"integer","maximum":50,"minimum":2},"action":{"enum":["list_history","restore_history"],"type":"string"},"version":{"type":"integer","minimum":1},"designId":{"type":"string"},"historyQuery":{"type":"string","maxLength":1000,"minLength":1},"expectedVersion":{"type":"integer","minimum":1}},"additionalProperties":false},"title":"Manage current design history","logicalName":"manage_design_workspace","displayName":"Manage current design history","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"read_saved_panel_artwork_source","description":"Read one exact immutable PNG source from the current actor-owned design at its exact version. Use the saved source index and SHA-256 from get_design_context or a prior transfer sourceIdentity. Returns private pixels as MCP image content for inspection and possible native reference editing, without a public URL, ChatGPT file ID, design edit, or quote. A native image edit using these pixels must be verified separately; never invent a file ID.","inputSchema":{"type":"object","required":["designId","expectedVersion","savedSourceIndex","savedSourceSha256"],"properties":{"designId":{"type":"string"},"expectedVersion":{"type":"integer","minimum":1},"savedSourceIndex":{"type":"integer","maximum":15,"minimum":0},"savedSourceSha256":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"additionalProperties":false},"title":"Read saved panel artwork source","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"read_saved_panel_artwork_source","displayName":"Read saved panel artwork source"},{"name":"prepare_panel_artwork_transfer","description":"Stage host-selected authored panel images for the current actor-owned design and deterministically bake a complete ordered set of up to four full-print color channels. Use semantic targets and optional wearer side from get_design_context panelGuide; never invent UV coordinates or send storage URLs. files is a top-level array of selected host files, referenced by zero-based fileIndex in panels. For a selective revision use sourceSlots as the complete ordered source set: each unchanged slot names","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["designId","expectedVersion","recolorMode","channels","panels","size","retireObjectIds"],"properties":{"size":{"type":"integer","default":1024,"maximum":4096,"minimum":16},"files":{"type":"array","items":{"type":"object","required":["download_url","file_id"],"properties":{"file_id":{"type":"string","maxLength":240,"minLength":1},"file_name":{"type":"string","maxLength":240},"mime_type":{"type":"string","maxLength":120},"download_url":{"type":"string","format":"uri"}},"additionalProperties":false},"maxItems":16,"minItems":1},"panels":{"type":"array","items":{"type":"object","required":["target","fileIndex","mode"],"properties":{"mode":{"enum":["luma","alpha","rgba-palette","rgba-palette-blend"],"type":"string"},"target":{"type":"string","pattern":"^[A-Za-z0-9][A-Za-z0-9._:-]*$","maxLength":80,"minLength":1},"channelId":{"type":"string","pattern":"^[A-Za-z0-9][A-Za-z0-9._:-]*$","maxLength":80,"minLength":1},"fileIndex":{"type":"integer","maximum":15,"minimum":0},"wearerSide":{"enum":["left","right"],"type":"string"}},"additionalProperties":false},"maxItems":16,"minItems":1},"channels":{"type":"array","items":{"type":"object","required":["id","color"],"properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9][A-Za-z0-9._:-]*$","maxLength":80,"minLength":1},"color":{"type":"string","pattern":"^#[0-9a-fA-F]{6}$"},"label":{"type":"string","maxLength":80,"minLength":1}},"additionalProperties":false},"maxItems":4,"minItems":1},"designId":{"type":"string","maxLength":160,"minLength":1},"technique":{"type":"string","maxLength":120,"minLength":1},"recolorMode":{"enum":["independent-regions","mixing-basis-preview"],"type":"string","default":"independent-regions"},"sourceSlots":{"type":"array","items":{"type":"object","properties":{"fileIndex":{"type":"integer","maximum":15,"minimum":0},"savedSourceIndex":{"type":"integer","maximum":15,"minimum":0},"savedSourceSha256":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"additionalProperties":false},"maxItems":16,"minItems":1},"expectedVersion":{"type":"integer","maximum":9007199254740991,"minimum":1},"paletteMaxError":{"type":"object","required":["mean","max"],"properties":{"max":{"type":"number","maximum":1,"minimum":0},"mean":{"type":"number","maximum":1,"minimum":0}},"additionalProperties":false},"retireObjectIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9][A-Za-z0-9._:-]*$","maxLength":80,"minLength":1},"maxItems":20},"reuseSavedSources":{"type":"boolean","const":true},"stagedSourcesReceipt":{"type":"string","maxLength":200000,"minLength":1},"rebaseFromCurrentDesign":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"additionalProperties":false},"title":"Prepare panel artwork transfer","logicalName":"prepare_panel_artwork_transfer","displayName":"Prepare panel artwork transfer","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"apply_design_plan","description":"Use this after create_design_plan when the user wants ChatGPT to apply that validated plan of authored composition, color, material, pattern, logo, or text edits to the current design session. For direct natural-language edits, use apply_prompt_design_edit instead. For semanticComposition plans, pass the complete returned plan unchanged, including intent, source fingerprint and digest; a current-design recovery may have zero visual operations. Pass rebaseFromCurrentDesign only from the latest se","inputSchema":{"type":"object","required":["designId","expectedVersion","plan"],"properties":{"plan":{"type":"object","required":["operations"],"properties":{"operations":{"type":"array","items":{"type":"object","required":["type"],"properties":{"type":{"enum":["removeLayer","setMaterial","setStructuralDimensions","setColor","setLayerTechnique","setArtworkLayerTransform","setPatternLayerTransform","addPatternLayer","moveLayer","setTextElement"],"type":"string"}},"additionalProperties":true},"maxItems":20,"minItems":0}},"additionalProperties":true},"designId":{"type":"string"},"expectedVersion":{"type":"integer","minimum":1}},"additionalProperties":false},"title":"Apply design plan","logicalName":"apply_design_plan","displayName":"Apply design plan","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"apply_prompt_design_edit","description":"Use this for simple direct edits to the current 3D product, such as changing a base color or moving existing artwork. For newly composed artwork or a selective creative revision, read get_design_context and use create_design_plan.semanticComposition followed by apply_design_plan when semanticAuthoring supports the requested objects and targets. Never substitute the fixed semantic pilot proof design for original authorship. This creates a feasible plan and applies it only to the bounded design se","inputSchema":{"type":"object","required":["designId","prompt"],"properties":{"style":{"type":"string","maxLength":240,"minLength":1},"prompt":{"type":"string","maxLength":2000,"minLength":1},"designId":{"type":"string"},"constraints":{"type":"object","required":["useCase"],"properties":{"useCase":{"type":"string","maxLength":500,"minLength":1}},"additionalProperties":false},"maxOperations":{"type":"integer","maximum":20,"minimum":1}},"additionalProperties":false},"title":"Apply prompt design edit","logicalName":"apply_prompt_design_edit","displayName":"Apply prompt design edit","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"update_design_state","description":"Use this only for direct widget/manual state synchronization after the widget/app sends an exact validated material, color, layer, text, preview, or imported mask operation from direct manipulation. Never call this from a user chat prompt or natural-language design request like \"change the front panel to red and keep collar/cuffs yellow\"; use apply_prompt_design_edit for prompt-led edits so preserve constraints and quote refresh stay server-validated.","inputSchema":{"type":"object","required":["designId","expectedVersion","operation"],"properties":{"designId":{"type":"string"},"operation":{"type":"object","required":["type"],"properties":{"type":{"enum":["removeLayer","setMaterial","setStructuralDimensions","setColor","setLayerTechnique","setArtworkLayerTransform","setPatternLayerTransform","addPatternLayer","moveLayer","setTextElement","replaceDesignState","renderPreview","improvePatternMask","improvePrintMask"],"type":"string"}},"additionalProperties":true},"expectedVersion":{"type":"integer","minimum":1}},"additionalProperties":false},"title":"Sync widget design state","logicalName":"update_design_state","displayName":"Sync widget design state","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"generate_design_asset","description":"Use this when a user has attached or selected an existing image for a pending referenceWorkflow.assetTasks item or designAssetWorkflow.assetTasks item, or asks to use that file as an editable logo, print, pattern, or full-print channel. This tool imports and persists the supplied file; it does not generate or redesign an image. File authorization only permits the app to receive the attachment and is not artwork-rights confirmation. For a direct user or sponsor logo/print, first ask the user to c","inputSchema":{"type":"object","required":["designId","expectedVersion","prompt"],"properties":{"uv":{"type":"object","additionalProperties":true},"file":{"type":"object","required":["download_url","file_id"],"properties":{"file_id":{"type":"string"},"file_name":{"type":"string"},"mime_type":{"type":"string"},"size_bytes":{"type":"integer","maximum":26214400,"minimum":1},"download_url":{"type":"string","format":"uri"}},"additionalProperties":false},"kind":{"enum":["pattern","print","logo","full_print"],"type":"string"},"zone":{"type":"string"},"prompt":{"type":"string"},"assetId":{"type":"string"},"assetUrl":{"type":"string","format":"uri"},"designId":{"type":"string"},"material":{"type":"string"},"technique":{"type":"string"},"transform":{"type":"object","additionalProperties":true},"sourceModel":{"type":"string"},"channelColor":{"type":"string"},"channelIndex":{"type":"integer","maximum":23,"minimum":0},"targetLayerId":{"type":"string"},"manifestItemId":{"type":"string","maxLength":160,"minLength":1},"refinesAssetId":{"type":"string"},"sourceProvider":{"type":"string"},"expectedVersion":{"type":"integer","minimum":1},"physicalWidthMm":{"type":"number","maximum":2000,"exclusiveMinimum":0},"physicalHeightMm":{"type":"number","maximum":2000,"exclusiveMinimum":0},"rightsAttestation":{"type":"object","required":["userConfirmed","scope"],"properties":{"scope":{"type":"string","const":"own_or_authorized"},"userConfirmed":{"type":"boolean","const":true}},"additionalProperties":false},"maskSynthesisEvidence":{"type":"object","required":["schemaVersion","taskFingerprint","uvTemplateUsed","referenceViewsUsed","channelIsolationConfirmed","attempt"],"properties":{"attempt":{"type":"integer","maximum":4,"minimum":1},"schemaVersion":{"type":"string","const":"2026-07-29.reference-mask-synthesis.v1"},"uvTemplateUsed":{"type":"boolean","const":true},"taskFingerprint":{"type":"string"},"referenceViewsUsed":{"type":"array","items":{"type":"string"},"maxItems":12,"minItems":2},"channelIsolationConfirmed":{"type":"boolean","const":true}},"additionalProperties":false},"opaqueCanvasAttestation":{"type":"object","required":["userConfirmed","reason"],"properties":{"reason":{"type":"string","maxLength":500,"minLength":1},"userConfirmed":{"type":"boolean","const":true}},"additionalProperties":false},"promptGenerationEvidence":{"type":"object","required":["schemaVersion","taskFingerprint","generationSource"],"properties":{"schemaVersion":{"type":"string","const":"2026-08-03.prompt-generated-artwork.v1"},"uvTemplateUsed":{"type":"boolean"},"taskFingerprint":{"type":"string"},"generationSource":{"type":"string","const":"chatgpt_native_image_allowance"}},"additionalProperties":false}},"additionalProperties":false},"title":"Attach design asset","logicalName":"generate_design_asset","displayName":"Attach design asset","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"prepare_technique_preview","description":"Use this after a logo has an exact placement, physical width and height, source-artwork fingerprint, and a compatible preview technique. The tool reads the trusted techniquePreviewHandoff, creates the canonical shared preview request, and returns only an admin-approved branding-free technique profile. Raw example branding, supplier artwork, URLs, and files never leave the server. Calibrated NFC304A1 raised silicone is rendered deterministically from sanitized parameters and immutable customer ar","inputSchema":{"type":"object","required":["designId"],"properties":{"logoId":{"type":"string"},"designId":{"type":"string"},"colorPolicy":{"enum":["preserve","user_directed"],"type":"string"},"userInstructions":{"type":"string","maxLength":2000},"sourceArtworkFile":{"type":"object","required":["download_url","file_id"],"properties":{"file_id":{"type":"string"},"file_name":{"type":"string"},"mime_type":{"type":"string"},"size_bytes":{"type":"integer","maximum":26214400,"minimum":1},"download_url":{"type":"string","format":"uri"}},"additionalProperties":false}},"additionalProperties":false},"title":"Prepare technique preview","logicalName":"prepare_technique_preview","displayName":"Prepare technique preview","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"submit_technique_preview_assets","description":"Use this only after prepare_technique_preview returned generationReady=true and ChatGPT native image generation produced one transparent PNG technique surface for every requested state under the signed-in user plan or workspace allowance. The user must explicitly select each generated output. Pass sourceArtworkFile back unchanged and pass each generated treatment through its matching top-level file field. The server validates real alpha, rejects opaque, empty, or baked-checkerboard outputs, dete","inputSchema":{"type":"object","required":["designId","expectedVersion","requestId","sourceArtworkFile","sourceIdentityAttestation","nativeGenerationEvidence"],"properties":{"designId":{"type":"string"},"requestId":{"type":"string"},"activeFile":{"type":"object","required":["download_url","file_id"],"properties":{"file_id":{"type":"string"},"file_name":{"type":"string"},"mime_type":{"type":"string"},"size_bytes":{"type":"integer","maximum":26214400,"minimum":1},"download_url":{"type":"string","format":"uri"}},"additionalProperties":false},"adaptation":{"type":"object","properties":{"summary":{"type":"string","maxLength":2000},"simplified":{"type":"boolean"}},"additionalProperties":false},"normalFile":{"type":"object","required":["download_url","file_id"],"properties":{"file_id":{"type":"string"},"file_name":{"type":"string"},"mime_type":{"type":"string"},"size_bytes":{"type":"integer","maximum":26214400,"minimum":1},"download_url":{"type":"string","format":"uri"}},"additionalProperties":false},"defaultFile":{"type":"object","required":["download_url","file_id"],"properties":{"file_id":{"type":"string"},"file_name":{"type":"string"},"mime_type":{"type":"string"},"size_bytes":{"type":"integer","maximum":26214400,"minimum":1},"download_url":{"type":"string","format":"uri"}},"additionalProperties":false},"inactiveFile":{"type":"object","required":["download_url","file_id"],"properties":{"file_id":{"type":"string"},"file_name":{"type":"string"},"mime_type":{"type":"string"},"size_bytes":{"type":"integer","maximum":26214400,"minimum":1},"download_url":{"type":"string","format":"uri"}},"additionalProperties":false},"reflectiveFile":{"type":"object","required":["download_url","file_id"],"properties":{"file_id":{"type":"string"},"file_name":{"type":"string"},"mime_type":{"type":"string"},"size_bytes":{"type":"integer","maximum":26214400,"minimum":1},"download_url":{"type":"string","format":"uri"}},"additionalProperties":false},"expectedVersion":{"type":"integer","minimum":1},"sourceArtworkFile":{"type":"object","required":["download_url","file_id"],"properties":{"file_id":{"type":"string"},"file_name":{"type":"string"},"mime_type":{"type":"string"},"size_bytes":{"type":"integer","maximum":26214400,"minimum":1},"download_url":{"type":"string","format":"uri"}},"additionalProperties":false},"nativeGenerationEvidence":{"type":"object","required":["contractVersion","generationSource","accountBilling","outputFormat","backgroundMode","merchantPaidFallback","userSelectedOutput"],"properties":{"outputFormat":{"type":"string","const":"image/png"},"accountBilling":{"type":"string","const":"user_chatgpt_plan_or_workspace"},"backgroundMode":{"type":"string","const":"transparent"},"contractVersion":{"type":"string","const":"chatgpt-native-transparent-preview-v1"},"generationSource":{"type":"string","const":"chatgpt_native_image_allowance"},"userSelectedOutput":{"type":"boolean","const":true},"merchantPaidFallback":{"type":"boolean","const":false}},"additionalProperties":false},"sourceIdentityAttestation":{"type":"object","required":["sourceAssetId","sourceFingerprint","sourceIdentityPreserved","approvedReferencesUsedForTechniqueOnly","visualComparisonPassed"],"properties":{"sourceAssetId":{"type":"string"},"sourceFingerprint":{"type":"string"},"visualComparisonPassed":{"type":"boolean","const":true},"sourceIdentityPreserved":{"type":"boolean","const":true},"approvedReferencesUsedForTechniqueOnly":{"type":"boolean","const":true}},"additionalProperties":false}},"additionalProperties":false},"title":"Save Dedicated Logo preview assets","logicalName":"submit_technique_preview_assets","displayName":"Save Dedicated Logo preview assets","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"decide_technique_preview_adaptation","description":"Use this only after the user has inspected the generated Dedicated Logo on the 3D product at the shown physical size and explicitly approves or rejects it. Pass userConfirmed=true. When the user also explicitly wants it in the same MerchandAise account’s private library, pass saveToPrivateLibrary=true, confirm rights, and use the literal library confirmation. The promotion is actor-owned and idempotent. It stores a visual-only version; it does not approve supplier digitization, full material map","inputSchema":{"type":"object","required":["designId","expectedVersion","requestId","decision","userConfirmed"],"properties":{"decision":{"enum":["approve","reject"],"type":"string"},"designId":{"type":"string"},"requestId":{"type":"string"},"userConfirmed":{"type":"boolean","const":true},"expectedVersion":{"type":"integer","minimum":1},"rightsAttestation":{"type":"object","required":["userConfirmed","scope"],"properties":{"scope":{"type":"string","const":"own_or_authorized"},"userConfirmed":{"type":"boolean","const":true}},"additionalProperties":false},"libraryConfirmation":{"type":"string","const":"save_visual_preview_to_private_dedicated_logo_library"},"saveToPrivateLibrary":{"type":"boolean","const":true}},"additionalProperties":false},"title":"Approve or reject Dedicated Logo preview","logicalName":"decide_technique_preview_adaptation","displayName":"Approve or reject Dedicated Logo preview","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"quote_current_design","description":"Use this when the user asks for the current design price, MOQ, lead time, availability, checkout readiness, or a supplier-backed quote. Quantity is required: use the exact quantity stated by the user, or ask for it before invoking this tool; never invent a quantity. When the tool returns quote.feasibility options, explain them and ask the user to confirm one before calling apply_feasibility_option with its exact option id and current design version. Never silently change the quantity or apply an","inputSchema":{"type":"object","required":["designId"],"properties":{"currency":{"type":"string","maxLength":3,"minLength":3},"designId":{"type":"string"},"quantity":{"type":"integer","maximum":50000,"minimum":1},"leadTimeDays":{"type":"number","maximum":365,"minimum":1},"shipToCountry":{"type":"string","maxLength":2,"minLength":2}},"additionalProperties":false},"title":"Quote current design","logicalName":"quote_current_design","displayName":"Quote current design","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"apply_feasibility_option","description":"Use this only after quote_current_design returned a supplier-backed quote.feasibility option and the user explicitly confirmed that exact option. Pass the option id, requested quantity, and current design version exactly. The tool recomputes and validates the option before applying it, rejects stale or invented choices, preserves logo and print identity/placement/scale/rotation, and never returns a new quote. After success, call inspect_design_readiness, render every required view with render_co","inputSchema":{"type":"object","required":["designId","expectedVersion","requestedQuantity","optionId","userConfirmed"],"properties":{"currency":{"type":"string","maxLength":3,"minLength":3},"designId":{"type":"string"},"optionId":{"type":"string","maxLength":160,"minLength":1},"leadTimeDays":{"type":"number","maximum":365,"minimum":1},"shipToCountry":{"type":"string","maxLength":2,"minLength":2},"userConfirmed":{"type":"boolean","const":true},"expectedVersion":{"type":"integer","minimum":1},"requestedQuantity":{"type":"integer","maximum":50000,"minimum":1}},"additionalProperties":false},"title":"Apply confirmed feasibility option","logicalName":"apply_feasibility_option","displayName":"Apply confirmed feasibility option","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"optimize_design_constraints","description":"Use this after the current native rendered views and model visual review receipt are complete when the user wants the design to cost less, fit a total budget, use a lower MOQ, arrive sooner, or balance several constraints. It compares only published supplier-backed alternatives across private sourcing routes, quantity tiers, print techniques, measurable logo size/count, and approved materials. Explain the exact visual and commercial tradeoffs and ask the user to confirm one exact option. Never e","inputSchema":{"type":"object","required":["designId","quantity"],"properties":{"currency":{"type":"string","maxLength":3,"minLength":3},"designId":{"type":"string"},"quantity":{"type":"integer","maximum":50000,"minimum":1},"objective":{"enum":["reduce_unit_price","fit_total_budget","lower_moq","meet_deadline","balanced"],"type":"string"},"maxOptions":{"type":"integer","maximum":4,"minimum":1},"priorities":{"type":"array","items":{"enum":["price","total_budget","moq","delivery","visual_fidelity","quality"],"type":"string"},"maxItems":6},"maxQuantity":{"type":"integer","maximum":50000,"minimum":1},"maxUnitPrice":{"type":"number","exclusiveMinimum":0},"maxTotalPrice":{"type":"number","exclusiveMinimum":0},"shipToCountry":{"type":"string","maxLength":2,"minLength":2},"requiredLeadTimeDays":{"type":"number","maximum":365,"exclusiveMinimum":0},"targetReductionPercent":{"type":"number","maximum":95,"exclusiveMinimum":0}},"additionalProperties":false},"title":"Optimize price, MOQ, and timing","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"optimize_design_constraints","displayName":"Optimize price, MOQ, and timing"},{"name":"apply_optimizer_option","description":"Use this only after optimize_design_constraints returned an option and the user explicitly confirmed that exact option. Pass the optimization id, option id, exact original constraints, and current design version. The tool regenerates the supplier-backed plan, rejects stale or invented options, applies only the confirmed change, and marks the quote stale. If the option changes the visual product, render_configurator_widget must run before quote_current_design; otherwise requote directly. Never us","inputSchema":{"type":"object","required":["designId","expectedVersion","optimizationId","optionId","userConfirmed","quantity"],"properties":{"currency":{"type":"string","maxLength":3,"minLength":3},"designId":{"type":"string"},"optionId":{"type":"string","maxLength":200,"minLength":1},"quantity":{"type":"integer","maximum":50000,"minimum":1},"objective":{"enum":["reduce_unit_price","fit_total_budget","lower_moq","meet_deadline","balanced"],"type":"string"},"maxOptions":{"type":"integer","maximum":4,"minimum":1},"priorities":{"type":"array","items":{"enum":["price","total_budget","moq","delivery","visual_fidelity","quality"],"type":"string"},"maxItems":6},"maxQuantity":{"type":"integer","maximum":50000,"minimum":1},"maxUnitPrice":{"type":"number","exclusiveMinimum":0},"maxTotalPrice":{"type":"number","exclusiveMinimum":0},"shipToCountry":{"type":"string","maxLength":2,"minLength":2},"userConfirmed":{"type":"boolean","const":true},"optimizationId":{"type":"string","maxLength":200,"minLength":1},"expectedVersion":{"type":"integer","minimum":1},"requiredLeadTimeDays":{"type":"number","maximum":365,"exclusiveMinimum":0},"targetReductionPercent":{"type":"number","maximum":95,"exclusiveMinimum":0}},"additionalProperties":false},"title":"Apply a confirmed optimizer option","logicalName":"apply_optimizer_option","displayName":"Apply a confirmed optimizer option","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"list_premium_logo_techniques","description":"List the currently approved, exact-version Dedicated Logo techniques for this signed-in MerchandAise account and target design placement. The tool revalidates design ownership, version, part/zone capability, and physical-size limits. It returns opaque selection identifiers and buyer-safe technique metadata only; it does not create artwork, make a request, charge the user, approve production, or change any design or website state.","inputSchema":{"type":"object","required":["designId","expectedVersion","partKey","zone","physicalWidthMm","physicalHeightMm"],"properties":{"zone":{"type":"string","maxLength":120,"minLength":1},"limit":{"type":"integer","maximum":20,"minimum":1},"partKey":{"type":"string","maxLength":120,"minLength":1},"designId":{"type":"string","minLength":1},"expectedVersion":{"type":"integer","minimum":1},"physicalWidthMm":{"type":"number","maximum":2000,"exclusiveMinimum":0},"physicalHeightMm":{"type":"number","maximum":2000,"exclusiveMinimum":0}},"additionalProperties":false},"title":"List Dedicated Logo techniques","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"list_premium_logo_techniques","displayName":"List Dedicated Logo techniques"},{"name":"create_premium_logo_request","description":"Create one actor-owned, idempotent Dedicated Logo request from the exact ChatGPT-authorized customer artwork after explicit rights confirmation. This tool only preserves the source and request contract; it never calls a MerchandAise-paid AI provider. Generate the visual direction through prepare_technique_preview and submit_technique_preview_assets with the user’s ChatGPT image allowance. The private example is reference evidence only: it is never customer-selectable or sent to the model. The re","inputSchema":{"type":"object","required":["designId","expectedVersion","techniqueSelectionId","idempotencyKey","partKey","zone","positionUv","physicalWidthMm","physicalHeightMm","shaderScale","sourceArtworkFile","rightsAttestation","confirmation"],"properties":{"zone":{"type":"string","maxLength":120,"minLength":1},"notes":{"type":"string","maxLength":2000},"partKey":{"type":"string","maxLength":120,"minLength":1},"designId":{"type":"string","minLength":1},"positionUv":{"type":"object","required":["u","v"],"properties":{"u":{"type":"number","maximum":1,"minimum":0},"v":{"type":"number","maximum":1,"minimum":0}},"additionalProperties":false},"rotationDeg":{"type":"number","maximum":360,"minimum":-360},"shaderScale":{"type":"number","maximum":100,"exclusiveMinimum":0},"confirmation":{"type":"string","const":"create_reusable_premium_logo"},"idempotencyKey":{"type":"string","maxLength":160,"minLength":8},"expectedVersion":{"type":"integer","minimum":1},"physicalWidthMm":{"type":"number","maximum":2000,"exclusiveMinimum":0},"physicalHeightMm":{"type":"number","maximum":2000,"exclusiveMinimum":0},"reuseToleranceMm":{"type":"number","maximum":100,"minimum":0},"rightsAttestation":{"type":"object","required":["userConfirmed","scope"],"properties":{"scope":{"type":"string","const":"own_or_authorized"},"userConfirmed":{"type":"boolean","const":true}},"additionalProperties":false},"sourceArtworkFile":{"type":"object","required":["download_url","file_id"],"properties":{"file_id":{"type":"string"},"file_name":{"type":"string"},"mime_type":{"type":"string"},"size_bytes":{"type":"integer","maximum":26214400,"minimum":1},"download_url":{"type":"string","format":"uri"}},"additionalProperties":false},"techniqueSelectionId":{"type":"string","pattern":"^pltech_[A-Za-z0-9_-]{43}$"}},"additionalProperties":false},"title":"Create a Dedicated Logo visual-preview request","logicalName":"create_premium_logo_request","displayName":"Create a Dedicated Logo visual-preview request","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"request_premium_logo_material_generation","description":"After the user accepts a ready private visual preview and has finished scaling and positioning it, lock the exact actor-owned design/product placement and queue full base-color, normal, AORM, and displacement material generation. This tool requires an approved production baseline, measured renderer scale and relief evidence, a production-faithful color-plan version, exact optimistic request/design versions, an idempotency key, and the literal confirmation generate_materials_for_this_placement. I","inputSchema":{"type":"object","required":["requestRef","expectedRecordVersion","designId","expectedVersion","idempotencyKey","colorPlanVersion","partKey","zone","positionUv","physicalWidthMm","physicalHeightMm","shaderScale","confirmation"],"properties":{"zone":{"type":"string","maxLength":120,"minLength":1},"partKey":{"type":"string","maxLength":120,"minLength":1},"designId":{"type":"string","minLength":1},"positionUv":{"type":"object","required":["u","v"],"properties":{"u":{"type":"number","maximum":1,"minimum":0},"v":{"type":"number","maximum":1,"minimum":0}},"additionalProperties":false},"requestRef":{"type":"string","pattern":"^plreq_[A-Za-z0-9_-]{43}$"},"rotationDeg":{"type":"number","maximum":360,"minimum":-360},"shaderScale":{"type":"number","maximum":100,"exclusiveMinimum":0},"confirmation":{"type":"string","const":"generate_materials_for_this_placement"},"idempotencyKey":{"type":"string","maxLength":160,"minLength":8},"expectedVersion":{"type":"integer","minimum":1},"physicalWidthMm":{"type":"number","maximum":2000,"exclusiveMinimum":0},"colorPlanVersion":{"type":"string","maxLength":80,"minLength":1},"physicalHeightMm":{"type":"number","maximum":2000,"exclusiveMinimum":0},"reuseToleranceMm":{"type":"number","maximum":100,"minimum":0},"expectedRecordVersion":{"type":"integer","minimum":1}},"additionalProperties":false},"title":"Generate Dedicated Logo materials for a locked placement","logicalName":"request_premium_logo_material_generation","displayName":"Generate Dedicated Logo materials for a locked placement","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"list_premium_logo_requests","description":"List the signed-in MerchandAise user’s customer Dedicated Logo requests with buyer-safe preview, placement, material, private-library, and production lifecycle states. This read-only tool exposes no raw database IDs, storage keys, URLs, supplier identity, pricing, internal notes, or admin data. A private visual preview is never production approval; production-ready reuse still requires the independent supplier/Admin lifecycle.","inputSchema":{"type":"object","properties":{"limit":{"type":"integer","maximum":20,"minimum":1}},"additionalProperties":false},"title":"List Dedicated Logo requests","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"list_premium_logo_requests","displayName":"List Dedicated Logo requests"},{"name":"list_available_premium_logos","description":"Use this read-only tool when the signed-in user asks which of their finished Dedicated Logos can be used in a design. It authenticates the current ChatGPT subject before data access and returns at most ten newest actor-owned, paid/unlocked, approved Dedicated Logo versions with complete render materials and a canonical technique label. Keep selectionId private. It returns no preview URL, supplier data, pricing, inventory, internal identifiers, or admin notes, and never changes a logo, design, as","inputSchema":{"type":"object","properties":{"limit":{"type":"integer","maximum":10,"minimum":1}},"additionalProperties":false},"title":"List available Dedicated Logos","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"list_available_premium_logos","displayName":"List available Dedicated Logos"},{"name":"apply_premium_logo_to_design","description":"Use this only after list_available_premium_logos returned a private selectionId and the signed-in user explicitly chose that exact Dedicated Logo version and confirmed its exact target zone, absolute UV position, physical dimensions, renderer scale, and rotation. It reauthenticates the ChatGPT actor, revalidates actor ownership, paid/unlocked and approved latest-version status, complete render materials, product-zone and technique compatibility, exact design version, and locked design constraint","inputSchema":{"type":"object","required":["designId","expectedVersion","selectionId","zone","positionUv","physicalWidthMm","physicalHeightMm","shaderScale","confirmation"],"properties":{"zone":{"type":"string","maxLength":120,"minLength":1},"designId":{"type":"string","minLength":1},"positionUv":{"type":"object","required":["u","v"],"properties":{"u":{"type":"number","maximum":1,"minimum":0},"v":{"type":"number","maximum":1,"minimum":0}},"additionalProperties":false},"rotationDeg":{"type":"number","default":0,"maximum":360,"minimum":-360},"selectionId":{"type":"string","pattern":"^plsel_[A-Za-z0-9_-]{43}$"},"shaderScale":{"type":"number","maximum":100,"exclusiveMinimum":0},"confirmation":{"type":"string","const":"apply_this_premium_logo"},"expectedVersion":{"type":"integer","minimum":1},"physicalWidthMm":{"type":"number","maximum":2000,"exclusiveMinimum":0},"physicalHeightMm":{"type":"number","maximum":2000,"exclusiveMinimum":0}},"additionalProperties":false},"title":"Apply a Dedicated Logo to a design","logicalName":"apply_premium_logo_to_design","displayName":"Apply a Dedicated Logo to a design","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"list_active_qa_design_sessions","description":"Use this read-only recovery tool when the user reaches the active design-session quota and asks to review their own QA, test, sandbox, disposable, or version-verification drafts. It returns at most ten newest actor-owned active ChatGPT drafts whose persisted creation request contains an explicit normalized whole-word QA marker. It never changes, abandons, completes, quotes, renders, or deletes a session. Keep designId private, present only the buyer-safe label and dates, and require the user to","inputSchema":{"type":"object","required":["purpose"],"properties":{"limit":{"type":"integer","maximum":10,"minimum":1},"purpose":{"type":"string","const":"qa_marked"}},"additionalProperties":false},"title":"List active QA design sessions","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"list_active_qa_design_sessions","displayName":"List active QA design sessions"},{"name":"abandon_design_session","description":"Use this only after the user explicitly confirms they want to discard this exact draft. It releases the draft from the active-session quota while preserving its design state, immutable history, and shared assets. It does not complete the design, create a checkout handoff, place an order, or delete assets. Pass the exact current design version and the literal confirmation token abandon_this_draft.","inputSchema":{"type":"object","required":["designId","expectedVersion","confirmation"],"properties":{"designId":{"type":"string"},"confirmation":{"enum":["abandon_this_draft"],"type":"string"},"expectedVersion":{"type":"integer","minimum":1}},"additionalProperties":false},"title":"Discard draft session","logicalName":"abandon_design_session","displayName":"Discard draft session","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"complete_design_session","description":"Use this only after the user explicitly confirms the exact current design version is ready for a MerchandAise website handoff. First capture every required native review view and record a current model visual review receipt, then obtain a current confirmed supplier-authoritative quote. The server revalidates all three exact-version gates before freezing the handoff; it does not place an order or collect payment.","inputSchema":{"type":"object","required":["designId","expectedVersion","confirmation"],"properties":{"designId":{"type":"string"},"confirmation":{"enum":["complete_this_design"],"type":"string"},"expectedVersion":{"type":"integer","minimum":1}},"additionalProperties":false},"title":"Complete design session","logicalName":"complete_design_session","displayName":"Complete design session","annotations":{"untrustedContentHint":true,"readOnlyHint":true}}],"toolSource":"directory_preview","agentAction":"both","installLinks":[{"id":"cursor","label":"Cursor","href":"cursor://anysphere.cursor-deeplink/mcp/install?name=Hutterproducts&config=eyJ1cmwiOiAiaHR0cHM6Ly9odXR0ZXJwcm9kdWN0cy5jb20vYXBpL3YxL21jcCJ9"},{"id":"vscode","label":"VS Code","href":"vscode:mcp/install?%7B%22name%22%3A%22Hutterproducts%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fhutterproducts.com%2Fapi%2Fv1%2Fmcp%22%7D"},{"id":"vscode-insiders","label":"VS Code Insiders","href":"vscode-insiders:mcp/install?%7B%22name%22%3A%22Hutterproducts%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fhutterproducts.com%2Fapi%2Fv1%2Fmcp%22%7D"},{"id":"claude-web","label":"Claude.ai","href":"https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=Hutterproducts&connectorUrl=https%3A%2F%2Fhutterproducts.com%2Fapi%2Fv1%2Fmcp"},{"id":"codex","label":"Codex","copyText":"codex mcp add \"Hutterproducts\" --url \"https://hutterproducts.com/api/v1/mcp\""},{"id":"chatgpt","label":"ChatGPT","href":"https://www.mcpbundles.com/docs/integrations/chatgpt"}],"catalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/hutterproducts-mcp-7d748eca2e","callUrl":"https://www.mcpbundles.com/api/directory/v1/servers/hutterproducts-mcp-7d748eca2e/tools/{tool}","mcpServerUrl":"https://hutterproducts.com/api/v1/mcp","liveCatalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/hutterproducts-mcp-7d748eca2e?live=1"}