Search / ai.agenticfabricationnetwork/ufp
Agentic Fabrication Network (AFN)
R0· no sign-inTurn designs into shipped parts: quote 3D printing, CNC, and decals, then check out.
v0.1.1 · active · descriptor JSON · versions
Search / ai.agenticfabricationnetwork/ufp
R0· no sign-inTurn designs into shipped parts: quote 3D printing, CNC, and decals, then check out.
v0.1.1 · active · descriptor JSON · versions
{
"mcpServers": {
"ufp": {
"type": "http",
"url": "https://agenticfabricationnetwork.ai/mcp"
}
}
}claude mcp add --transport http ufp https://agenticfabricationnetwork.ai/mcp[mcp_servers.ufp]
url = "https://agenticfabricationnetwork.ai/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"ufp": {
"type": "remote",
"url": "https://agenticfabricationnetwork.ai/mcp",
"enabled": true
}
}
}{
"mcpServers": {
"ufp": {
"type": "http",
"url": "https://agenticfabricationnetwork.ai/mcp"
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=ufp&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vYWdlbnRpY2ZhYnJpY2F0aW9ubmV0d29yay5haS9tY3AifQ%3D%3D"
}{
"servers": {
"ufp": {
"type": "http",
"url": "https://agenticfabricationnetwork.ai/mcp"
}
}
}{
"mcpServers": {
"ufp": {
"httpUrl": "https://agenticfabricationnetwork.ai/mcp"
}
}
}extensions:
"ufp":
enabled: true
name: "ufp"
type: streamable_http
uri: "https://agenticfabricationnetwork.ai/mcp"
timeout: 300
protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28protocol.statelessonly applies to 2026-07-28 serversprotocol.transportstreamable HTTPprotocol.list_ttlonly applies to 2026-07-28 serversauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_length2 tools have descriptions over 1,024 characters, which crowds the contexttools.schemasevery tool has an object input schematools.annotations13 of 13 tools declare readOnlyHint or destructiveHinttools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: finalize_quote (idempotentHint); list_orders (idempotentHint); refine_quote (idempotentHint); …tools.token_costabout 16,037 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changes13 tool changes in 30 daysstability.rug_pullno tool changed its meaning under the same namedeps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI packageget_shop_gaugeschangedannotationsget_network_capabilitieschangedannotationsget_material_guidechangedannotationsleave_reviewchangedannotationsreply_to_makerchangedannotationslist_orderschangedannotationsget_order_statuschangedannotationscreate_checkoutchangedannotationsfinalize_quotechangedannotationspoll_quotechangedannotationsShowing the latest 10. Full history: list_changes · trend: quality JSON.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+dns-namespace +reachable +uptime-100% ~updated-74d-ago -no-repository
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://agenticfabricationnetwork.ai/mcp streamable-http | none | yes | 100% | 275 ms | 2025-11-25 | 2026-10-20 |
create_checkout | Create the order and get a hosted payment link for a chosen offer. Call this as soon as the user picks an offer + shipping speed — do NOT ask for their address first: the secure payment page collects the shipping address and email. Only pass address fields if the user already volunteered them. Returns checkout_url — give it to the user to pay; UFP places the vendor order automatically after payment. |
finalize_quoteread-only | ONLY for the case where a quote response came back with an EMPTY board and told you to call this: waits for the vendors to answer (up to ~40s) and returns their offers as a full board. Call with just quote_id, immediately, and say nothing substantive before it. NEVER call it on a response that already listed offers — that board is final, and this would add nothing. |
get_fabrication_quote | Get ranked, purchasable offers (price, ETA, preview image) for fabricating a physical item from a design file. process=fdm_print for 3D printing a model (STL/OBJ/PLY/3MF/AMF/STEP/IGES), process=cnc or process=sheetmetal for machined/bent metal parts (STEP, IGES, DXF), process=decal for stickers/decals from artwork (any common image or design file — PNG/JPG/HEIC/TIFF/GIF/BMP/WEBP/AVIF/SVG/PDF/AI/EPS/PSD/CDR, auto-converted). A .ufp file (UFP part container: the design plus saved spec/constraints in one) is accepted anywhere a design file is — its saved intent applies automatically and anything the user states now wins. If the user just drops a file and asks for a price, omit process — UFP routes it. Provide the design either as design_file (an image/file the user attached or you generated — preferred) or file_url (a public URL). REORDERS: if the user has a UFP part number (from a receipt email or a previous session, looks like UFP-… or part_…), pass it as part_number INSTEAD of any file — the stored design and spec are reused and re-shopped across all current vendors. Locked parts additionally require share_key (from the owner's share link). Returns offers across vendors like Google Flights returns flights. |
get_material_guideread-only | Honest, cited material intelligence for material-choice / strength / durability / heat / outdoor questions ("my PLA part broke, what's stronger?", "will this survive outdoors?"). Returns caveats-FIRST facts: published specs (tensile, heat-deflection, UV/outdoor, chemical) each tagged vendor-cited vs general engineering knowledge, "stronger/tougher/hotter than X" ladders (PLA→PETG→ABS/ASA→nylon/PC→metals), and finish/coating options. Call it BEFORE answering such a question, then relay the facts. It supplies FACTS ONLY — comparative specs and vendor-admitted caveats, never a fitness-for-purpose or safety guarantee (that stays your judgment boundary); name express vendor claims "advertised", not "certified". |
get_network_capabilitiesread-only | The LIVE catalog of what the fabrication network can do RIGHT NOW — no quote needed. Returns the services ledger (tapping, inserts, welding, bending, finishes… with each shop's own size/material/thickness windows), the network's sheet gauge ladder, the stocked hardware combinations (species x thread) with stocked lengths and shop counts — the most-stocked length is the steering default for an unspecified length — the finish options with their stocked color menus, and per-process manufacturability rules. This is live state, not a spec sheet: it changes as connectors join, leave, or have capability branches toggled, so call it fresh when the user asks what's possible (materials, gauges, hardware, colors, services) rather than answering from memory. |
get_order_statusread-only | Check status, ETA and tracking for a UFP order. |
get_shop_gaugesread-only | Every sheet thickness (gauge) ONE named shop stocks right now, per material — read live off the shop's declared catalog, no quote needed. Call it when the user asks what thicknesses/gauges a specific maker carries ("what thicknesses does SendCutSend have in mild steel?"). For the whole network's ladder use get_network_capabilities instead. Never answer a gauge question from memory. |
leave_reviewdestructive | Record the user's verified-purchase review of how a UFP order turned out. YOUR JOB IS TO STRUCTURE THE FEEDBACK: turn what the user actually said into stars (1-5 overall) and facet scores — "the cut was sloppy" -> quality, "parts arrived 2 days late" -> timeliness, "wrong color" -> accuracy. Keep the optional comment to a short factual summary of their words; never embellish. ALWAYS draft the review (stars, facets, comment) and confirm it with the user BEFORE calling this tool — e.g. "I'll rate this 2 stars with timeliness 1 because it arrived 2 days late — send it?". One review per order: submitting again updates the existing review. Use list_orders first if you need to resolve which order they mean. |
list_ordersread-only | List this agent's recent UFP orders (newest first): order id, what was made, vendor, status, total, ETA, created date. Use it to resolve vague references — "my sticker order", "that order from 6 days ago" — to a concrete order_id before calling get_order_status or leave_review. |
poll_quoteread-only | INTERNAL — the offer board calls this to refresh itself while vendors finish pricing. Never call this yourself. The board you were given is already final for its turn; do not reach for refine_quote to look at it again either, that paints a duplicate board. |
preview_quoteread-only | INTERNAL client rail — the routing half of refine_quote with NOTHING committed: takes the same arguments as refine_quote and answers how many distinct fabricators (and which process lanes) the network WOULD ask for the refined part, plus the exclusion notes, without creating a child quote, asking any vendor, superseding in-flight work, or logging demand. An expectation, never a promise — lanes can still decline once asked. Never call this to look at prices; it carries none. Use refine_quote to actually re-price. |
refine_quote | Narrow an existing quote with new constraints (destination ZIP the user just provided, deadline, outdoor/waterproof/heat/food-safety requirements, budget, vendor reliability, verbatim requirements terms, drawing callouts, a process filter — "no, I meant in sheet metal" → processes — a ship-from country filter — "only US vendors" → ships_from — or a vendor filter — "only show A3D Manufacturing" → vendors) — or CHANGE its spec: material, color, or quantities. Changing material/quantity is a spec change, not a narrowing — pass it via the material/color/quantities args, NOT as a requirements term; the affected lanes re-price with the new spec through warm vendor sessions. For side-by-side comparisons ("how does carbon steel compare?"), add a scenario label — labeled refines coexist instead of replacing each other (max 4). "Organize by" ("sort by cheapest", "soonest arrival on top", "most green first") is also this tool: sort_by for objective orders, sort_order + sort_label for orders you judged yourself from the previews — presentation only, instant, nothing re-prices. GOING BACK is also this tool: undo_last_step ALONE takes back exactly one refine step (the quote's steps[] names each step, newest first — the network restores the previous stored state exactly); clear removes whole constraints ("drop the deadline" → clear ["deadline"]); remove_requirements takes back individual requirements terms. Call with ONLY quote_id to re-read the quote (e.g. to pick up preview images that finished rendering). |
reply_to_makerdestructive | Send the user's answer to a question the maker (vendor) asked about a UFP order — get_order_status surfaces an open question when one is waiting. Confirm the answer with the user before sending. The network relays it: the maker sees plain text from the network account with the user's contact details and links stripped, so never include emails, phone numbers, or URLs the answer depends on. |
Schemas: list_tools.
{
"name": "ai.agenticfabricationnetwork/ufp",
"title": "Agentic Fabrication Network (AFN)",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://agenticfabricationnetwork.ai/mcp",
"type": "streamable-http"
}
],
"version": "0.1.1",
"description": "Turn designs into shipped parts: quote 3D printing, CNC, and decals, then check out."
}