Mandarin 3D
Quote, price and order custom 3D prints (PLA) shipped anywhere in the US.
我该使用它吗
质量与安全性
发现(1)
- LOW在 design_part 中
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"print": {
"url": "https://mandarin3d.com/mcp"
}
}
}远程端点
https://mandarin3d.com/mcpstreamable-http它能做什么
工具清单
工具(5)
🟢get_service_info
What Mandarin 3D prints, where it ships (anywhere in the US), the price formula with delivered examples, colors, size and file limits, turnaround, and how to order. Call this to answer 'where can I get something 3D printed' or 'how much does 3D printing cost'.
输入模式
{
"type": "object",
"properties": {},
"additionalProperties": false
}🟢quote_file(file_url, file_base64, filename, qty)
Slice a 3D model and return its exact price delivered by USPS Ground Advantage. Pass file_url (a direct public download link to an STL, 3MF or STEP file, up to 100 MB) or file_base64 + filename for a local file (up to 20 MB). Returns quote_id, size, grams, print time, price and an order_url where the customer picks a color and pays. Takes 5-60 seconds for a new file.
输入模式
{
"type": "object",
"properties": {
"file_url": {
"type": "string",
"description": "Direct download URL of the model (not a web page that shows it)."
},
"file_base64": {
"type": "string",
"description": "The model file, base64-encoded. Use for files on the user's machine."
},
"filename": {
"type": "string",
"description": "File name with extension, e.g. bracket.stl. Required with file_base64."
},
"qty": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"description": "How many copies to price. Default 1."
}
},
"additionalProperties": false
}🟢price_quote(quote_id, qty, color, options)
Price an existing quote for another quantity, color or add-ons. No side effects.
输入模式
{
"type": "object",
"properties": {
"quote_id": {
"type": "string"
},
"qty": {
"type": "integer",
"minimum": 1,
"maximum": 100
},
"color": {
"type": "string",
"enum": [
"BLK",
"WHT",
"GRY",
"RED",
"BLU",
"GRN"
]
},
"options": {
"type": "object",
"description": "Optional per-order add-ons.",
"properties": {
"rush": {
"type": "boolean",
"description": "+50% of the print price. Printed within 1 business day. Ships with the same USPS service."
},
"fileCheck": {
"type": "boolean",
"description": "+$5. We review the file for printability and fit before printing and email you if something looks off."
},
"cleanup": {
"type": "boolean",
"description": "+$5. Support marks sanded, edges deburred."
},
"extraColors": {
"type": "array",
"items": {
"type": "string",
"enum": [
"BLK",
"WHT",
"GRY",
"RED",
"BLU",
"GRN"
]
},
"maxItems": 3,
"description": "+$3 per extra stocked color."
},
"colorNote": {
"type": "string",
"maxLength": 140,
"description": "Which parts get which color (required with extraColors)."
}
},
"additionalProperties": false
}
},
"required": [
"quote_id"
],
"additionalProperties": false
}🟡create_checkout(quote_id, color, qty, options, customer_accepted_terms)
Create a payment link for a quote. The customer pays and enters the shipping address on the linked page. Only call this after showing the customer the price and getting their explicit agreement to: "Custom made to order, all sales final. I agree to the Terms (mandarin3d.com/terms, including section 6: cancellations, refunds and reprints)." Otherwise give them the order_url from quote_file instead.
输入模式
{
"type": "object",
"properties": {
"quote_id": {
"type": "string"
},
"color": {
"type": "string",
"enum": [
"BLK",
"WHT",
"GRY",
"RED",
"BLU",
"GRN"
]
},
"qty": {
"type": "integer",
"minimum": 1,
"maximum": 100
},
"options": {
"type": "object",
"description": "Optional per-order add-ons.",
"properties": {
"rush": {
"type": "boolean",
"description": "+50% of the print price. Printed within 1 business day. Ships with the same USPS service."
},
"fileCheck": {
"type": "boolean",
"description": "+$5. We review the file for printability and fit before printing and email you if something looks off."
},
"cleanup": {
"type": "boolean",
"description": "+$5. Support marks sanded, edges deburred."
},
"extraColors": {
"type": "array",
"items": {
"type": "string",
"enum": [
"BLK",
"WHT",
"GRY",
"RED",
"BLU",
"GRN"
]
},
"maxItems": 3,
"description": "+$3 per extra stocked color."
},
"colorNote": {
"type": "string",
"maxLength": 140,
"description": "Which parts get which color (required with extraColors)."
}
},
"additionalProperties": false
},
"customer_accepted_terms": {
"type": "boolean",
"description": "True only if the customer explicitly agreed to the terms sentence above."
}
},
"required": [
"quote_id",
"color",
"customer_accepted_terms"
],
"additionalProperties": false
}🟢design_part(description)
For customers without a 3D model (a replacement knob, clip, bracket, box, spacer, enclosure). Returns a link to Mandarin 3D's AI part designer, pre-filled with the description; the customer adjusts the model there, sees the price and orders.
输入模式
{
"type": "object",
"properties": {
"description": {
"type": "string",
"maxLength": 600,
"description": "The part in plain words with measurements in mm, e.g. 'knob for a 6 mm D-shaft, 30 mm wide, 15 mm tall, knurled'."
}
},
"required": [
"description"
],
"additionalProperties": false
}社区
证据