
Mcp Stl
io.github.daedalusPublished by GitHub account daedalusv0.1.0Updated Oct 25, 2026
MCP server for editing STL 3D model files
Overview
A local MCP server for reading, creating and editing STL 3D mesh files, including transforms, primitives and engine-style shapes.
- What you can do
- Read STL files and report mesh data or summary info, and write meshes back as ASCII or binary STL files. Transform meshes: translate, rotate on an axis or arbitrary vector, scale, shear, mirror, and merge several files into one. Repeat geometry as linear or circular arrays of copies. Generate primitives such as cubes, boxes, spheres, cylinders, cones, tori, planes, capsules, ellipsoids, frustums, tubes, pyramids, prisms, hemispheres and wedges. Generate engine-design shapes: spur gears, helical springs, connecting rods, crankshafts, poppet valves and cam lobes.
- When to use it
- Useful when an assistant needs to inspect or modify STL models on the local machine, apply geometric transforms, combine parts, or generate parametric shapes and mechanical components without a full CAD application.
- Requirements
- Runs as a local process over stdio, installed from the PyPI package mcp-stl (pip install mcp-stl) and started with the mcp-stl command; needs a Python environment and access to the STL files on disk. No authentication, environment variables or headers are declared.
Installation
In SourceWeft
- Open Mcp Stl in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
mcp-stl
[PyPI] [Python] [Coverage] [Ruff]
MCP server for editing STL 3D model files. Provides tools for parsing, viewing, and manipulating STL files through the Model Context Protocol.
Install
MCP Server
mcp-name: io.github.daedalus/mcp-stl
Tools
Reading & Writing
- read_stl_file: Read an STL file and return mesh data (vertices, normals, bounding box)
- get_mesh_info: Get summary information about an STL file without loading full geometry
- write_stl: Write mesh data to an STL file (ASCII or binary format)
Transformations
- translate_stl: Translate (move) the mesh by specified X, Y, Z offsets
- rotate_stl: Rotate the mesh around X, Y, or Z axis by a given angle in degrees
- scale_stl: Scale the mesh by specified X, Y, Z factors
- shear_stl: Apply a shear transformation (shift one axis per unit along another)
- mirror_stl: Mirror (reflect) the mesh across the plane perpendicular to a given axis
- rotate_stl_axis: Rotate the mesh around an arbitrary axis vector (Rodrigues' formula)
- combine_stl: Merge multiple STL files into one
- array_linear: Create N copies of the mesh spaced by a fixed X/Y/Z offset
- array_circular: Create N copies of the mesh at equal angular intervals around an axis
Primitives
- create_cube: Create a cube mesh
- create_box: Create a rectangular box (cuboid) with independent width/height/depth
- create_sphere: Create a sphere mesh
- create_cylinder: Create a cylinder mesh
- create_cone: Create a cone mesh
- create_torus: Create a torus (donut) mesh
- create_plane: Create a flat plane mesh
- create_capsule: Create a capsule (cylinder with hemispherical end caps)
- create_ellipsoid: Create an ellipsoid with independent radii on each axis
- create_frustum: Create a frustum (truncated cone)
- create_tube: Create a hollow cylinder (tube/pipe)
- create_pyramid: Create a regular n-sided pyramid
- create_prism: Create a regular n-sided prism (e.g. hexagonal prism)
- create_hemisphere: Create a hemisphere (dome with flat circular base)
- create_wedge: Create a right-triangular wedge (triangular prism)
Engine-Design Shapes
- create_gear: Create a spur gear mesh (configurable module, teeth, pressure angle)
- create_spring: Create a helical coil spring
- create_connecting_rod: Create a connecting rod with big/small-end bores
- create_crankshaft: Create an N-throw crankshaft
- create_valve: Create a poppet valve (stem + head disc)
- create_camshaft_lobe: Create an eccentric cam lobe with cosine nose profile
Usage
Python API
MCP Server
Configure in your MCP client:
Development
Source: README.md at commit 2d5a18a
Tools
0Version history
1- v0.1.0LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts