Able.Style
Server Details
Manage your wardrobe or closet, discover ways to wear your clothes, and get outfit suggestions.
- Status
- Healthy
- Uptime
- 100.0% over the last 24 hours
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- Able.Style
- Claude
- –
TDQS
Scored across 15 tools
Four tools target wardrobe additions (add-to-or-remove-from-closet-tool, add-to-or-remove-from-wardrobe-by-id, add_wardrobe_item_from_description, add_wardrobe_item_from_image), and the first is an explicit backward-compatible clone of the second, guaranteeing selection ambiguity. Descriptions do carefully delineate by-id vs description vs image flows, and style-ways-to-wear vs style-wear-with are distinguishable, keeping it above a 2.
The set mixes kebab-case (add-to-or-remove-from-closet-tool, suggest-outfit-tool, like-dislike-outfit-tool) with snake_case (add_wardrobe_item_from_image, search_wardrobe, create_image_upload) without a clear rule. Some names carry a redundant -tool suffix while others do not, and ordering varies (style-ways-to-wear-by-id vs style-wear-with-get-by-id).
15 tools is reasonable for a wardrobe/styling domain spanning outfit generation, wardrobe management, browsing, purchase links, and settings. The count is slightly inflated by a deprecated alias and an app-only authentication-status tool the model must never call, leaving ~13 genuinely usable tools.
The surface covers the core lifecycle: suggest outfits, add/remove wardrobe items (by id, description, or image), like/dislike, search/browse wardrobe, explore ways-to-wear and wear-with, purchase options plus buy links, settings, and image-upload polling. Minor gaps remain, such as an explicit edit/delete operation for items beyond the add/remove toggle, but agents can work around these.
Available Tools
15 toolsadd-to-or-remove-from-closet-toolManage Wardrobe ItemADestructiveIdempotentInspect
Backward-compatible alias of add-to-or-remove-from-wardrobe-by-id. Prefer add-to-or-remove-from-wardrobe-by-id for new calls. Adds or removes a known clothing item from the user's personal wardrobe by its style ID. Use this tool when users want to track clothing items they own or indicate they have something similar. Use cases: "Add this to my wardrobe", "I have a similar jacket", "Mark that I own this", "Remove this from my wardrobe". Requires authentication - if user is not logged in, this will trigger an OAuth authentication flow. Wardrobe items are used to personalize outfit suggestions with clothes the user actually owns. IMPORTANT: Before calling this tool, look at the structured output of the most recent suggest-outfit-tool call earlier in this conversation. The styleId required by this tool is at outfitItems[i].styleIdentifier.styleId in that result — it IS present in your context. Do not claim you cannot see the styleId without first examining that tool result. If after examining it you still cannot find a matching item, tell the user and ask them to request a new outfit suggestion first.
Inputs: styleId (required), addOrRemove (required), isUserStyle (required), styleDescription (required), +1 more. Returns: result
add-to-or-remove-from-wardrobe-by-idManage Wardrobe ItemADestructiveIdempotentInspect
Adds or removes a known clothing item from the user's personal wardrobe by its style ID. Use this tool when users want to track clothing items they own or indicate they have something similar. Use cases: "Add this to my wardrobe", "I have a similar jacket", "Mark that I own this", "Remove this from my wardrobe". Requires authentication - if user is not logged in, this will trigger an OAuth authentication flow. Wardrobe items are used to personalize outfit suggestions with clothes the user actually owns. IMPORTANT: Before calling this tool, look at the structured output of the most recent suggest-outfit-tool call earlier in this conversation. The styleId required by this tool is at outfitItems[i].styleIdentifier.styleId in that result — it IS present in your context. Do not claim you cannot see the styleId without first examining that tool result. If after examining it you still cannot find a matching item, tell the user and ask them to request a new outfit suggestion first.
Inputs: styleId (required), addOrRemove (required), isUserStyle (required), styleDescription (required), +1 more. Returns: result
add_wardrobe_item_from_descriptionAdd Wardrobe Item from DescriptionAInspect
Adds one item that the signed-in user owns to their Able.Style wardrobe from a text description supplied by the user. Use this when the user describes an item in words and asks to add it. When a photo, attachment or image URL is the source, use add_wardrobe_item_from_image; if transfer is unavailable, use create_image_upload with purpose wardrobe_image_add. Do not infer a description from an image and call this tool unless the user explicitly requests a description-based item instead of uploading the image. For an item already returned by suggest-outfit-tool, use add-to-or-remove-from-wardrobe-by-id with its exact styleIdentifier. IMPORTANT: Before calling, make sure the description contains exactly one apparel, footwear, or wearable-accessory item and explicitly includes its colour. If colour is missing, ask the user for it before calling. An optional menswear or womenswear value overrides the user's profile preference; omit it when the profile preference should be used. The result includes a link for reviewing the added item. A newly created item's image may still be generated in the background.
Inputs: description (required), menswearOrWomenswear. Returns: result
add_wardrobe_item_from_imageAdd Wardrobe Item from ImageAIdempotentInspect
Add one clothing item from the user's original image to their wardrobe. Use this when the user attaches a photo or supplies an image URL and asks to add/save the pictured item, for example 'Add this to my wardrobe'. The server processes the actual image. Do not replace this flow with add_wardrobe_item_from_description or your own visual interpretation. Generate requestId and provide exactly one of: ChatGPT file reference in file, publicly accessible imageUrl, or complete original image bytes in image.data. JPEG, PNG and WebP up to 10 MB. Never invent file IDs, attachment URLs or base64. If the client cannot transfer the original image, call create_image_upload with the same requestId and purpose wardrobe_image_add and show its uploadPageUrl. Poll get_wardrobe_image_activity for the result.
Inputs: requestId (required), file, image, imageUrl, +1 more.
authentication-status-toolCheck Able Style sign-in statusARead-onlyIdempotentInspect
Checks whether the current Able Style app session is signed in. This app-only tool never starts authentication and must not be called by the model.
Inputs: no named parameters. Returns: result
create_image_uploadCreate Image UploadAIdempotentInspect
Create a secure web or installed-app image picker when the user asks for an upload link, or an image-based action cannot receive the original image directly. Use this even when you can see a chat photo but cannot pass its real file reference, public URL or original bytes to add_wardrobe_item_from_image. For wardrobe photos, use purpose wardrobe_image_add; do not silently switch to add_wardrobe_item_from_description. Generate a requestId for a new action or reuse the same requestId from a direct-image attempt. Currently supports wardrobe_image_add: one clothing item per image. Returns uploadId, uploadPageUrl, expiresAt and a purpose-specific action reference. Show uploadPageUrl and ask the user to open it and submit their photo. Creating the link does not upload the chat attachment or add the item.
Inputs: purpose (required), requestId (required), options.
get_wardrobe_image_activityGet Wardrobe Image ActivityARead-onlyIdempotentInspect
Check the status of an owned wardrobe image action. Returns safe failure details or the added item and its link. Use activityId from add_wardrobe_item_from_image or create_image_upload.
Inputs: activityId (required).
like-dislike-outfit-toolLike or Dislike OutfitADestructiveIdempotentInspect
Records or removes a like or dislike for a specific outfit suggestion. Use this tool when users want to save outfits they love or indicate ones they don't prefer. Use cases: "I like this outfit", "Save this to my favorites", "I don't like this one", "Remove my like from this outfit". Requires authentication - if user is not logged in, this will trigger an OAuth authentication flow. Helps personalize future outfit suggestions based on user preferences. IMPORTANT: Before calling this tool, look at the structured output of the most recent suggest-outfit-tool call earlier in this conversation. The outfitId required by this tool is at result.outfitId in that result — it IS present in your context. Do not claim you cannot see the outfitId without first examining that tool result. If after examining it you still cannot find a valid outfitId, tell the user and ask them to request a new outfit suggestion first.
Inputs: value (required), outfitId (required), likeOrDislike (required). Returns: result
search_wardrobeSearch WardrobeARead-onlyIdempotentInspect
Use this when the user wants to browse or search their signed-in wardrobe, including questions about categories, colours, attributes, newest items, and natural-language terms such as 'flowery shirts'. Returns up to five items per call and the total number of matches across all pages. The results widget automatically loads further pages as the user scrolls. If the widget is unavailable and nextPageToken is present, call this tool again with only that pageToken when the user asks for more results. Do not combine a pageToken with query, sortBy, or filters.
Inputs: query, sortBy, filters, pageToken. Returns: result
style-purchase-buy-urlOpen Style RetailerARead-onlyIdempotentInspect
Recheck an exact purchase offer and return its current retailer link. Requires sign-in. Call only when the user wants to open a retailer, using the exact styleId, styleProductId, offerId and delivery country from style-purchase-options-by-id. Do not call for offers with canBuy false. This opens a product listing; it does not place an order.
Inputs: country (required), offerId (required), styleId (required), styleProductId (required). Returns: result
style-purchase-options-by-idStyle Purchase OptionsARead-onlyIdempotentInspect
Find matching products and retailers where the user can buy a catalog style. Requires sign-in. Copy the exact catalog styleId from an earlier result; userStyle IDs are not supported. An explicit country overrides the saved account delivery country; otherwise the saved account country is preferred to the optional host country hint. Ask the user to select a country when neither is available. Save deliberate country selections with update-user-settings-tool using settings.deliveryCountry. Returns the complete options snapshot, including price, availability, retailer and product links. When searching or refreshing, call again with the same styleId and country to refresh. Buy links are obtained on demand with style-purchase-buy-url.
Inputs: styleId (required), country. Returns: result
style-ways-to-wear-by-idWays to WearARead-onlyIdempotentInspect
Get outfit inspirations showing ways to wear a particular clothing item, including their tagged styles and owned userStyles. Uses the same selection logic as the Able.Style style page and requires sign-in. Copy exact IDs from earlier results: a ref with kind style uses styleId, and kind user_style uses userStyleId. Provide exactly one of styleId or userStyleId. Returns five items per page; the widget loads more on scroll. Without a widget, call this same tool again with only nextPageToken as pageToken when more results are wanted.
Inputs: styleId, pageToken, userStyleId. Returns: result
style-wear-with-get-by-idStyles to Wear WithARead-onlyIdempotentInspect
Get other styles and owned userStyles that can be worn with a particular clothing item. Uses the same selection logic as the Able.Style style page and requires sign-in. Copy exact IDs from earlier results: a ref with kind style uses styleId, and kind user_style uses userStyleId. Provide exactly one of styleId or userStyleId. Returns five items per page; the widget loads more on scroll. Without a widget, call this same tool again with only nextPageToken as pageToken when more results are wanted.
Inputs: styleId, pageToken, userStyleId. Returns: result
suggest-outfit-toolOutfit Suggestion ToolAInspect
Generates personalized fashion, style, and outfit suggestions based on wardrobe items, preferences, local weather conditions, and occasion formality. Use this tool when users ask for fashion or style advice such as: "What should I wear?", "What outfit do you recommend?", "Help me choose clothes for [occasion]", "Outfit ideas for [weather/event]", or "What should I wear in [hot/cold/rainy] weather?". Returns a complete, readable outfit description, structured item data, and an inspiration image when one can be safely supplied. Suggestions are personalized using the signed-in user's saved wardrobe items and style preferences. IMPORTANT: The structured result of this tool call — including all styleIdentifier.styleId values for each outfit item — remains in the conversation context and MUST be used verbatim by subsequent tool calls such as add-to-or-remove-from-wardrobe-by-id. After presenting the outfit, do NOT ask any follow-up questions or invite the user to request more outfits — your response is complete as-is. MANDATORY RESPONSE REQUIREMENT: Whenever suggest-outfit-tool succeeds and outfitUrl is non-null, the final user-facing response MUST include exactly one Markdown link labelled "Open in Able.Style" whose target is the exact outfitUrl value. Do not omit the link or substitute a different URL.
Inputs: smartness (required), temperature (required), menswearOrWomenswear (required), inspirationId. Returns: result
update-user-settings-toolUpdate User SettingsBIdempotentInspect
Updates one or more settings on the signed-in user's Able Style profile.
Inputs: settings (required). Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
Related MCP Connectors
Your own closet in your AI: outfits from clothes you own, rendered on a model inline.
What to wear today by city weather and travel packing lists by destination. Public, read-only.
See any clothing, eyewear or accessory on a photo of a person, in about 10 seconds.
Natural-language fashion search and complete outfits from real shop pieces. Anonymous, read-only.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables Alexa+ to look up what a customer owns, saved, or could buy, suggest deterministically ranked outfits for an occasion, and preview or compare garments rendered on the customer's own photo through a virtual try-on pipeline. It also supports saving looks, recording reactions to steer later suggestions, adding catalog items to a wardrobe, and planning up to a week of outfits without repeating garments.MIT
- FlicenseNot gradedqualityBmaintenanceEnables users to generate weather- and itinerary-adaptive capsule wardrobe packing lists that respect destination dress codes and airline carry-on limits.7-
- AlicenseNot gradedqualityCmaintenanceAsk your AI what to wear: weather-aware outfit suggestions for any city and occasion, today or tomorrow. Live weather via OpenWeather, layering advice on big temperature swings, curated styling formulas for 7 occasions. Hosted at https://outfitmaker.ai/mcp (Streamable HTTP, no auth). Tools: what_to_wear_today, suggest_outfit, about_outfitmaker.MIT
- AlicenseNot gradedqualityCmaintenanceEnables clients to look up dress-code meanings, generate five-piece outfit formulas for an occasion and weather, explore tested clothing colour combinations, and find relevant style guides through a free read-only MCP endpoint.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.