MechanoFab
REMOTE · MCP.MECHANOFAB.COM
Manufacturing capability graph for AI agents: materials, processes, tolerances, and instant quotes.
Available components
Last scanned (23 hours ago)
Scores higher than 85% of remote servers
Reachable. Last reached 16 Oct 2026.
Category IoT and Hardware
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security97
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation is enforced on tool calls, advertised via RFC 9728 protected-resource metadata. Discovery is public, which costs nothing: no tool can be invoked without a token. View diagnostics → Pass
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability71
- AI-judged instruction clarity (good).Pass
- Tool/resource definitions use about 1957 tokens (~97/item across 20 items; 20 tools + 0 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management13
- Stability observed for 4 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage81
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 42% of tool parameters carry a description.Partial
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 20 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 20 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 16 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 10 to 13. That category is still filling its 30-day observation window: 3 days of observed history at the previous scan, 4 at this one. The score rises as the window fills, whether or not the server changes.
- 14 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.
- 13 Oct 26 0
- Stability: unverified → 0.03 ▲ functional
- 12 Oct 26 78
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 16 Oct 2026 · Probed https://mcp.mechanofab.com/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=mechanofab.com | CN=WE1,O=Google Trust Services,C=US | 20 Sept 2026 | 19 Dec 2026 | ECDSA 256 | ECDSA-SHA256 | 5c44cd0689942a190eef20b6dd5210bd |
| SANs: mechanofab.com, *.mechanofab.com | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of mcp.mechanofab.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| mechanofab.com. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication Enforced and verified
The endpoint asked for a token and published valid RFC 9728 metadata describing how to get one.
| Result | Enforced and verified |
|---|---|
| Enforced | On tool calls |
| HTTP status | 200 |
WWW-Authenticate challenge Bearer resource_metadata="https://mcp.mechanofab.com/.well-known/oauth-protected-resource"
Bearer resource_metadata="https://mcp.mechanofab.com/.well-known/oauth-protected-resource" | Header | Value |
|---|---|
| strict-transport-security | max-age=31536000; includeSubDomains; preload |
| x-content-type-options | nosniff |
Protected resource metadata
| Document | https://mcp.mechanofab.com/.well-known/oauth-protected-resource |
|---|---|
| Retrieved | Yes |
| Resource | https://mcp.mechanofab.com/mcp |
| Authorisation server | https://clerk.mechanofab.com |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://mcp.mechanofab.com/mcp | Verified | 200 | |
| http (plaintext) | http://mcp.mechanofab.com/mcp | HTTPS enforced | 301 | https://mcp.mechanofab.com/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
calculate_part_mass ~78
Use when the user provides a part volume and material to calculate mass or weight. Returns mass in grams and kilograms. Example: 'How heavy is a 100cm³ aluminum 6061 part?'
| Name | Type | Req | Description |
|---|---|---|---|
| material_id | string | yes | Material_ID from the materials dictionary |
| volume_cm3 | number | yes | Part volume in cubic centimeters |
No output schema declared.
No examples provided.
check_equipment_capability ~84
Use when the user asks 'can the Bambu X1C print a 400mm × 400mm × 400mm part?', 'does this machine support 25 micron layer thickness?', 'is this machine capable for this part?'. Returns capable/not-capable with specific gaps.
| Name | Type | Req | Description |
|---|---|---|---|
| model_id | string | yes | – |
| required | object | – | – |
No output schema declared.
No examples provided.
check_material_environment_compatibility ~72
Use when the user describes an operating environment (temperature, humidity, UV, chemicals) and wants to know if a material is suitable. Returns a compatibility rating (excellent/good/fair/poor) and specific risk factors.
| Name | Type | Req | Description |
|---|---|---|---|
| environment | object | yes | – |
| material_id | string | yes | – |
No output schema declared.
No examples provided.
check_service_temperature ~86
Use when the user specifies an operating temperature and asks if a material is suitable (e.g. 'can ABS handle 80°C?', 'what is the max temp for 6061 aluminum?'). Returns within_range status, min/max service temps, and safety margin.
| Name | Type | Req | Description |
|---|---|---|---|
| material_id | string | yes | – |
| service_temp_c | number | yes | Desired operating temperature in °C |
No output schema declared.
No examples provided.
compare_equipment ~74
Use when the user wants to compare specific machines (e.g. 'compare Formlabs Form 3 vs Stratasys J55', 'which machine has better build volume?'). Accepts 2–4 model IDs and optional metric list.
| Name | Type | Req | Description |
|---|---|---|---|
| compare_on | array | – | – |
| model_ids | array | yes | – |
No output schema declared.
No examples provided.
compare_materials ~104
Use when the user asks to compare materials (e.g. 'AL6061 vs SS304', 'which plastic is stronger'). Returns a structured comparison table grouped by property. Accepts 2–5 material IDs and an optional list of properties to compare.
| Name | Type | Req | Description |
|---|---|---|---|
| material_ids | array | yes | List of Material_IDs to compare |
| properties | array | – | Optional: which properties to include. Defaults to density, tensile, yield, max_temp, cost_tier. |
No output schema declared.
No examples provided.
compare_processes ~85
Use when the user wants to compare manufacturing processes (e.g. 'SLS vs FDM vs SLA comparison', 'which process has better tolerance: CNC or injection molding?'). Accepts 2–5 process IDs and optional metric list.
| Name | Type | Req | Description |
|---|---|---|---|
| compare_on | array | – | Optional: metrics to include. Omit for all metrics. |
| process_ids | array | yes | – |
No output schema declared.
No examples provided.
filter_materials_by_constraint ~93
Use when the user specifies material requirements (e.g. 'density < 3 g/cm³', 'tensile > 400 MPa', 'max temp ≥ 200°C'). Returns all materials that pass every constraint. Supports gte, lte, eq, contains operators.
| Name | Type | Req | Description |
|---|---|---|---|
| constraints | array | yes | – |
| process_id | string | – | Optional: only return materials compatible with this process |
No output schema declared.
No examples provided.
find_alternative_processes ~80
Use when the user asks 'what can replace FDM for this part?', 'alternative to CNC for low volumes?', or needs to switch process due to lead time / cost / material constraints.
| Name | Type | Req | Description |
|---|---|---|---|
| constraints | object | – | – |
| material_id | string | – | Optional: filter alternatives compatible with this material. |
| process_id | string | yes | – |
No output schema declared.
No examples provided.
find_equipment_by_process ~107
Use when the user asks 'what machines can do SLS?', 'do you have equipment that can print 300mm × 300mm?', 'which printers support PEEK material?'. Returns matching equipment with build volumes, layer thickness, and availability status.
| Name | Type | Req | Description |
|---|---|---|---|
| build_size_min_mm | object | – | – |
| layer_thickness_max_micron | number | – | – |
| material_id | string | – | Optional: filter by material compatibility. |
| process_id | string | yes | – |
No output schema declared.
No examples provided.
find_equivalent_materials ~90
Use when the user wants alternatives to a specific material (e.g. 'what can replace SS304?', 'cheaper alternative to titanium'). Returns materials ranked by similarity score. Match criteria include strength, density, cost_tier, process_compat, thermal, corrosion.
| Name | Type | Req | Description |
|---|---|---|---|
| match_criteria | array | yes | – |
| material_id | string | yes | – |
| max_results | number | – | – |
No output schema declared.
No examples provided.
get_equipment_qc_specs ~71
Use when the user asks about machine certifications, dimensional accuracy, or QC procedures (e.g. 'is this machine ISO certified?', 'what is the dimensional accuracy of the EOS M 290?', 'what inspection methods do you use for this machine?').
| Name | Type | Req | Description |
|---|---|---|---|
| model_id | string | yes | – |
No output schema declared.
No examples provided.
get_industry_requirements ~59
Use when the user asks industry-specific requirements (e.g. 'what materials are used in aerospace?', 'what certifications does the medical device industry require?', 'typical tolerances for automotive parts?').
| Name | Type | Req | Description |
|---|---|---|---|
| industry_id | string | yes | – |
No output schema declared.
No examples provided.
get_iso2768_tolerances ~118
Use when the user asks about ISO 2768 tolerances (e.g. 'what is ISO 2768-m tolerance for 50mm?', 'ISO 2768 fine grade flatness?', 'general tolerance for machined parts'). Returns the ±tolerance value, range string, and applicable dimension range.
| Name | Type | Req | Description |
|---|---|---|---|
| grade | string | yes | f=Fine, m=Medium, c=Coarse, v=Very Coarse |
| nominal_dimension_mm | number | yes | – |
| tolerance_type | string | yes | – |
No output schema declared.
No examples provided.
get_material_compliance ~92
Use when the user needs to know if a material meets regulatory requirements (e.g. 'is this plastic RoHS compliant?', 'does this aluminum meet FDA requirements?'). Returns compliance status for RoHS, REACH, FDA, ISO, ASTM, CE.
| Name | Type | Req | Description |
|---|---|---|---|
| material_id | string | yes | – |
| standards | array | – | Optional: check specific standards only. Omit to return all known compliance data. |
No output schema declared.
No examples provided.
get_material_process_compatibility ~81
Use when the user asks which processes can be used with a material (e.g. 'can titanium be FDM printed?', 'what processes work with PEEK?'). Returns compatible and incompatible process lists.
| Name | Type | Req | Description |
|---|---|---|---|
| material_id | string | yes | – |
| process_ids | array | – | Optional: check specific processes only. Omit to return all. |
No output schema declared.
No examples provided.
get_process_specs ~80
Use when the user asks about process specs, capabilities, or constraints (e.g. 'what is the tolerance of SLS?', 'what is the build volume of FDM?', 'what lead time for CNC machining?'). Returns category, build size, tolerance, compatible materials, lead time, and surface finish.
| Name | Type | Req | Description |
|---|---|---|---|
| process_id | string | yes | – |
No output schema declared.
No examples provided.
match_industry_materials ~78
Use when the user asks 'what materials are approved for medical devices?', 'best lightweight materials for aerospace?', 'food-safe materials for injection molding?'. Cross-references industries and materials dictionaries.
| Name | Type | Req | Description |
|---|---|---|---|
| industry_id | string | yes | – |
| process_id | string | – | Optional: filter by process compatibility. |
| requirements | array | – | – |
No output schema declared.
No examples provided.
quote_calc ~145
Use this tool to CALCULATE a 3D printing price. Provide material_name, color, lead_time (must match the 3dp-pricing dictionary), quantity, and either weight_g or volume_cm3 — or an uploaded file_key (obtained from /v1/uploads/presign + /v1/uploads/complete) which is parsed to get volume. This tool does NOT create an order; it returns part_price / total / order_url. Output is desensitized (no unit prices).
| Name | Type | Req | Description |
|---|---|---|---|
| notes | string | – | Order-level notes (applies to all parts). |
| parts | array | yes | One or more part lines. Each line is priced independently. |
No output schema declared.
No examples provided.
search_materials ~280
Use to resolve a user's material description (industry grade name like 'PA12', a colloquial term like 'nylon', a Chinese term, or a vague description) into concrete materials.csv entries. Unlike compare_materials/find_equivalent_materials (which need an exact known ID), this tool accepts messy input and returns a ranked list of candidates — use it as the first step when you don't already know the exact material_id. If multiple candidates come back, ask the user to pick one rather than guessing. Optionally narrow by category_hint (Plastic/Metal/Rubber/Resin/Powder Metals/Powder Polymers) or process_filter (e.g. 'Selective Laser Sintering', 'SLS', 'Injection Molding') when the context already implies a manufacturing process.
| Name | Type | Req | Description |
|---|---|---|---|
| category_hint | string | – | Optional coarse category filter matched against Material_Category(L1)/Material_Sub-Category(L2). |
| limit | number | – | Max candidates to return. Defaults to 10. |
| process_filter | string | – | Optional manufacturing process substring filter matched against Compatible_Processes, e.g. 'SLS', 'Selective Laser Sintering', 'Injection Molding'. |
| query | string | yes | User's material description, ideally already normalized to English (e.g. 'PA12', 'nylon', '316 stainless steel'). |
No output schema declared.
No examples provided.
How do I install the MechanoFab MCP server?
MechanoFab is a hosted endpoint at https://mcp.mechanofab.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · mcp.mechanofab.com
claude mcp add --transport http com-mechanofab-mechanofab 'https://mcp.mechanofab.com/mcp'
What is the MechanoFab MCP server?
MechanoFab is an MCP server listed in the public MCP registry as com.mechanofab/mechanofab. Manufacturing capability graph for AI agents: materials, processes, tolerances, and instant quotes. This page covers its hosted endpoint (https://mcp.mechanofab.com/mcp).
Is the MechanoFab MCP server safe to use?
MechanoFab scores 80 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the MechanoFab MCP server expose?
MechanoFab exposes 20 tools: calculate_part_mass, check_equipment_capability, check_material_environment_compatibility, check_service_temperature, compare_equipment, and 15 more. Their descriptions and schemas cost roughly 1,957 tokens of context every time the server is loaded.
Does the MechanoFab MCP server require authentication?
Yes. MechanoFab asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.
Is the MechanoFab MCP server still maintained?
MechanoFab is still listed as active in the MCP registry. We last reached this channel on 16 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.