Home Office Builder – hand-picked gift ideas
Hand-picked gift ideas for home offices that assistants turn into shareable wishlists fast. SE + US.
Sollte ich dies verwenden
Qualität und Sicherheit
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"homeoffice-gifts": {
"url": "https://home-office-builder.vercel.app/api/mcp"
}
}
}Remote-Endpunkte
https://home-office-builder.vercel.app/api/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (8)
🟢get_health
Health check for Home Office Builder. Returns ok, storage, paapi, trackingTag, tagConfigured, domain, catalogCount. tagConfigured is false until real Associates IDs are set (links omit tag=). OpenAPI: getHealth.
Eingabe-Schema
{
"type": "object",
"properties": {}
}🟢search_desk_gear(q, marketplace, locale, role, budgetBand, ...)
Search Amazon for home-office desk gear on the user's marketplace. Filter by role + budgetBand. Returns PA-API products when configured, otherwise desk-setup search deep-link cards + catalogMatches. ALWAYS pass marketplace + locale. Amazon URLs omit tag= until tagConfigured is true. OpenAPI: searchAmazon.
Eingabe-Schema
{
"type": "object",
"properties": {
"q": {
"type": "string",
"minLength": 1,
"description": "Search query, e.g. monitor arm"
},
"marketplace": {
"type": "string",
"minLength": 2,
"description": "Amazon storefront domain or id for the end user, e.g. amazon.se, amazon.com, se, de. REQUIRED — pass the user's storefront; curated ASINs only produce /dp links when trusted for that marketplace."
},
"locale": {
"type": "string",
"minLength": 2,
"description": "User locale, e.g. en, sv, de, fr, es, en-US"
},
"role": {
"type": "string",
"enum": [
"developer",
"designer",
"student",
"general"
],
"description": "developer | designer | student | general"
},
"budgetBand": {
"type": "string",
"enum": [
"under-500",
"500-1500",
"1500-4000",
"4000-plus"
],
"description": "under-500 | 500-1500 | 1500-4000 | 4000-plus"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"default": 10
}
},
"required": [
"q",
"marketplace",
"locale"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_catalog(marketplace, locale, q, role, budgetBand, ...)
Paginated curated desk starters (~51). Prefer search_desk_gear for discovery. ALWAYS pass marketplace + locale. Filter by role + budgetBand. OpenAPI: getCatalog.
Eingabe-Schema
{
"type": "object",
"properties": {
"marketplace": {
"type": "string",
"minLength": 2,
"description": "Amazon storefront domain or id for the end user, e.g. amazon.se, amazon.com, se, de. REQUIRED — pass the user's storefront; curated ASINs only produce /dp links when trusted for that marketplace."
},
"locale": {
"type": "string",
"minLength": 2,
"description": "User locale, e.g. en, sv, de, fr, es, en-US"
},
"q": {
"type": "string",
"description": "Full-text filter"
},
"role": {
"type": "string",
"enum": [
"developer",
"designer",
"student",
"general"
]
},
"budgetBand": {
"type": "string",
"enum": [
"under-500",
"500-1500",
"1500-4000",
"4000-plus"
]
},
"category": {
"type": "string"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 48
},
"offset": {
"type": "integer",
"minimum": 0,
"default": 0
}
},
"required": [
"marketplace",
"locale"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢resolve_product(marketplace, locale, asin, url, keywords, ...)
Resolve an ASIN, pasted Amazon /dp/ URL, or keywords to an buyUrl (product /dp or desk search). ALWAYS pass marketplace + locale. Does not invent tracking tags — when unset, URLs omit tag= and tagConfigured is false. OpenAPI: resolveProduct.
Eingabe-Schema
{
"type": "object",
"properties": {
"marketplace": {
"type": "string",
"minLength": 2,
"description": "Amazon storefront domain or id for the end user, e.g. amazon.se, amazon.com, se, de. REQUIRED — pass the user's storefront; curated ASINs only produce /dp links when trusted for that marketplace."
},
"locale": {
"type": "string",
"minLength": 2,
"description": "User locale, e.g. en, sv, de, fr, es, en-US"
},
"asin": {
"type": "string",
"description": "10-char Amazon ASIN"
},
"url": {
"type": "string",
"description": "Pasted Amazon product URL"
},
"keywords": {
"type": "string",
"description": "Search keywords if no ASIN"
},
"role": {
"type": "string",
"enum": [
"developer",
"designer",
"student",
"general"
]
},
"budgetBand": {
"type": "string",
"enum": [
"under-500",
"500-1500",
"1500-4000",
"4000-plus"
]
}
},
"required": [
"marketplace",
"locale"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡create_desk_board(personName, deskName, role, budgetBand, marketplace, ...)
Create a home-office desk board (wishlist). Returns id, editToken, ownerUrl, shopUrl, wishlist, storage. Save editToken for add_desk_item. Prefer create_and_fill for one-shot. OpenAPI: createWishlist.
Eingabe-Schema
{
"type": "object",
"properties": {
"personName": {
"type": "string"
},
"deskName": {
"type": "string"
},
"role": {
"type": "string",
"enum": [
"developer",
"designer",
"student",
"general"
]
},
"budgetBand": {
"type": "string",
"enum": [
"under-500",
"500-1500",
"1500-4000",
"4000-plus"
]
},
"marketplace": {
"type": "string",
"minLength": 2,
"description": "Amazon storefront domain or id for the end user, e.g. amazon.se, amazon.com, se, de. REQUIRED — pass the user's storefront; curated ASINs only produce /dp links when trusted for that marketplace."
},
"locale": {
"type": "string",
"minLength": 2,
"description": "User locale, e.g. en, sv, de, fr, es, en-US"
},
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"title": {
"type": "string"
},
"name": {
"type": "string"
},
"asin": {
"type": "string"
},
"url": {
"type": "string"
},
"searchKeywords": {
"type": "string"
},
"catalogId": {
"type": "string"
},
"emoji": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡create_and_fill(personName, deskName, role, budgetBand, marketplace, ...)
One call: create a curated home office setup gift wishlist and return shopUrl (share link) + ownerUrl. Preferred agent path: create a desk board and add ASINs / keywords / search queries in one call. Pass marketplace + locale + role + budgetBand. Returns id, editToken, ownerUrl, shopUrl. OpenAPI: agentCreateAndFill.
Eingabe-Schema
{
"type": "object",
"properties": {
"personName": {
"type": "string"
},
"deskName": {
"type": "string"
},
"role": {
"type": "string",
"enum": [
"developer",
"designer",
"student",
"general"
]
},
"budgetBand": {
"type": "string",
"enum": [
"under-500",
"500-1500",
"1500-4000",
"4000-plus"
]
},
"marketplace": {
"type": "string",
"minLength": 2,
"description": "Amazon storefront domain or id for the end user, e.g. amazon.se, amazon.com, se, de. REQUIRED — pass the user's storefront; curated ASINs only produce /dp links when trusted for that marketplace."
},
"locale": {
"type": "string",
"minLength": 2,
"description": "User locale, e.g. en, sv, de, fr, es, en-US"
},
"itemAsins": {
"type": "array",
"items": {
"type": "string"
}
},
"itemKeywords": {
"type": "array",
"items": {
"type": "string"
}
},
"itemQueries": {
"type": "array",
"items": {
"type": "string"
},
"description": "Each query is searched and added as a desk item"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_desk_board(id)
Fetch a desk board by id. Returns items with buy links when available, plus ownerUrl and shopUrl. OpenAPI: getWishlist.
Eingabe-Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "Board id (short Redis id or t.* token)"
}
},
"required": [
"id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡add_desk_item(id, editToken, name, title, asin, ...)
Add an item to a desk board. Requires editToken from create. Body: name/title plus asin, url (pasted /dp), searchKeywords, or catalogId. Token storage may return a new id — update bookmarks. OpenAPI: addWishlistItem.
Eingabe-Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "Desk board id"
},
"editToken": {
"type": "string",
"minLength": 1,
"description": "X-Edit-Token from create/mutate response"
},
"name": {
"type": "string"
},
"title": {
"type": "string"
},
"asin": {
"type": "string"
},
"url": {
"type": "string"
},
"searchKeywords": {
"type": "string"
},
"catalogId": {
"type": "string"
},
"emoji": {
"type": "string"
}
},
"required": [
"id",
"editToken"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Community
Nachweis