mcpField
M
mcp-stl

mcp-stl

ローカル
github.com/daedalusメディア・デザイン027 週間前に更新

mcp-stl について

mcp-stlは、STL形式の3Dメッシュファイルを読み込み、作成、編集するMCPサーバーです。メッシュ変換、基本形状、エンジン設計用形状のツールを備えています。

主な機能

  1. 01メッシュデータの読み込みとファイル概要の確認
  2. 02ASCIIまたはバイナリ形式のSTL出力
  3. 03メッシュの移動、回転、拡大縮小、せん断、反転
  4. 04メッシュの結合と直線・円形配列の作成
  5. 05基本形状とエンジン設計用形状の作成

活用シーン

  1. 01既存のSTLメッシュの確認
  2. 02モデルの変換や結合による再利用
  3. 03基本形状やエンジン設計用STL形状の生成

MCP 対応

MCPクライアントに、STLファイルの解析・書き込み、メッシュ操作、形状生成のツールを提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"daedalus-mcp-stl": {
"command": "uvx",
"args": [
"mcp-stl"
]
}
}
}
起動コマンドuvx mcp-stl

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypimcp-stl0.1.0

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

mcp-stl

PyPI Python Coverage Ruff

STL 3D モデルファイルを編集するための MCP サーバーです。Model Context Protocol を通じて、STL ファイルの解析、表示、操作を行うツールを提供します。

インストール

pip install mcp-stl

MCP サーバー

mcp-name: io.github.daedalus/mcp-stl

ツール

読み込みと書き込み
  • read_stl_file:STL ファイルを読み込み、メッシュデータ(頂点、法線、バウンディングボックス)を返します
  • get_mesh_info:形状データ全体を読み込まずに、STL ファイルの概要情報を取得します
  • write_stl:メッシュデータを STL ファイルに書き込みます(ASCII またはバイナリ形式)
変換
  • translate_stl:指定した X、Y、Z のオフセット分だけメッシュを移動します
  • rotate_stl:指定した角度(度)で、X、Y、または Z 軸を中心にメッシュを回転します
  • scale_stl:指定した X、Y、Z の係数でメッシュを拡大・縮小します
  • shear_stl:せん断変換を適用します(別の軸に沿った単位ごとに、1 つの軸をずらします)
  • mirror_stl:指定した軸に垂直な平面を基準に、メッシュを反転(鏡映)します
  • rotate_stl_axis:任意の軸ベクトルを中心にメッシュを回転します(ロドリゲスの公式)
  • combine_stl:複数の STL ファイルを 1 つに結合します
  • array_linear:固定の X/Y/Z オフセットで間隔を空けて、メッシュのコピーを N 個作成します
  • array_circular:軸を中心に等角度間隔で、メッシュのコピーを N 個作成します
プリミティブ
  • create_cube:立方体のメッシュを作成します
  • create_box:幅、高さ、奥行きを個別に指定できる直方体のメッシュを作成します
  • create_sphere:球のメッシュを作成します
  • create_cylinder:円柱のメッシュを作成します
  • create_cone:円錐のメッシュを作成します
  • create_torus:トーラス(ドーナツ形)のメッシュを作成します
  • create_plane:平面のメッシュを作成します
  • create_capsule:カプセル形(両端に半球状のキャップが付いた円柱)のメッシュを作成します
  • create_ellipsoid:各軸の半径を個別に指定できる楕円体を作成します
  • create_frustum:円錐台を作成します
  • create_tube:中空円柱(チューブ/パイプ)を作成します
  • create_pyramid:正 n 角錐を作成します
  • create_prism:正 n 角柱(例:六角柱)を作成します
  • create_hemisphere:半球(底面が平らなドーム)を作成します
  • create_wedge:直角三角形のくさび(三角柱)を作成します
エンジン設計用の形状
  • create_gear:平歯車のメッシュを作成します(モジュール、歯数、圧力角を設定可能)
  • create_spring:らせん状のコイルばねを作成します
  • create_connecting_rod:大端部と小端部に穴のあるコネクティングロッドを作成します
  • create_crankshaft:スロー数 N のクランクシャフトを作成します
  • create_valve:ポペットバルブ(ステム+ヘッドディスク)を作成します
  • create_camshaft_lobe:コサイン形状のノーズプロファイルを持つ偏心カムローブを作成します

使い方

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 サーバー

MCP クライアントで設定します:

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

開発

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/

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。