io.github.daedalus/mcp-stl

Official registry AI and agents

MCP server for editing STL 3D model files

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

PYPI package mcp-stl
Claude Code
claude mcp add mcp-stl -- uvx mcp-stl==0.1.0
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "mcp-stl": {
            "command": "uvx",
            "args": [
                "mcp-stl==0.1.0"
            ]
        }
    }
}

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. mcp-stl
  2. Install
  3. MCP Server
  4. Tools
  5. Usage
  6. Development

mcp-stl

MCP server for editing STL 3D model files. Provides tools for parsing, viewing, and manipulating STL files through the Model Context Protocol.

Install

pip install mcp-stl

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
from mcp_stl import read_stl_file, create_cube, translate_stl

# Read an existing STL file
mesh = read_stl_file("model.stl")
print(f"Faces: {mesh.face_count}")

# Create a primitive
create_cube("cube.stl", size=2.0)

# Transform a mesh
translate_stl("input.stl", "output.stl", x=10.0, y=0.0, z=5.0)
MCP Server

Configure in your MCP client:

{
  "mcpServers": {
    "mcp-stl": {
      "command": "mcp-stl"
    }
  }
}

Development

git clone https://github.com/daedalus/mcp-stl.git
cd mcp-stl
pip install -e ".[test]"

# run tests
pytest

# format
ruff format src/ tests/

# lint
ruff check src/ tests/

# type check
mypy src/

Frequently asked questions

What is io.github.daedalus/mcp-stl?

MCP server for editing STL 3D model files

How do I install io.github.daedalus/mcp-stl?

It runs on your machine. In Claude Code: claude mcp add mcp-stl -- uvx mcp-stl==0.1.0. For other clients, paste the JSON configuration from this page into their MCP settings.

Does io.github.daedalus/mcp-stl need an API key?

Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.

Is io.github.daedalus/mcp-stl open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains io.github.daedalus/mcp-stl?

It is published by daedalus. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.