Make Parts Now: 3D Printing & CNC Machining Quotes
by makepartsnow.com · remote · no sign-in to list tools · v1.0.0 · published by com.makepartsnow
Instant quotes and ordering for 3D printing and CNC machining: SLS, FDM, aluminum and brass parts.
18 tools: 4 can delete or cancel things, 7 change things and 7 only read.
Scanned Oct 21, 2026
- Deletes or cancels4Claude Code: deny: see these tools
- Can't be undone0Claude Code: ask
- Changes things7Claude Code: ask: see these tools
- Only reads7Claude Code: allow: see these tools
1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http manufacturing https://makepartsnow.com/mcpFindings
Matches of fixed checks, with the text they matched.
- Warnget_upload_url
The server marks "get_upload_url" as not read-only (readOnlyHint: false), and its words say it reads.
What this check looks forMatched text
annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}; The name "get_upload_url" says "get": a word for reading.
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
18 tools
Deletes or cancels 4Claude Code: deny
create_checkout_linkOption A: get a Stripe Checkout URL for a human to pay by card (tax added at checkout).No findings
Why it is in this group
- The name "create_checkout_link" says "create": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it 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.
Annotations the server declares
- destructiveHint: true
- idempotentHint: false
- openWorldHint: true
- readOnlyHint: false
- title: Create checkout link
pay_with_cryptoOption B: pay autonomously in USDC via x402 (agent accounts only).No findings
Why it is in this group
- The name "pay_with_crypto" says "pay": a word that usually means money moves, which cannot be taken back.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it 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.
Annotations the server declares
- destructiveHint: true
- idempotentHint: false
- openWorldHint: true
- readOnlyHint: false
- title: Pay with USDC
update_accountChange the agent account's name, organization, email, default ship_to or callback_url; omitted fields stay.No findings
Why it is in this group
- The name "update_account" says "update": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it 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.
Annotations the server declares
- destructiveHint: true
- idempotentHint: true
- openWorldHint: false
- readOnlyHint: false
- title: Update account
update_quoteChange speed (economy|standard|fast|faster|fastest), ship_to, shipping_option, items.No findings
Why it is in this group
- The name "update_quote" says "update": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it 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.
Annotations the server declares
- destructiveHint: true
- idempotentHint: false
- openWorldHint: false
- readOnlyHint: false
- title: Update quote
Changes things 7Claude Code: ask
create_agent_accountCreate an autonomous agent account and API key.No findings
Why it is in this group
- The name "create_agent_account" says "create": a word for a change.
Description, as the server wrote it 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.
Annotations the server declares
- destructiveHint: false
- idempotentHint: false
- openWorldHint: true
- readOnlyHint: false
- title: Create agent account
create_quoteCreate a quote.No findings
Why it is in this group
- The name "create_quote" says "create": a word for a change.
Description, as the server wrote it 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.
Annotations the server declares
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
- readOnlyHint: false
- title: Create quote
discard_quoteClose a quote you no longer need, so it stops counting toward the open-quote limit.No findings
Why it is in this group
- The description's first verb is "close": a word for a change.
Description, as the server wrote it 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.
Annotations the server declares
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- readOnlyHint: false
- title: Discard quote
get_upload_urlGet a one-time URL to HTTP PUT a large file directly (no auth header needed).1 finding
Why it is in this group
- The name "get_upload_url" says "get": a word for reading.
- The server marks it as not read-only (readOnlyHint: false).
Findings
- Warn
The server marks "get_upload_url" as not read-only (readOnlyHint: false), and its words say it reads.
What this check looks forMatched text
annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}; The name "get_upload_url" says "get": a word for reading.
Description, as the server wrote it Get a one-time URL to HTTP PUT a large file directly (no auth header needed). Returns the part on upload.
Annotations the server declares
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
- readOnlyHint: false
- title: Get upload URL
request_order_cancellationAsk the shop to cancel an order that hasn't shipped.No findings
Why it is in this group
- The name "request_order_cancellation" says "request": a word for a change.
Description, as the server wrote it 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.
Annotations the server declares
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- readOnlyHint: false
- title: Request order cancellation
set_refund_preferenceFor USDC orders: receive refunds as 'usdc' (sent to the paying wallet) or 'credit' (account credit).No findings
Why it is in this group
- The name "set_refund_preference" says "set": a word for a change.
Description, as the server wrote it For USDC orders: receive refunds as 'usdc' (sent to the paying wallet) or 'credit' (account credit).
Annotations the server declares
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- readOnlyHint: false
- title: Set refund preference
upload_partUpload a CAD file (STL, 3MF, OBJ, STEP) from an https URL or base64 content (filename required for base64).No findings
Why it is in this group
- The name "upload_part" says "upload": a word for a change.
Description, as the server wrote it 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.
Annotations the server declares
- destructiveHint: false
- idempotentHint: false
- openWorldHint: true
- readOnlyHint: false
- title: Upload part
Only reads 7Claude Code: allow
get_accountThe authenticated account: contact email, default ship_to, credit balance, spending limits.No findings
Why it is in this group
- The name "get_account" says "get": a word for reading.
Description, as the server wrote it The authenticated account: contact email, default ship_to, credit balance, spending limits.
Annotations the server declares
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- readOnlyHint: true
- title: Get account
get_capabilitiesProcesses, materials, colors, finishes, services, speeds, file formats, limits and payment methods.No findings
Why it is in this group
- The name "get_capabilities" says "get": a word for reading.
Description, as the server wrote it Processes, materials, colors, finishes, services, speeds, file formats, limits and payment methods.
Annotations the server declares
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- readOnlyHint: true
- title: Get capabilities
get_orderOrder status, ship-by and arrive-by dates, tracking.No findings
Why it is in this group
- The name "get_order" says "get": a word for reading.
Description, as the server wrote it Order status, ship-by and arrive-by dates, tracking.
Annotations the server declares
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- readOnlyHint: true
- title: Get order
get_partPart status, measured geometry (mm), suggested units, DFM warnings, and processes that fit it.No findings
Why it is in this group
- The name "get_part" says "get": a word for reading.
Description, as the server wrote it 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.
Annotations the server declares
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- readOnlyHint: true
- title: Get part
get_quoteCurrent pricing, speeds, shipping options, warnings and next_steps for a quote.No findings
Why it is in this group
- The name "get_quote" says "get": a word for reading.
Description, as the server wrote it Current pricing, speeds, shipping options, warnings and next_steps for a quote.
Annotations the server declares
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- readOnlyHint: true
- title: Get quote
list_ordersOrders for this account, newest first.No findings
Why it is in this group
- The name "list_orders" says "list": a word for reading.
Description, as the server wrote it Orders for this account, newest first. Filter by quote_id to check whether a checkout link was paid.
Annotations the server declares
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- readOnlyHint: true
- title: List orders
list_quotesYour quotes, newest first: id, number, status, item_count, expires_at and the last priced total_before_tax.No findings
Why it is in this group
- The name "list_quotes" says "list": a word for reading.
Description, as the server wrote it 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.
Annotations the server declares
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- readOnlyHint: true
- title: List quotes
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http manufacturing https://makepartsnow.com/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__manufacturing__get_capabilities",
"mcp__manufacturing__get_account",
"mcp__manufacturing__get_part",
"mcp__manufacturing__get_quote",
"mcp__manufacturing__list_quotes",
"mcp__manufacturing__get_order",
"mcp__manufacturing__list_orders"
],
"ask": [
"mcp__manufacturing__create_agent_account",
"mcp__manufacturing__upload_part",
"mcp__manufacturing__get_upload_url",
"mcp__manufacturing__create_quote",
"mcp__manufacturing__discard_quote",
"mcp__manufacturing__set_refund_preference",
"mcp__manufacturing__request_order_cancellation"
],
"deny": [
"mcp__manufacturing__update_account",
"mcp__manufacturing__update_quote",
"mcp__manufacturing__create_checkout_link",
"mcp__manufacturing__pay_with_crypto"
]
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as manufacturing. Review it before you use it.