How MTK web visualization works: a look under the hood

It’s not just a viewer. It’s a toolchain for bringing rich B-Rep geometry, analysis results, and structure to your web app.

Roman Lygin
Roman Lygin September 3, 2025 ● 3 min read

Web viewers aren’t the problem. Integration is.  

If you’re building a quoting platform or internal workflow tool, you’ve probably tried a few options:

  • Plain three.js with glTF support - but no real B-Rep.
  • Same as above, using third-party converters to convert STEP to glTF - but still losing all associations in transit.
  • Off-the shelf viewers - that have no knowledge of DFM or feature recognition.
  • Combining these pieces together - painful, limited, and hard to maintain.

What you really need is a viewer component - not a ready-made product - that integrates directly into your system, speaks the same language as your backend (e.g. MTK API), and preserves the richness of CAD data.

That’s why we built the MTK Web Visualization Component.

An assembly shown in the MTK Web visualization component

Designed for integration  

Unlike standalone “3D viewers”, MTK’s web component is built for SDK users who need full control over:

  • Geometry and structure display
  • Properties and metadata
  • Selection and callbacks
  • Linking backend results (like DFM or feature recognition) to 3D

It’s open-source (BSD license), based on three.js, and can be used:

  • as a drop-in component
  • or deeply integrated with your custom UI

MTK itself ships with a ready-to-use pipeline (see MTKConverter example) that generates the necessary files for visualization - but you can also use your own serialization logic.

DFM issues attached to B-Rep faces and edges

Data flow: backend → frontend  

A typical MTK web integration uses two files:

1. .mtkweb - compressed product structure and geometry

A compact, binary file that includes:

  • Triangulations
  • Persistent IDs for B-Rep entities (faces, edges)
  • Full topological structure
  • Analytical geometry (e.g. axis of a cylinder, torus, etc.)
  • Metadata: names, colors, graphic materials (In progress), etc.
  • Assembly structure, or scene graph.

It’s much richer than glTF, yet comparable in size due to smart compression.

2. .json - optional analysis results 

This is not required by MTK, but provided as a common pattern. For example, it may include:

Example of JSON file using persistent ID's

Your frontend can then pass these shape_ids to the viewer API for selective highlighting or annotation.

Note: Scene structure (assembly tree, product hierarchy) is part of .mtkweb, not JSON.

Persistent IDs: your invisible bridge  

One of the hardest parts of web visualization is associating analysis results with geometry.

MTK solves this via persistent 64-bit IDs for all B-Rep elements. They’re:

  • Stable across conversions
  • Preserved inside .mtkweb
  • Directly usable in the JS API

This means: once your backend identifies an issue on Face #9123456781234567, your frontend can instantly highlight that exact face.

Persistent id's passed between backend and frontend

Power under the hood  

While the top layer is open and customizable, MTK’s web visualization engine includes a closed-source, highly optimized core:

  • Data model interrogation (consistent with native MTK API)
  • .mtkweb parsing and decoding
  • Measurement utilities

Together, these enable fast loading, smooth interaction, and accurate selection even for complex B-Rep models.

Built for the future 

MTK Web is actively developed. Upcoming features include:

  • PMI (Product Manufacturing Information)
  • Annotations to enable collaborative reviews
  • 2D drawings
  • Improved visual effects and selection modes

Not a black box. Not a toy.  

If you’re building something serious - quoting platform, MES, internal DFM checker, or engineering portal - MTK gives you the building blocks. Not constraints.

You control what your users see and how. You control how you map backend results to geometry. You control the experience.

MTK online demo showing DFM issues in a part to be machined

Try it now  

Want to see it in action?

Bring CAD intelligence

to your quoting or MaaS platform

Contact sales