eatmeprint-ordering
EatMePrint agent ordering: get_pricing, preview_set, place_order, check_order.
我該用這個嗎
品質與安全性
根據工具定義與協定合規性的自動化分析。
上下文成本
這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。
安裝
一鍵安裝
將以下內容加入你的 `claude_desktop_config.json` 檔案:
{
"mcpServers": {
"eatmeprint-ordering": {
"url": "https://eatmeprint-mcp.eatmeprint.workers.dev/mcp"
}
}
}遠端端點
https://eatmeprint-mcp.eatmeprint.workers.dev/mcpstreamable-http它能做什麼
工具清單
工具(4)
🟢get_pricing(zip, state)
Price, shipping cost, lead time and allergen information for an edible photo macaron set. Call this before ordering so you can tell the person what it costs and what is in it. Pass the delivery ZIP to get a firm shipping cost and total: it is the same live carrier rate place_order will book for that ZIP. Without a ZIP the reply is "$67 plus shipping".
輸入結構描述
{
"type": "object",
"properties": {
"zip": {
"type": "string",
"description": "Five-digit US delivery ZIP, e.g. \"90028\". Optional; gives a firm shipping quote."
},
"state": {
"type": "string",
"description": "Two-letter US state code, e.g. \"CA\" or \"NY\". Optional; wording only."
}
},
"additionalProperties": false
}🟢preview_set(images)
Build a printable set from exactly nine public image URLs, in grid order (left to right, top to bottom). Returns thumbnail previews, the price, and a set_hash to pass to place_order. Images must be JPEG or PNG, up to 10 MB each, reachable over plain https with no redirect. Private or internal addresses are refused. Nothing is charged and no order is created.
輸入結構描述
{
"type": "object",
"properties": {
"images": {
"type": "array",
"minItems": 9,
"maxItems": 9,
"items": {
"type": "string",
"description": "Public https URL to a JPEG or PNG."
},
"description": "Exactly nine image URLs in grid order."
}
},
"required": [
"images"
],
"additionalProperties": false
}🔴place_order(images, set_hash, add_to_cart_fields, email, recipient, ...)
Places a REAL order for physical macarons shipped to a real address, and returns a crypto deposit address to send funds to. Confirm the total, the delivery address and the allergen warning with the person you are acting for BEFORE calling this. Pass either `images` (nine URLs, simplest — the set is built for you) or the `set_hash` and `add_to_cart_fields` returned by a previous preview_set call. Returns an order id, a crypto deposit address and amount, and a status link that needs no account or password. The order only reaches the bakery after the payment confirms. A recipient phone number is REQUIRED - carriers need it to generate a label, so collect it before calling.
輸入結構描述
{
"type": "object",
"properties": {
"images": {
"type": "array",
"minItems": 9,
"maxItems": 9,
"items": {
"type": "string"
},
"description": "Nine public https image URLs in grid order. Simplest route: the set is built and carted for you. Omit if passing set_hash + add_to_cart_fields instead."
},
"set_hash": {
"type": "string",
"description": "From preview_set. Requires add_to_cart_fields too."
},
"add_to_cart_fields": {
"type": "object",
"description": "The `add_to_cart.fields` object exactly as returned by preview_set. Required when using set_hash instead of images.",
"additionalProperties": true
},
"email": {
"type": "string",
"description": "An address a human actually reads."
},
"recipient": {
"type": "object",
"description": "Who receives the box, and where.",
"properties": {
"first_name": {
"type": "string"
},
"last_name": {
"type": "string",
"description": "Optional."
},
"street": {
"type": "string",
"description": "Full street address. Include any apartment, suite, floor or company line HERE - there is no second address line."
},
"city": {
"type": "string"
},
"state": {
"type": "string",
"description": "Two-letter US state code."
},
"zip": {
"type": "string"
},
"phone": {
"type": "string",
"description": "REQUIRED. Recipient phone number, any format. Carriers need it to generate a shipping label. Ask your human for it before calling this tool."
}
},
"required": [
"first_name",
"street",
"city",
"state",
"zip",
"phone"
],
"additionalProperties": false
},
"pay_currency": {
"type": "string",
"description": "Crypto ticker to pay in, e.g. \"usdttrc20\". Optional; a default is chosen."
},
"shipping_id": {
"type": "string",
"description": "Optional: force a specific shipping-method instance id. Normally omit."
},
"note": {
"type": "string",
"description": "Optional short message for the card in the box."
},
"idempotency_key": {
"type": "string",
"description": "Optional explicit key. If omitted, one is derived from the order details, so retrying the identical request is safe and will not create a duplicate."
},
"confirm_total_usd": {
"type": "number",
"description": "Confirm a total your human has approved. Use this to RESUME an order that already exists: after an over-ceiling result, or when a repeat call matched an existing order and the payment instruction was withheld. Set it to the exact total shown. This never creates a second order - it returns the existing one WITH its payment instruction. This is the correct way to proceed; do NOT use reorder_nonce for this."
},
"max_total_usd": {
"type": "number",
"description": "Optional safety ceiling in USD. The shipping cost is only known once the order exists, so set this to the most your human agreed to pay. If the real total is higher, the order is still created but NO payment instruction is returned."
},
"reorder_nonce": {
"type": "string",
"description": "Set this ONLY to deliberately place a second, separate order with identical details (same set, same recipient). Any distinct value works. Without it, an identical repeat is treated as a retry and returns the original order."
}
},
"required": [
"email",
"recipient"
],
"additionalProperties": false
}🟢check_order(order_id, code)
Look up the current state of an order using the id and code from the status link. Needs no account and no password. Use this to report progress back to the person who asked.
輸入結構描述
{
"type": "object",
"properties": {
"order_id": {
"type": "string"
},
"code": {
"type": "string"
}
},
"required": [
"order_id",
"code"
],
"additionalProperties": false
}社群
證據