accueil / serveurs / Finance & Paiement / com.makepartsnow/manufacturing
com.makepartsnow/manufacturing
serveur MCP (Model Context Protocol) · Make Parts Now 1.0
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que com.makepartsnow/manufacturing est sûr ?
Au dernier audit MCP Hub, le serveur MCP « com.makepartsnow/manufacturing » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 18 outils
- create_agent_account≈ 399 tokens
Create an autonomous agent account and API key. accept_terms must be true (Terms of Sale + Agent Terms). ship_to: {name, line1, line2?, city, state, postal_code, country: 'US', phone?}. The api_key is shown once.
Paramètres, retour & exemple (6)
Paramètresname· string · requis
Name of the agent or app placing ordersemail· string · requis
Email that receives the account notice, receipts, and order problemsship_to· ? · optionnel
US shipping address: {name, line1, line2?, city, state, postal_code, country: 'US', phone?}accept_terms· boolean · requis
Must be true to accept the Terms of Sale and Agent Termscallback_url· ? · optionnel
Public https URL for signed part, quote, and order webhooksorganization· string · optionnel
Company or person operating the agent
Exemple d'appel{"name": "create_agent_account", "arguments": {"name": "texte", "email": "texte", "accept_terms": true}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - create_checkout_link≈ 230 tokens
Option A: get a Stripe Checkout URL for a human to pay by card (tax added at checkout). Each new link stops earlier links for the same quote from working.
Paramètres, retour & exemple (2)
Paramètresquote_id· string · requis
Quote id (qt_...) returned by create_quoteidempotency_key· ? · optionnel
Same key on a retry returns the first result instead of creating another
Exemple d'appel{"name": "create_checkout_link", "arguments": {"quote_id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - create_quote≈ 1631 tokens
Create a quote. items: [{part_id, quantity, config: {units, process, material, color, finishes, finish_color, services, infill, layer_height}}]. See get_capabilities for valid ids. Returns prices, speed options with ship/arrival dates, and next_steps.
Paramètres, retour & exemple (6)
Paramètresitems· array · requis
Parts to quote, each {part_id, quantity (1-100000), notes?, config: {units, process, material, color?, finishes?, finish_color?, services?, infill?, layer_height?}}speed· ? · optionnel
Production speed: economy, standard, fast, faster, or fastest (FDM only). Faster speeds add a rush fee; get_capabilities lists each process's speeds.ship_to· ? · optionnel
US shipping address: {name, line1, line2?, city, state, postal_code, country: 'US', phone?}po_number· ? · optionnel
Your purchase order number, printed on the quote and ordercontact_email· ? · optionnel
Email for receipts and order updates; defaults to the account emailidempotency_key· ? · optionnel
Same key on a retry returns the first result instead of creating another
Exemple d'appel{"name": "create_quote", "arguments": {"items": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"id": "texte", "items": [], "ready": true, "speed": "texte", "tiers": "texte", "number": "texte", "status": "texte", "totals": "texte", "ship_to": "texte", "blocking": "texte", "tax_note": "texte", "min_order": "texte"}} - discard_quote≈ 204 tokens
Close a quote you no longer need, so it stops counting toward the open-quote limit. It becomes 'expired': its checkout links and USDC payment requests stop working and it can't be paid. Discarding it again is harmless. An ordered quote, or one with a USDC payment received, can't be discarded.
Paramètres, retour & exemple (1)
Paramètresquote_id· string · requis
Quote id (qt_...) returned by create_quote
Exemple d'appel{"name": "discard_quote", "arguments": {"quote_id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_account≈ 114 tokens
The authenticated account: contact email, default ship_to, credit balance, spending limits.
Paramètres, retour & exemple (0)
Exemple d'appel{"name": "get_account", "arguments": {}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_capabilities≈ 121 tokens
Processes, materials, colors, finishes, services, speeds, file formats, limits and payment methods.
Paramètres, retour & exemple (0)
Exemple d'appel{"name": "get_capabilities", "arguments": {}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_order≈ 140 tokens
Order status, ship-by and arrive-by dates, tracking.
Paramètres, retour & exemple (1)
Paramètresorder_id· string · requis
Order id (ord_...) from list_orders or the paid quote
Exemple d'appel{"name": "get_order", "arguments": {"order_id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_part≈ 228 tokens
Part status, measured geometry (mm), suggested units, DFM warnings, and processes that fit it. Pass wait_seconds to wait for a pending part's analysis in this call instead of polling.
Paramètres, retour & exemple (2)
Paramètrespart_id· string · requis
Part id (prt_...) returned by upload_part or get_upload_urlwait_seconds· integer · optionnel
Seconds (0-30) to wait server-side for the analysis to finish before answering; 0 answers at once
Exemple d'appel{"name": "get_part", "arguments": {"part_id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_quote≈ 1266 tokens
Current pricing, speeds, shipping options, warnings and next_steps for a quote.
Paramètres, retour & exemple (1)
Paramètresquote_id· string · requis
Quote id (qt_...) returned by create_quote
Exemple d'appel{"name": "get_quote", "arguments": {"quote_id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"id": "texte", "items": [], "ready": true, "speed": "texte", "tiers": "texte", "number": "texte", "status": "texte", "totals": "texte", "ship_to": "texte", "blocking": "texte", "tax_note": "texte", "min_order": "texte"}} - get_upload_url≈ 206 tokens
Get a one-time URL to HTTP PUT a large file directly (no auth header needed). Returns the part on upload.
Paramètres, retour & exemple (2)
Paramètresfilename· string · requis
File name with extension (.stl, .3mf, .obj, .step)no_controlled_data· boolean · requis
Must be true: confirms the file contains no CUI, ITAR, or export-controlled data
Exemple d'appel{"name": "get_upload_url", "arguments": {"filename": "texte", "no_controlled_data": true}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - list_orders≈ 184 tokens
Orders for this account, newest first. Filter by quote_id to check whether a checkout link was paid.
Paramètres, retour & exemple (1)
Paramètresquote_id· ? · optionnel
Only orders for this quote id (qt_...)
Exemple d'appel{"name": "list_orders", "arguments": {"quote_id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"result": []}} - list_quotes≈ 269 tokens
Your quotes, newest first: id, number, status, item_count, expires_at and the last priced total_before_tax. Nothing is repriced; use get_quote for current prices. Use it to find quotes to discard when you hit the open-quote limit.
Paramètres, retour & exemple (2)
Paramètreslimit· integer · optionnel
How many to return, newest first (1-200)status· string · optionnel · open | expired | ordered | all
Which quotes: 'open' (the default), 'expired' (discarded), 'ordered', or 'all'
Exemple d'appel{"name": "list_quotes", "arguments": {"limit": 1, "status": "open"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"result": []}} - pay_with_crypto≈ 404 tokens
Option B: pay autonomously in USDC via x402 (agent accounts only). Call without payment_signature to get the payment requirements (amount, asset, pay_to, network); nothing is charged. Then sign an x402 'exact' payment and call again with payment_signature (the base64 PAYMENT-SIGNATURE value). If account credit covers the whole total, you get status 'credit_confirmation_required' and a credit_confirmation token instead; call again with confirm_credit to place the order.
Paramètres, retour & exemple (4)
Paramètresquote_id· string · requis
Quote id (qt_...) returned by create_quoteuse_credit· boolean · optionnel
Apply account credit before charging USDCconfirm_credit· ? · optionnel
The credit_confirmation token from the previous call, to place an order fully paid by account creditpayment_signature· ? · optionnel
Base64 x402 PAYMENT-SIGNATURE for the requirements from the first call; omit to get the requirements
Exemple d'appel{"name": "pay_with_crypto", "arguments": {"quote_id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - request_order_cancellation≈ 250 tokens
Ask the shop to cancel an order that hasn't shipped. A person reviews it; production may already have started. Asking again within 24 hours adds the reason without notifying the shop twice. The order.status_changed webhook and get_order show the outcome.
Paramètres, retour & exemple (2)
Paramètresreason· string · requis
Why the order should be canceled, for the person who reviews itorder_id· string · requis
Order id (ord_...) from list_orders or the paid quote
Exemple d'appel{"name": "request_order_cancellation", "arguments": {"reason": "texte", "order_id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - set_refund_preference≈ 210 tokens
For USDC orders: receive refunds as 'usdc' (sent to the paying wallet) or 'credit' (account credit).
Paramètres, retour & exemple (2)
Paramètresmethod· string · requis · usdc | credit
'usdc' sends refunds to the paying wallet; 'credit' adds them to account creditorder_id· string · requis
Order id (ord_...) from list_orders or the paid quote
Exemple d'appel{"name": "set_refund_preference", "arguments": {"method": "usdc", "order_id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - update_account≈ 379 tokens
Change the agent account's name, organization, email, default ship_to or callback_url; omitted fields stay. A new email or callback_url is emailed to the previous account email. Agent accounts only.
Paramètres, retour & exemple (5)
Paramètresname· ? · optionnel
Name of the agent or app placing ordersemail· ? · optionnel
Email for the account notice, receipts, and order problemsship_to· ? · optionnel
US shipping address: {name, line1, line2?, city, state, postal_code, country: 'US', phone?}callback_url· ? · optionnel
Public https URL for signed part, quote, and order webhooks; empty string removes itorganization· ? · optionnel
Company or person operating the agent
Exemple d'appel{"name": "update_account", "arguments": {"name": "texte", "email": "texte", "ship_to": "texte", "callback_url": "texte", "organization": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - update_quote≈ 1772 tokens
Change speed (economy|standard|fast|faster|fastest), ship_to, shipping_option, items. update_items: [{item_id, quantity?, config?, notes?}] where config is merged into the item's config.
Paramètres, retour & exemple (9)
Paramètresspeed· ? · optionnel
Production speed: economy, standard, fast, faster, or fastest (FDM only). Faster speeds add a rush fee; get_capabilities lists each process's speeds.ship_to· ? · optionnel
US shipping address: {name, line1, line2?, city, state, postal_code, country: 'US', phone?}quote_id· string · requis
Quote id (qt_...) returned by create_quoteadd_items· ? · optionnel
Parts to add, each {part_id, quantity (1-100000), notes?, config: {units, process, material, color?, finishes?, finish_color?, services?, infill?, layer_height?}}po_number· ? · optionnel
Your purchase order number, printed on the quote and orderupdate_items· ? · optionnel
Changes to existing items: [{item_id, quantity?, config?, notes?}]; config is merged into the item's configcontact_email· ? · optionnel
Email for receipts and order updates; defaults to the account emailremove_item_ids· ? · optionnel
Item ids (itm_...) to remove from the quoteshipping_option· ? · optionnel
Shipping option id from the quote's shipping_options
Exemple d'appel{"name": "update_quote", "arguments": {"quote_id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"id": "texte", "items": [], "ready": true, "speed": "texte", "tiers": "texte", "number": "texte", "status": "texte", "totals": "texte", "ship_to": "texte", "blocking": "texte", "tax_note": "texte", "min_order": "texte"}} - upload_part≈ 503 tokens
Upload a CAD file (STL, 3MF, OBJ, STEP) from an https URL or base64 content (filename required for base64). MCP requests are limited to 4 MB, so base64 works for files up to about 3 MB; use a URL or get_upload_url for larger files. no_controlled_data must be true: confirms the file has no CUI/ITAR/export-controlled data. Returns a part with status 'pending'; poll get_part until 'ready' (usually seconds), or pass wait_seconds.
Paramètres, retour & exemple (6)
Paramètresurl· ? · optionnel
Public https URL of the CAD file; we fetch it server-sidefilename· ? · optionnel
File name with extension (.stl, .3mf, .obj, .step); required with content_base64wait_seconds· integer · optionnel
Seconds (0-30) to wait server-side for the analysis to finish before answering; 0 answers at oncecontent_base64· ? · optionnel
The file's bytes, base64-encoded (up to about 3 MB)idempotency_key· ? · optionnel
Same key on a retry returns the first result instead of creating anotherno_controlled_data· boolean · requis
Must be true: confirms the file contains no CUI, ITAR, or export-controlled data
Exemple d'appel{"name": "upload_part", "arguments": {"no_controlled_data": true}}Exemple de retour{"content": [{"type": "text", "text": "…"}]}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».