Skip to content

Latest commit

 

History

History
225 lines (165 loc) · 22.2 KB

File metadata and controls

225 lines (165 loc) · 22.2 KB

MATLAB MCP Server

EnglishEspañol • 日本語 • 한국어简体中文

MathWorks® 公式の MATLAB MCP Server を使用して、AI アプリケーションから MATLAB® を実行できます。MATLAB MCP Server を使用すると、AI アプリケーションから以下の操作が可能になります。

  • MATLAB の起動と終了。
  • MATLAB コードの記述と実行。
  • MATLAB コードのスタイルと正確性の評価。

エージェントが MATLAB および Simulink を活用できるようにするために、MATLAB Agentic Toolkit (GitHub) および Simulink Agentic Toolkit (GitHub) のスキルを使用できます。これらのツールキットを使用して、本 MCP サーバーをインストールすることもできます。

目次

セットアップ

  1. MATLAB (MathWorks) R2021a 以降をインストールし、システム パスに追加します。

  2. 本サーバーは Model Context Protocol を使用するすべての AI アプリケーションをサポートしています。Claude Desktop 用に MATLAB MCP Server をセットアップする場合は、「Claude Desktop」の手順に進んでください。その他のアプリケーション用にサーバーをセットアップする場合は、以下の手順に従います。

    • Windows または Linux の場合、最新リリースをダウンロードします (または、ソースからビルドすることもできます。Go をインストールし、go install github.com/matlab/matlab-mcp-server/cmd/matlab-mcp-server@latest を使用してバイナリをビルドします)。

    • macOS の場合、まずターミナルで以下のコマンドを実行して最新リリースをダウンロードします。

      • Apple シリコン プロセッサの場合、以下を実行します。
        curl -L -o ~/Downloads/matlab-mcp-server https://github.com/matlab/matlab-mcp-server/releases/latest/download/matlab-mcp-server-macos-arm64
      • Intel プロセッサの場合、以下を実行します。
        curl -L -o ~/Downloads/matlab-mcp-server https://github.com/matlab/matlab-mcp-server/releases/latest/download/matlab-mcp-server-macos-x64

      次に、ダウンロードしたバイナリに実行権限を付与して、MATLAB MCP Server を実行できるようにします。

      chmod +x ~/Downloads/matlab-mcp-server
  3. お使いの AI アプリケーションに MATLAB MCP Server を追加します。MCP サーバーの追加手順については、使用する AI アプリケーションのドキュメンテーションを参照してください。Claude Code®、Claude Desktop®、および Visual Studio® Code の GitHub Copilot での手順の例については、以下を参照してください。オプションの引数を指定してサーバーをカスタマイズすることもできます。

Claude Code

ターミナルで以下を実行します。必ずセットアップで取得したサーバー バイナリの絶対パスを指定してください。

claude mcp add --transport stdio matlab -- /fullpath/to/matlab-mcp-server-binary

オプションの引数を指定してサーバーをカスタマイズできます。Claude Code のオプションとサーバー引数の間には -- 区切り文字が必要なことに注意してください。

claude mcp add --transport stdio matlab -- /fullpath/to/matlab-mcp-server-binary --initial-working-folder=/home/username/myproject

Claude Code で MCP サーバーを追加する方法の詳細については、「ローカル stdio サーバーを追加する (Claude Code)」を参照してください。後でサーバーを削除するには、以下を実行します。

claude mcp remove matlab

Claude Desktop

MATLAB MCP Server バンドルを使用して、Claude Desktop に MATLAB MCP Server をインストールします。

  1. Claude Desktop に Filesystem 拡張機能をインストールして、Claude がシステム上のファイルを読み書きできるようにします。Claude Desktop で [Settings]、[Extensions]、[Browse extensions] の順にクリックします。Anthropic が開発した Filesystem 拡張機能を検索して [Install] をクリックします。MCP サーバーにアクセスを許可するフォルダーを指定し、[Disabled] ボタンを切り替えて Filesystem 拡張機能を有効にします

  2. 最新リリースのページから MATLAB MCP Server バンドル matlab-mcp-server.mcpb をダウンロードします。

  3. MATLAB MCP Server バンドルをデスクトップ拡張機能としてインストールするには、ダウンロードした matlab-mcp-server.mcpb ファイルをダブルクリックし、Claude Desktop で [Install] をクリックします (または、Claude で [File] メニュー、[Settings]、[Extensions]、[Advanced Settings]、[Install Extension] の順に移動し、matlab-mcp-server.mcpb ファイルを選択して [Install] をクリックします)。

MATLAB MCP Server の動作をカスタマイズするには、[Settings]、[Extensions]、[Configure] の順に移動します。ここで、サーバーの引数を変更できます。

Visual Studio Code の GitHub Copilot

VS Code ワークスペースに .vscode/mcp.json という名前のファイルを作成します。以下の JSON を挿入し、セットアップで取得したサーバー バイナリの絶対パスと引数を忘れずに指定します。その後、ファイルを保存します (Windows ではパスにエスケープ文字として追加のバックスラッシュが必要であることに注意してください)。

{
    "servers": {
        "matlab": {
            "type": "stdio",
            "command": "C:\\fullpath\\to\\matlab-mcp-server-windows-x64.exe",
            "args": []
        }
    }
}

VS Code で MCP サーバーを使用する方法の詳細については、「Add and Manage MCP servers in VS Code (VS Code)」を参照してください。

Codex

ターミナルで以下を実行します。必ずセットアップで取得したサーバー バイナリの絶対パスを指定してください。

codex mcp add matlab -- /fullpath/to/matlab-mcp-server-binary

オプションの引数を指定してサーバーをカスタマイズできます。以下に例を示します。

codex mcp add matlab -- /fullpath/to/matlab-mcp-server-binary --initial-working-folder=/home/username/myproject

Note

Windows ユーザー: Codex は WINDIR 環境変数を転送しません。MATLAB および Simulink の実行にはこの変数が必要です (#32 を参照)。

この変数を追加するには、C:\Users\<username>\.codex\config.toml にある Codex 構成ファイルを開き、[mcp_servers.matlab] セクションに env_vars = ["WINDIR"] を追加します。

[mcp_servers.matlab]
command = 'C:\fullpath\to\matlab-mcp-server-windows-x64.exe'
args = []
env_vars = ["WINDIR"]

引数

以下のいずれかの方法で引数を指定して、サーバーの動作をカスタマイズできます。

  • AI アプリケーションの構成設定 (通常は .json ファイル) に引数を挿入します。
  • サーバーの起動時にコマンドライン インターフェイス (CLI) フラグとして引数を入力します。
  • 環境変数を使用します。CLI またはアプリケーションの構成設定のいずれかで指定します。CLI フラグから環境変数名を導き出すには、接頭辞 MW_MCP_SERVER_ を追加し、大文字に変換し、ハイフン (-) をアンダースコア (_) に置き換えます。たとえば、引数 --matlab-root は環境変数 MW_MCP_SERVER_MATLAB_ROOT になります。両方を使用した場合、CLI フラグが環境変数より優先されます。
引数 説明
help すべての引数のヘルプ情報を表示します。 --help
version MATLAB MCP Server のバージョンを表示します。 --version
matlab-root 起動する MATLAB の絶対パス。パスに /bin は含めないでください。既定では、システム パス上で最初に見つかった MATLAB が使用されます。 Windows: --matlab-root=C:\\Program Files\\MATLAB\\R2026a

Linux/macOS: --matlab-root=/home/usr/MATLAB/R2026a

環境変数の場合: MW_MCP_SERVER_MATLAB_ROOT=/home/usr/MATLAB/R2026a
initialize-matlab-on-startup サーバーの起動と同時に MATLAB を初期化するには、この引数を true に設定します。既定では、最初のツールが呼び出されたときにのみ MATLAB が起動します。 --initialize-matlab-on-startup=true
initial-working-folder MATLAB の起動フォルダーを指定します。値を指定しない場合、MATLAB は AI アプリケーションの最初のルート (MCP) のパスで起動します。ルートが定義されていない場合、MATLAB は次の場所で起動します。
  • Linux: /home/username
  • Windows: C:\Users\username\Documents
  • Mac: /Users/username/Documents
Windows: --initial-working-folder=C:\\Users\\username\\MyProject

Linux/macOS: --initial-working-folder=/Users/username/MyProject
matlab-display-mode MATLAB デスクトップを表示するかどうかを指定します。desktop モード (既定) では MATLAB デスクトップが表示されます。nodesktop モードでは、MATLAB デスクトップを使用せずに AI アプリケーションでのみ MATLAB を使用します。ただし、nodesktop モードでも、グラフィカル インターフェイスを必要とするコマンド (editopenopen_systemuifigureappdesigner など) の場合はデスクトップ上に MATLAB ウィンドウが開きます。 --matlab-display-mode=nodesktop
matlab-session-mode MCP サーバーが新しい MATLAB を起動するか、既存の MATLAB セッションに接続 (MATLAB R2023a 以降でサポート) するかを指定します。既定は auto モードです。

new モード: MCP サーバーが新しい MATLAB セッションを起動します。

auto モード (既定): サーバーは既存の MATLAB セッションへの接続を試みます。既存のセッションを使用するには、以下の手順で existing モードを事前に設定しておく必要があります。既存の MATLAB セッションが見つからない場合は、サーバーは新しいセッションを起動します。

existing モード: サーバーは既存の MATLAB セッションへの接続を試みます。このモードを引数 matlab-rootinitial-working-folder、または matlab-display-mode と組み合わせて使用しないでください。このモードを使用するには、以下の手順で事前に MATLAB セッションを設定しておく必要があります。

  1. 初めて existing モードを使用する場合は、./matlab-mcp-server --setup-matlab を実行します。

    このコマンドにより、MATLAB MCP Server Toolbox という名前のアドオンが MATLAB にインストールされます。このテーブルの他の引数を使用してコマンドをカスタマイズできます。たとえば、ツールボックスのインストールに使用する MATLAB を指定するには、./matlab-mcp-server --setup-matlab --matlab-root=/home/usr/MATLAB/R2026a を使用できます。

    Claude Desktop の場合、./matlab-mcp-server --setup-matlab を実行する前に、「セットアップ」の手順に従って MATLAB MCP Server バイナリをダウンロードする必要があります。

  2. 実行中の MATLAB セッションのコマンド ウィンドウで shareMATLABSession() を実行します。--matlab-session-mode=existing または --matlab-session-mode=auto を指定してサーバーを起動すると、MCP サーバーはこの MATLAB に接続します。複数の MATLAB セッションを実行している場合、サーバーは最後に shareMATLABSession() コマンドを実行した MATLAB セッションに接続します。

    shareMATLABSession() を手動で実行する代わりに、MATLAB のスタートアップ スクリプト (MathWorks) にこのコマンドを追加できます。
--matlab-session-mode=existing
extension-file カスタム MCP ツールを使用するには、ツールを定義する JSON ファイルのパスを指定します。複数の拡張ファイルを使用することもできます。カスタム ツールの使用の詳細については、「MATLAB MCP Server でのカスタム ツールの使用」を参照してください。

Windows: --extension-file=C:\\Users\\name\\my-tools.json

Linux/macOS: --extension-file=/path/to/my-tools.json

複数の拡張ファイルを使用する場合:

Windows:--extension-file=C:\\path\\to\\tools-1.json --extension-file=C:\\path\\to\\tools-2.json

Linux/macOS:--extension-file=/path/to/tools1.json --extension-file=/path/to/tools2.json

環境変数を使用する場合:

Windows: MW_MCP_SERVER_EXTENSION_FILE=C:\Users\name\tools1.json;C:\Users\name\tools2.json

Linux/macOS: MW_MCP_SERVER_EXTENSION_FILE=/path/to/tools1.json:/path/to/tools2.json
log-folder MCP サーバーがログ ファイルを保存するフォルダーを指定します。指定しない場合、サーバーはオペレーティング システムの既定の一時フォルダーを使用します。 Windows: --log-folder=C:\\Users\\name\\AppData\\Local\\Temp

Linux/macOS: --log-folder=/tmp/my-logs
log-level MCP サーバーのログ レベル。有効な値は、詳細度の高い順に debuginfowarnerror です。既定は info です。 --log-level=debug
disable-telemetry 匿名データ収集を無効にするには、この引数を true に設定します。詳細については、「データ収集」を参照してください。 --disable-telemetry=true

ツール

  1. detect_matlab_toolboxes

    • インストールされている MATLAB とツールボックスに関する情報 (バージョン番号を含む) を返します。
  2. check_matlab_code

    • MATLAB スクリプトの静的コード解析を実行します。コーディング スタイル、潜在的なエラー、非推奨の関数、パフォーマンスの問題、およびベスト プラクティス違反に関する警告を返します。スクリプトを実行せずにコードの品質の問題を特定する、非破壊かつ読み取り専用の操作です。
    • 入力:
      • script_path (string): 解析する MATLAB スクリプト ファイルの絶対パス。有効な .m ファイルである必要があります。解析中にファイルは変更されません。例: C:\Users\username\matlab\myFunction.m または /home/user/scripts/analysis.m
  3. evaluate_matlab_code

    • MATLAB コードの文字列を評価し、出力を返します。
    • 入力:
      • code (string): 評価する MATLAB コード。
      • project_path (string): プロジェクト ディレクトリの絶対パス。MATLAB はこのディレクトリを現在の作業フォルダーとして設定します。例: C:\Users\username\matlab-project または /home/user/research
  4. run_matlab_file

    • MATLAB スクリプトを実行し、出力を返します。スクリプトは有効な .m ファイルである必要があります。
    • 入力:
      • script_path (string): 実行する MATLAB スクリプト ファイルの絶対パス。有効な .m ファイルである必要があります。例: C:\Users\username\projects\analysis.m または /home/user/matlab/simulation.m
  5. run_matlab_test_file

    • MATLAB テスト スクリプトを実行し、包括的なテスト結果を返します。MATLAB テスト フレームワークの規則に従った MATLAB ユニット テスト ファイル用に設計されています。
    • 入力:
      • script_path (string): MATLAB テスト スクリプト ファイルの絶対パス。MATLAB ユニット テストを含む有効な .m ファイルである必要があります。例: C:\Users\username\tests\testMyFunction.m または /home/user/matlab/tests/test_analysis.m

リソース

MCP サーバーは、AI アプリケーションが MATLAB コードを記述する際に役立つリソース (MCP) を提供します。リソースの使用手順については、使用する AI アプリケーションのリソースに関するドキュメンテーションを参照してください。

  1. matlab_coding_guidelines

    • コードの可読性、保守性、およびコラボレーションを向上させるための包括的な MATLAB コーディング規約を提供します。命名規則、書式、コメント、パフォーマンスの最適化、およびエラー処理についてのガイドラインが含まれています。
    • URI: guidelines://coding
    • MIME タイプ: text/markdown
    • ソース: MATLAB Coding Standards (GitHub)
  2. plain_text_live_code_guidelines

    • プレーン テキストのライブ コードの .m ファイル形式を使用したライブ スクリプトの生成に関するルールとガイドラインを提供します。バージョン管理および AI 支援開発に適しています。プレーン テキストのライブ スクリプトを実行するには、MATLAB R2025a 以降が必要です。詳細については、「ライブ コード ファイル形式 (MathWorks)」を参照してください。
    • URI: guidelines://plain-text-live-code
    • MIME タイプ: text/markdown
    • ソース: Plain Text Live Code Generation (GitHub)

データ収集

MATLAB MCP Server は、サーバーの使用状況に関して、完全に匿名化された情報を収集して MathWorks に送信する場合があります。このデータ収集は MathWorks の製品改善に役立てるためのもので、既定で有効になっています。データ収集をオプトアウトするには、引数 --disable-telemetrytrue に設定します。

セキュリティに関する考慮事項

MATLAB MCP Server を使用する際は、ツールの呼び出しすべてにおいて、実行前に十分に確認および検証してください。重要な操作では必ず人が介在するようにし、呼び出しが期待どおりに動作することを確認してから実行してください。詳細については、「User Interaction Model (MCP)」および「Security Considerations (MCP)」を参照してください。

ライセンスと使用について

ライセンスについては、本 GitHub リポジトリの LICENSE.md ファイルをご確認ください。

MCP サーバーは、MathWorks Software License Agreement に従って MATLAB と併用する場合にのみ使用が許可されており、複数のユーザーで共有してはなりません。共有サーバーまたは集中型サーバーを使用する必要がある場合は、MathWorks にお問い合わせください。

サポートへのお問い合わせ

MathWorks は本リポジトリの活用およびフィードバックの提供をお勧めしています。テクニカル サポートのリクエストや機能強化のご要望は、GitHub issue を作成するか、MathWorks テクニカル サポートにお問い合わせください。


Copyright 2025-2026 The MathWorks, Inc.