オープンソースの有限要素法(FEM)のプリポストソフト PrePoMax の新しいバージョン(v3.0.0 RC2)に、MCP(AI がソフトを操作するための仕組み) の受付ができるようになりました。

これを使うと、PrePoMax の画面を開いたまま、AI(Claude Code)に「形状を作って、メッシュを切って、解析して」と頼めるようになります。

新しい版の変更内容は、PrePoMax v3.0.0の公式リリースノートにまとまっています。本記事では、そのうちMCPの接続手順を、v3.0.0 RC2の画面で紹介します。

この記事では、WSL(Windows の中の Linux)で動かしている Claude Code から、Windows の PrePoMax につなぐまでの手順を、実際の画面といっしょに順番に説明します。途中で私がつまずいたところ(curl が 000 のまま届かない)と、その直し方も書きました。

この記事の対象環境

  • Windows側:PrePoMax v3.0.0 RC2。
  • WSL側:Claude Codeをインストール済みで、ターミナルから claude を起動できること。
  • ネットワーク:Windows 11 22H2以降の、ミラーモードに対応したWSL 2環境を使います。

今回の記事ではMCP接続までを行います。

全体の流れ

AI(Claude Code)に指示を出すと、HTTP通信とアクセストークンによる認証を通じて、PrePoMaxのAutomation Serverにアクセスします。これにより、PrePoMax上で開いているモデルを直接操作できます。

ことば意味
MCPAI が外のソフトを「道具」として呼ぶための共通の約束ごと
Automation ServerPrePoMax の中にある MCP の受付。オンにしたときだけ動く
アクセストークン受付の合言葉。これがないと受けつけない。
127.0.0.1:8756「このパソコンの中」の 8756 番の窓口。
手順どこでやること回数
1WindowsPrePoMax v3.0.0 RC2 を入れて起動する導入は初回、起動は毎回
2PrePoMaxAutomation Server をオンにする毎回
3PrePoMaxトークンをコピーする初回だけ
4WindowsWSL をミラーモードにする初回だけ
5WSLClaude Code に PrePoMax を登録する初回だけ
6Claude Codeつながったか確かめる毎回

手順1:PrePoMax v3.0.0 RC2 を入れて起動する

PrePoMaxの公式Downloadsページから PrePoMax version v3.0.0 RC2 のzipをダウンロードします。zipを作業用フォルダに解凍し、中の PrePoMax.exe をダブルクリックして起動します。公式ページに記載された前提環境(.NET Framework 4.8)も確認してください。

公式Downloadsからv3.0.0 RC2を取得し、解凍したフォルダのPrePoMax.exeを起動します。
  • 本記事はMCP対応のv3.0.0 RC2を対象としています。
  • PrePoMaxに、Claude Codeをつなぐ手順を以下に示します。
    ※AIを使う前に、PrePoMaxを起動しておきます。

手順2:Automation Server をオンにする

上のメニューの Tools → Automation Server を押します。初回だけ、「AI が送ってくる合言葉(アクセストークン)を今作りますか」と聞かれるので Yes を選びます。

Tools → Automation Serverを選び、初回はトークン生成の確認でYesを押します。

画面の下の Output に、次の2行が出れば受付が始まっています。

The access token of the automation server was set.
The MCP endpoint of the automation server is http://127.0.0.1:8756/mcp, and it also accepts calls on the pipe PrePoMax.xxxxx.

もう一度 Tools を開くと、Automation Server の左にチェックがついています。

Automation Serverにチェックが付いていることを確認します。
  • 8756 番が使われているときは、次の空き番号になります。Output に出た番号を使います。
  • 毎回オンにするのが面倒なら、Tools → Settings → Automation の Start with the application を Yes にすると、PrePoMax を開くだけで受付が始まります。

手順3:トークンをコピーする(初回だけ)

Tools → Settings を開き、左の一覧から Automation を選びます。右の Connection の中の Access token の値をコピーして、いったんメモ帳などに貼っておきます。

Tools → Settings → AutomationでAddressとAccess tokenを確認します。画像のトークンは伏せています。
  • 右クリックの Generate the access token は押すとトークンが作り直され、前のものが使えなくなります。
  • トークンは人に見せてはいけません。AIのチャットに貼り付けたりdocsフォルダに書いたりしないようにしましょう。

手順4:WSL をミラーモードにする(初回だけ)

今回自分が行った環境が、

  • Claude Code は WSL を使い
  • PrePoMax は Windows で動く

としているため、PrePoMax はWSL のふつうの設定(NAT モード)では、WSL の 127.0.0.1 は WSL 自身を指していて、Windows には届きません。

ただし、ミラーモードではWSLからWindows側のサービスへ 127.0.0.1 で接続できます。本記事では、この方法でつなぎます。対応条件はMicrosoftのWSLネットワークの説明で確認できます。

やり方

Windows のメモ帳で次の2行を書き、C:\Users\<自分のユーザー名>\.wslconfig という名前で保存します(ファイルの種類は「すべてのファイル」にして、.wslconfig.txt にならないようにします)。

[wsl2]
networkingMode=mirrored
Windowsのユーザーフォルダに.wslconfigを置きます。

すでに .wslconfig がある場合は、上書きせず、既存の [wsl2] 内の設定を追加・変更します。この設定はWSL全体に影響するため、他の開発環境も使っている方は注意してください。

次のコマンドは、動作中のWSL環境をすべて停止します。 WSLでの計算や編集内容を保存してから画面を閉じ、WindowsのPowerShellで実行してください。その後、WSLを開き直します。

wsl --shutdown

つまずいたところ:書いただけでは切り替わらない

私は最初、.wslconfig を書いただけではclaude codeの接続はできていません。.wslconfig は WSL を止めて起動し直したときにだけ読まれるので、wsl --shutdown をし、wslを再度起動する必要があります。

WSL で次を打って、mirrored と出れば切り替わっています(nat ならまだ前のまま)。

wslinfo --networking-mode

届くようになったか確かめる

PrePoMax の Automation Server をオンにした状態で、WSL で次を打ちます。

curl --noproxy 127.0.0.1 -sS -m 5 -o /dev/null -w "%{http_code}\n" -X POST http://127.0.0.1:8756/mcp

--noproxy は、この宛先でプロキシを使わない指定です。-sS で通信エラーも表示します。画面例はこの二つのオプションを追加する前の記録ですが、確認する宛先は同じです。

出た数字意味
000HTTP応答を取得できていない。ネットワークモード、サーバーの起動、ポート番号、タイムアウトなどを確認する
411届いている。本文なしで POST したので「本文の長さがない(Length Required)」と断られただけ
401HTTP応答があり、認証で拒否されている。この確認ではトークンを付けていないため想定される

私の環境では 411 が返りました。000 はHTTPのステータスコードではなく、curlがHTTP応答を取得できなかったときの表示です。411 や 401 なら通信先から応答を受けていますが、これだけでMCPの接続成功とは判断しません。ポートがPrePoMaxのOutputと一致していることを確認し、手順6で最終確認します。

手順5:Claude Code に PrePoMax を登録する(初回だけ)

WSL のふつうのターミナル(Claude Code の会話の中ではなく)で、次を打ちます。<トークン> は < > ごと消して、手順3でコピーした文字に置き換えます。

claude mcp add --scope user --transport http prepomax http://127.0.0.1:8756/mcp --header "Authorization: Bearer <トークン>"
WSLのターミナルでMCP接続先を登録します。トークン部分は伏せています。

Added HTTP MCP server prepomax … と出れば登録できています。画面ではトークンが [REDACTED] と隠れます。

  • --scope user にすると、どのフォルダで Claude Code を開いても使えます。どのフォルダで打っても結果は同じです。
  • 登録はホームの ~/.claude.json に保存されます。このファイルの中には、トークンが伏せ字なしで入っています。人に送ったり、チャットに貼ったりしないようにします。
  • 会話の中に打つとトークンが会話の記録に残るので、ふつうのターミナルで打ちます。
  • ターミナルへトークンを直接入力すると、シェルの履歴などに残る場合もあります。画面共有や履歴・設定ファイルの共有には注意してください。

手順6:つながったか確かめる

まずターミナルで claude mcp list を打ちます。prepomax の行が ✔ Connected ならつながっています。

claude mcp listで、prepomaxがConnectedになっていることを確認します。

次にClaude Codeを起動し直し、会話の中で /mcp と入力します。prepomaxが接続済みで、道具(tools)の一覧を確認できれば登録は成功です。今回のv3.0.0 RC2では15個でしたが、数は版によって変わる可能性があります。

Claude Code内の/mcpで、prepomaxと利用可能なtoolsを確認します。画面例では15個です。
  • MCP は Claude Code を起動したときに読みこまれます。登録する前から開いていた会話には出てこないので、開き直します(claude --continue で続きから再開できます)。
  • 最初は「PrePoMaxの状態を確認して」と、モデルを変更しない指示から試します。モデル作成や計算を頼む前に、作業中のファイルを保存しておきます。

つながらないとき

様子直し方
curl が 000wslinfo --networking-mode が nat なら wsl --shutdown。PrePoMax の Tools → Automation Server にチェックがあるか確かめる
何も答えないPrePoMax が閉じている、または Automation Server がオフ。PrePoMax を起動して、受付をオンにする
401(断られる)トークンが違う。手順3でコピーし直し、claude mcp remove prepomax --scope user で消して手順5をやり直す
PrePoMax を開き直したら切れたClaude Code の /mcp でつなぎ直す

まとめ

  • PrePoMax v3.0.0 RC2 には MCP の受付(Automation Server)があり、Claude Code から操作できる
  • 今回のWSLからWindowsへの接続には、ミラーモードを使う。.wslconfig を変更したら、作業を保存して wsl --shutdown を実行する
  • curl の 411 はHTTP応答があることの確認。MCPとして使えるかは claude mcp list と /mcp で確かめる
  • 登録は claude mcp add を1回打つだけ。トークンは秘密にする
  • 使うときは毎回、先に PrePoMax を起動して Automation Server をオンにしておく

参考資料