mcpField
M
MeshMend

MeshMend

ローカル
mesh-mend.pages.devメディア・デザイン02 週間前に更新

MeshMend について

MeshMendは、3Dプリント用のSTLと3MFメッシュを検査・修復するローカルMCPサーバーです。スライサーに渡すモデルを準備する人向けで、問題と修復の限界を報告し、元ファイルを置き換えずに修正版を作成します。ファイルはコンピューター内に保持されます。

主な機能

  1. 01メッシュの欠陥と寸法の検査
  2. 02指定したメッシュ問題の修復
  3. 033MFファイルからSTLへの変換
  4. 04元ファイルの保持
  5. 05ネットワーク通信なしでローカル実行

活用シーン

  1. 01STLが水密かどうかの確認
  2. 02スライス前の穴の診断
  3. 03モデルの反転面の修復
  4. 043MFビルドのSTL変換

MCP 対応

ローカルのstdio MCPサーバーとして、メッシュ検査、対応する欠陥の修復、3MFからSTLへの変換ツールを公開します。指定されたローカルファイルを読み書きし、デフォルトでは元ファイルを上書きしません。

設定

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

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ
パッケージ
mcpbmeshmend-mcp-0.1.0.mcpb0.1.0

ツール

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

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

詳細

MeshMend

MeshMend — MCP サーバー

英語 · 中文

お使いのコンピューター上でツールを実行できるAIアシスタント(Claude Desktop、Claude Code、Cursor、VS Code、Windsurf、Codex CLI、Gemini CLI、またはローカルサーバーを起動するその他のMCPクライアント)から、3Dプリント用メッシュ(STLおよび3MF)をチェックして修復できます。

「~/prints/bracket.stl は水密ですか?」、「スライサーでこのモデルに穴があると表示されるのはなぜですか?」、または 「把这个 3MF 转成 STL」 と尋ねてください。アシスタントはお使いのマシン上のファイルを読み込み、何が問題なのか(穴、面の反転、裏返ったシェル、非多様体エッジ、重複した三角形)を正確に伝え、自動修復で直るかどうかを正直に示し、元のファイルと同じ場所に修復済みのコピーを書き出します。

ファイルがコンピューターの外に出ることはありません。 サーバーはローカルで実行され、指定したファイルのみを読み書きし、ネットワークリクエストを送信せず、テレメトリもありません。元のファイルが上書きされることはありません。これは、mesh-mend.pages.devで利用できる無料のブラウザ内ツールと同じメッシュコードです。

npx -y github:Keith-CY/meshmend-mcp

ステータス: バージョン0.1.0です。npmへの公開は保留中です。公開までは、npx -y github:Keith-CY/meshmend-mcp(Node.js 18+とgitが必要)で同じビルドを実行できます。また、Claude DesktopユーザーはReleasesからワンクリックバンドルをインストールできます。

ツール

ツール入力機能
check_meshpath、unit?(mm/cm/in、STLのみ)、item?(3MFのビルドアイテム)サイズ(mm)、三角形の数、シェルの数、および各問題の件数を報告し、さらにメモリ上で試験修復した結果として、ok、repairable、partly_repairable、needs_manual_reviewのいずれかを判定します。読み取り専用です。
repair_meshpath、fill_holes?(デフォルトはfalse)、max_hole_span_mm?(デフォルトは20)、output_path?、unit?、item?、overwrite?重複面と面積ゼロの面を削除し、面の向きを統一して、裏返ったシェルを外側に向けます。また、指定した場合は平坦な穴をふさぎます。ミリメートル単位のバイナリSTLを書き出し、修復前後の結果を報告します。
convert_3mf_to_stlpath、item?、output_path?、overwrite?ビルド変換と単位を適用し、形状を変更せずに、3MFをミリメートル単位のバイナリSTLに変換します。

すべての結果は読みやすいテキストと、構造化JSON(structuredContent、outputSchemaを含む)で提供されます。check_meshは読み取り専用としてマークされています。他の2つは新しいファイルを作成するだけです(destructiveHint: false)。

結果の保存場所: 入力ファイルと同じ場所に、<name>.repaired.stl(変換の場合は<name>.stl)として保存されます。既存のファイルを置き換えるのではなく、-2、-3、…のように番号が付加されます。output_pathを指定した場合、既存のファイルはoverwrite: trueの場合にのみ置き換えられ、入力ファイルが出力先になることはありません。

接続方法

Claude Desktop

ワンクリック: Releasesからmeshmend-mcp-0.1.0.mcpbをダウンロードして開きます(またはSettings → Extensions → Advanced settings → Install extension…)。Claude Desktopは組み込みのNode.jsを使って実行します。

または手動で設定:****Settings → Developer → Edit configを開き、claude_desktop_config.jsonに次の内容を追加します。

{
  "mcpServers": {
    "meshmend": {
      "command": "npx",
      "args": ["-y", "github:Keith-CY/meshmend-mcp"]
    }
  }
}
Claude Code
claude mcp add meshmend -- npx -y github:Keith-CY/meshmend-mcp
Cursor

~/.cursor/mcp.json(またはプロジェクト内の.cursor/mcp.json):

{
  "mcpServers": {
    "meshmend": { "command": "npx", "args": ["-y", "github:Keith-CY/meshmend-mcp"] }
  }
}
VS Code(GitHub Copilot)

.vscode/mcp.json:

{
  "servers": {
    "meshmend": { "type": "stdio", "command": "npx", "args": ["-y", "github:Keith-CY/meshmend-mcp"] }
  }
}
Windsurf

~/.codeium/windsurf/mcp_config.json:Cursorと同じmcpServersブロックを使用します。

Codex CLI

~/.codex/config.toml:

[mcp_servers.meshmend]
command = "npx"
args = ["-y", "github:Keith-CY/meshmend-mcp"]
Gemini CLI

~/.gemini/settings.json:

{ "mcpServers": { "meshmend": { "command": "npx", "args": ["-y", "github:Keith-CY/meshmend-mcp"] } } }
その他のクライアント

ローカル(stdio)サーバーを起動するMCPクライアントであれば、npx -y github:Keith-CY/meshmend-mcp、またはチェックアウトしたリポジトリからnode /path/to/meshmend-mcp/dist/meshmend-mcp.jsを実行できます(このファイルに依存関係はありません)。すぐに使える設定ファイルはexamples/clients/にあります。

アシスタントには絶対パスを指定してください(~は展開されます)。相対パスはサーバーの作業ディレクトリを基準に解決されます。デスクトップアプリの場合、作業ディレクトリはプロジェクトフォルダーではないことがよくあります。

実際のファイルの修復前と修復後

このリポジトリのテストとローカル実行(npm test ではバニーと球体を除くすべてを再テストします)から:

ファイルcheck_mesh の検出結果判定repair_mesh 実行後
MeshMend のサンプルブロック、30 × 24 × 24 mm、19 個の三角形(missing-patch.stl)1 つの穴(4 本の開いたエッジ)、3 つの巻き方向の不整合、1 つの重複面修復可能(fill_holes を使用)閉じた状態:重複を削除し、向きを修正、10 × 8 mm の穴を 2 個の三角形でふさぎました。20 個の三角形
trimesh の multibody.stl、32 個の三角形2 つの裏返ったシェル、12 個の巻き方向の不整合修復可能閉じた状態で、外向きになりました
ユタ・ティーポット(tests/fixtures/trimesh/)、894 個の三角形6 つの開いた境界(64 本の開いたエッジ)、1 つの非多様体頂点手動確認が必要変更なし。穴が曲面上にあり、非多様体頂点には判断が必要な理由が示されています
CAD のエクスポート(featuretype.STL)、3,476 個の三角形16 個の開いた継ぎ目(576 本の開いたエッジ)手動確認が必要変更なし。頂点が正確に一致しない面があり、MeshMend は近接する頂点を結合しません
スタンフォード・バニー(STL としての bun_zipper.ply、156 mm にスケーリング。未収録)ベース部分に5つの開いた境界(223 本の開いたエッジ)、69,451 個の三角形手動確認が必要スパンを 200 mm にしても変更なし。スキャンの穴が平面ではありません
生成した直径 100 mm の球体、247,499 個の三角形、3 つの穴、249 個の反転した面3 つの開いた境界(13 本の開いたエッジ)、744 個の巻き方向の不整合一部修復可能向きを修正し、平面の穴を1つふさぎました。曲面の穴2つは確認用に残しました。約10秒

修復できるものと、できないもの

修復できるもの:

  • 重複面と面積がゼロの(縮退した)面。
  • 通常の共有エッジにおける面の巻き方向の不整合(法線の反転)。
  • 他のシェルと重なっていない、裏返った閉じたシェル。
  • fill_holes: true の場合:境界頂点が3〜128個で、バウンディングボックスの対角線が max_hole_span_mm 以内の、単純な平面の穴。

修復できないもの:

  • 近接する頂点の結合(結合されるのは座標が完全に一致する頂点のみ)。そのため、面間の継ぎ目は閉じられません。
  • 非多様体エッジや頂点の分割、リメッシュ、ソリッドの再構築。
  • 自己交差の修復、重なり合うパーツの結合、壁厚・オーバーハング・サポートの確認。
  • 曲面の穴、入れ子状の開口部、スパンを超える幅の穴のふさぎ。
  • モデルが印刷できることの保証。結果をスライサーで開いてください。

意図的な開口部もあるため、指示がない限り穴埋めは無効です。check_mesh は修復をメモリ上で先に実行するため、ファイルを書き込む前に、repair_mesh が実際に役立つかどうかを判定結果で確認できます。

制限事項: ファイルは30 MiBまで、三角形は250,000個まで(ウェブサイトと同じ)。3MF では、プライマリビルド、コンポーネント、変換、製造拡張機能のパーツ参照、単位に対応しています。ZIP64、必須の非対応拡張機能、パーツ間で単位が混在するファイル、Gコードのみのパッケージは、説明とともに拒否されます。色、マテリアル、印刷設定は STL に引き継がれません。

プライバシー

MeshMend の MCP サーバーは、お使いのコンピューター上でのみ動作します。あなたまたはアシスタントが指定したファイルを読み込み、新しい STL ファイルを書き出します。外部へのデータ送信、分析、テレメトリーはなく、ログも保存しません。AI アシスタントには、他のツール出力と同じように、ツールの結果(件数、サイズ、ファイルパス、メッセージ)が表示されます。取り扱いには、そのアシスタント独自のプライバシー規約が適用されます。

開発

npm install
npm test            # builds dist/ and runs the core, file and end-to-end tests (needs Bun)
npm run pack:mcpb   # builds the Claude Desktop bundle into build/
node scripts/call.mjs check_mesh '{"path":"tests/fixtures/missing-patch.stl"}'

src/core/ は MeshMend のメッシュ処理コードで、ウェブサイトと同じ結果を返すよう、ウェブサイトから変更せずにコピーされています。dist/meshmend-mcp.js は単一のバンドルファイルです(コミット済みのため、npx github: の実行にビルド手順は不要です)。バンドルされたパッケージとライセンスは NOTICE に記載されています。

ライセンス

MIT。3つの trimesh テストファイルは、それぞれの作者が MIT ライセンスで提供しています(詳細)。

3D プレビューと修復前後の比較ができるブラウザー版:mesh-mend.pages.dev。

コメント

MCP は初めてですか?

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

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