Server definition
- Hash
- sha256:4dde30c377c78503d4bf9c36d026916c40e11b9604b891b848f7f047800740e7
- What it is
- What a remote MCP server returned when asked what it offers: 6 tools
The blob, as servednamed by its sha256
{
"instructions": "GiftRoam sends gift baskets, flowers and treats to 200+ countries; a local partner in the destination country assembles and delivers. Typical flow: search_gifts (country required) → get_gift_details → optionally check_delivery when there is a deadline → create_checkout → show the summary, get the user's explicit OK, then share the checkout link (30-minute expiry). After payment the buyer receives an order token; get_order_status accepts only that token. This is a guest connection: list_my_orders needs the signed-in endpoint (/mcp/account); everything else works as a guest. Never collect the recipient's name, address, phone or email in the conversation — the checkout page does that. Never promise a delivery date the tools did not confirm. Prices are final and include delivery; taxes are shown at payment.",
"tools": [
{
"description": "Is delivery to a country (optionally a city, by a date, for a specific gift) feasible? Returns earliest/latest estimate and warnings (PO box, hotel, holiday window) with a suggested action. Use it whenever the user has a deadline.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"city": {
"description": "Destination city (used for warnings only; never store addresses in chat).",
"maxLength": 80,
"type": "string"
},
"country": {
"description": "Destination country, ISO-3166 alpha-2.",
"maxLength": 2,
"minLength": 2,
"type": "string"
},
"date_needed": {
"description": "YYYY-MM-DD the gift must arrive by.",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
},
"gift_id": {
"description": "Optional gift_id to use that gift's delivery window.",
"type": "string"
},
"locale": {
"description": "Language of the conversation with the user (e.g. he-IL, fr-FR). Localizes content and messages; prices and availability are unaffected.",
"maxLength": 12,
"type": "string"
}
},
"required": [
"country"
],
"type": "object"
},
"name": "check_delivery",
"outputSchema": {
"properties": {
"business_days": {
"properties": {
"max": {
"type": "number"
},
"min": {
"type": "number"
}
},
"type": "object"
},
"display_text": {
"description": "Human-readable one-line summary of the result",
"type": "string"
},
"earliest": {
"description": "ISO date of the earliest estimated delivery",
"type": "string"
},
"error": {
"description": "Present only when the call failed",
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"next_step": {
"type": [
"string",
"null"
]
}
},
"type": "object"
},
"feasible": {
"type": "boolean"
},
"latest": {
"description": "ISO date of the latest estimated delivery",
"type": "string"
},
"locale": {
"description": "BCP-47 locale the texts are localized to",
"type": "string"
},
"suggested_action": {
"type": [
"string",
"null"
]
},
"warnings": {
"items": {
"type": "string"
},
"type": "array"
}
},
"type": "object"
}
},
{
"description": "Create a signed, single-purpose checkout link (30-minute expiry) for one gift to one country. The schema has no recipient fields on purpose: name, address, phone, delivery details and payment are collected on the secure page. Show the returned summary and get the user's explicit confirmation before sharing the link. Use the same idempotency_key when retrying.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"country": {
"description": "Destination country, ISO-3166 alpha-2.",
"maxLength": 2,
"minLength": 2,
"type": "string"
},
"delivery_date": {
"description": "Requested delivery date YYYY-MM-DD; omit for as-soon-as-possible.",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
},
"gift_card_text": {
"description": "Card message (≤180 chars) if the user already gave one.",
"maxLength": 180,
"type": "string"
},
"gift_id": {
"description": "gift_id from search_gifts.",
"minLength": 1,
"type": "string"
},
"idempotency_key": {
"description": "Client-generated key; retries with the same key return the same link.",
"maxLength": 128,
"minLength": 8,
"type": "string"
},
"locale": {
"description": "Language of the conversation with the user (e.g. he-IL, fr-FR). Localizes content and messages; prices and availability are unaffected. The checkout page opens in this language.",
"maxLength": 12,
"type": "string"
},
"quantity": {
"const": 1,
"default": 1,
"description": "Always 1 in v1.",
"type": "number"
}
},
"required": [
"gift_id",
"country",
"idempotency_key"
],
"type": "object"
},
"name": "create_checkout",
"outputSchema": {
"properties": {
"checkout_url": {
"description": "Single-purpose secure checkout link on checkout.giftroam.com (30-minute expiry)",
"type": "string"
},
"display_text": {
"description": "Human-readable one-line summary of the result",
"type": "string"
},
"error": {
"description": "Present only when the call failed",
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"next_step": {
"type": [
"string",
"null"
]
}
},
"type": "object"
},
"expires_at": {
"type": "string"
},
"locale": {
"description": "BCP-47 locale the texts are localized to",
"type": "string"
},
"summary": {
"properties": {
"country": {
"type": "string"
},
"delivery_date": {
"type": "string"
},
"estimated_window": {
"properties": {
"earliest": {
"type": "string"
},
"latest": {
"type": "string"
}
},
"type": "object"
},
"gift": {
"type": "string"
},
"gift_message": {
"type": [
"string",
"null"
]
},
"notes": {
"items": {
"type": "string"
},
"type": "array"
},
"price": {
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
}
},
{
"description": "Full description, contents, images, customer price, estimated delivery window (EST cutoff-aware), substitution policy and restrictions for one gift in one destination country.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"country": {
"description": "Destination country, ISO-3166 alpha-2.",
"maxLength": 2,
"minLength": 2,
"type": "string"
},
"gift_id": {
"description": "gift_id from search_gifts (or the gift's URL slug).",
"minLength": 1,
"type": "string"
},
"locale": {
"description": "Display language for gift content (e.g. he-IL). Prices and availability are unaffected.",
"maxLength": 12,
"type": "string"
}
},
"required": [
"gift_id",
"country"
],
"type": "object"
},
"name": "get_gift_details",
"outputSchema": {
"properties": {
"display_text": {
"description": "Human-readable one-line summary of the result",
"type": "string"
},
"error": {
"description": "Present only when the call failed",
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"next_step": {
"type": [
"string",
"null"
]
}
},
"type": "object"
},
"gift": {
"properties": {
"contains_alcohol": {
"description": "yes | no | unknown",
"type": "string"
},
"contents": {
"items": {
"type": "string"
},
"type": "array"
},
"currency": {
"type": "string"
},
"customer_amount_minor": {
"description": "Price in minor units (cents)",
"type": "number"
},
"delivery_days": {
"description": "Business-day delivery estimate range",
"properties": {
"max": {
"type": "number"
},
"min": {
"type": "number"
}
},
"type": "object"
},
"description": {
"type": "string"
},
"display_price": {
"description": "Final customer price incl. delivery, e.g. \"$99.95\"",
"type": "string"
},
"estimated_delivery": {
"properties": {
"cutoff_passed_today": {
"type": "boolean"
},
"earliest": {
"type": "string"
},
"latest": {
"type": "string"
},
"notes": {
"items": {
"type": "string"
},
"type": "array"
}
},
"type": "object"
},
"gift_id": {
"type": "string"
},
"image_url": {
"type": "string"
},
"images": {
"items": {
"type": "string"
},
"type": "array"
},
"one_liner": {
"type": "string"
},
"restrictions": {
"items": {
"type": "string"
},
"type": "array"
},
"substitution_policy": {
"type": "string"
},
"tags": {
"items": {
"type": "string"
},
"type": "array"
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"type": "object"
},
"locale": {
"description": "BCP-47 locale the texts are localized to",
"type": "string"
},
"translation": {
"description": "How the gift content was localized",
"properties": {
"contentHash": {
"type": "string"
},
"provider": {
"type": [
"string",
"null"
]
},
"sourceLocale": {
"type": "string"
},
"status": {
"type": "string"
},
"targetLocale": {
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
}
},
{
"description": "Customer-facing status, ETA window and next action for an order. Requires the buyer's order token (delivered after payment) — the token is the credential; never guess or enumerate tokens. Never returns address, phone or payment details.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"locale": {
"description": "Language of the conversation with the user (e.g. he-IL, fr-FR). Localizes content and messages; prices and availability are unaffected.",
"maxLength": 12,
"type": "string"
},
"order_token": {
"description": "The order token from the buyer's confirmation (GR-XXXXX-…). Never guess tokens.",
"minLength": 1,
"type": "string"
}
},
"required": [
"order_token"
],
"type": "object"
},
"name": "get_order_status",
"outputSchema": {
"properties": {
"country": {
"type": "string"
},
"delivery_date": {
"type": [
"string",
"null"
]
},
"display_text": {
"description": "Human-readable one-line summary of the result",
"type": "string"
},
"error": {
"description": "Present only when the call failed",
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"next_step": {
"type": [
"string",
"null"
]
}
},
"type": "object"
},
"estimated_window": {
"properties": {
"earliest": {
"type": "string"
},
"latest": {
"type": "string"
}
},
"type": [
"object",
"null"
]
},
"gift": {
"type": "string"
},
"locale": {
"description": "BCP-47 locale the texts are localized to",
"type": "string"
},
"next_action": {
"type": "string"
},
"status": {
"description": "Machine status, e.g. confirmed | on_the_way | delivered | needs_attention",
"type": "string"
},
"status_label": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"type": "object"
}
},
{
"description": "The signed-in user's GiftRoam orders: status, ETA window, gift, destination and the order token for tracking. Requires the authenticated GiftRoam connection (OAuth, scope orders:read); on a guest connection it returns auth_required. Never returns addresses, phone numbers or payment details.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"default": 20,
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"locale": {
"description": "Language of the conversation with the user (e.g. he-IL, fr-FR). Localizes content and messages; prices and availability are unaffected.",
"maxLength": 12,
"type": "string"
}
},
"type": "object"
},
"name": "list_my_orders",
"outputSchema": {
"properties": {
"display_text": {
"description": "Human-readable one-line summary of the result",
"type": "string"
},
"error": {
"description": "Present only when the call failed",
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"next_step": {
"type": [
"string",
"null"
]
}
},
"type": "object"
},
"locale": {
"description": "BCP-47 locale the texts are localized to",
"type": "string"
},
"orders": {
"items": {
"properties": {
"amount_minor": {
"type": "number"
},
"country": {
"type": "string"
},
"created_at": {
"type": "string"
},
"currency": {
"type": "string"
},
"delivery_date": {
"type": [
"string",
"null"
]
},
"estimated_window": {
"properties": {
"earliest": {
"type": "string"
},
"latest": {
"type": "string"
}
},
"type": [
"object",
"null"
]
},
"gift": {
"type": "string"
},
"order_token": {
"type": "string"
},
"status": {
"type": "string"
},
"status_label": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"url": {
"type": "string"
}
},
"type": "object"
},
"type": "array"
},
"total": {
"type": "number"
}
},
"type": "object"
}
},
{
"description": "Find gifts that can be delivered to a destination country, optionally filtered by free text, occasion, budget (minor units) and a needed-by date. Returns a shortlist with final customer prices (delivery included) and delivery days. Paginate with cursor. Country is required — ask for it first.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"budget_max": {
"description": "Maximum price in minor units (cents).",
"maximum": 9007199254740991,
"minimum": 0,
"type": "integer"
},
"budget_min": {
"description": "Minimum price in minor units (cents).",
"maximum": 9007199254740991,
"minimum": 0,
"type": "integer"
},
"country": {
"description": "Destination country, ISO-3166 alpha-2 (e.g. FR).",
"maxLength": 2,
"minLength": 2,
"type": "string"
},
"cursor": {
"description": "Opaque cursor from a previous page.",
"type": "string"
},
"date_needed": {
"description": "YYYY-MM-DD; only gifts that can arrive by then.",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
},
"limit": {
"default": 10,
"maximum": 20,
"minimum": 1,
"type": "integer"
},
"locale": {
"description": "Display language for results (e.g. he-IL). The query may be typed in that language.",
"maxLength": 12,
"type": "string"
},
"occasion": {
"description": "Occasion slug from the occasions resource (e.g. birthday).",
"maxLength": 48,
"type": "string"
},
"query": {
"description": "Product keywords only, 1-4 words (e.g. 'chocolate basket', 'red roses'). Do NOT include the destination, recipient or occasion here - use the country/occasion fields. Omit for a general browse.",
"maxLength": 120,
"type": "string"
}
},
"required": [
"country"
],
"type": "object"
},
"name": "search_gifts",
"outputSchema": {
"properties": {
"country": {
"properties": {
"iso2": {
"type": "string"
},
"name": {
"type": "string"
}
},
"type": "object"
},
"date_warning": {
"description": "Present when the requested needed-by date is unreachable: results are shown WITHOUT the date filter",
"type": "string"
},
"display_text": {
"description": "Human-readable one-line summary of the result",
"type": "string"
},
"error": {
"description": "Present only when the call failed",
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"next_step": {
"type": [
"string",
"null"
]
}
},
"type": "object"
},
"locale": {
"description": "BCP-47 locale the texts are localized to",
"type": "string"
},
"next_cursor": {
"type": [
"string",
"null"
]
},
"results": {
"items": {
"properties": {
"contains_alcohol": {
"description": "yes | no | unknown",
"type": "string"
},
"currency": {
"type": "string"
},
"customer_amount_minor": {
"description": "Price in minor units (cents)",
"type": "number"
},
"delivery_days": {
"description": "Business-day delivery estimate range",
"properties": {
"max": {
"type": "number"
},
"min": {
"type": "number"
}
},
"type": "object"
},
"display_price": {
"description": "Final customer price incl. delivery, e.g. \"$99.95\"",
"type": "string"
},
"gift_id": {
"type": "string"
},
"image_url": {
"type": "string"
},
"one_liner": {
"type": "string"
},
"tags": {
"items": {
"type": "string"
},
"type": "array"
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"type": "object"
},
"type": "array"
},
"total": {
"type": "number"
}
},
"type": "object"
}
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:4dde30c377c78503d4bf9c36d026916c40e11b9604b891b848f7f047800740e7 | sha256sum