1.はじめに
この記事では、MATLABとIBM BobをMCP(Model Context Protocol)を使って連携させる方法を解説します。
2. MCPとは
MCP (Model Context Protocol) は、AIツールと外部システムを接続するための標準プロトコルです。
従来はツールごとに異なる実装が必要でしたが、MCPにより統一された方法で接続できるようになり、AIツールから直接MATLABを操作・自動化できます。
3. MATLAB MCP Core Serverとは
3.1 MathWorks公式のMCPサーバーとは
- MathWorks®が作った公式のMATLAB MCPサーバーです
- AIアプリからMATLABを操作できるようになります
- 標準的なMCPプロトコルに対応しています
3.2 何が楽になるのか
MATLAB MCP Core Serverを用いることで、エージェント型 AI アプリと MATLAB の接続が簡単になり、コードの実行、デバッグ、自動化を可能することが可能になります。
公式が5つの便利なツールを用意しているため、これらを使いこなすことで、手作業によるコピーと貼り付けが不要になります:
- check_matlab_code - MATLAB コードの静的解析
- evaluate_matlab_code - MATLAB コードの直接実行
- run_matlab_file - MATLAB スクリプトファイルの実行
- run_matlab_test_file - MATLAB テストファイルの実行
- detect_matlab_toolboxes - インストール済みツールボックスの検出
3.3 提供される主要ツールの詳細
1. detect_matlab_toolboxes
- インストールされているMATLABとツールボックスの情報(バージョン番号を含む)を返します
2. check_matlab_code
- MATLABスクリプトの静的コード解析を実行します
- コーディングスタイル、潜在的なエラー、非推奨関数、パフォーマンス問題、ベストプラクティス違反に関する警告を返します
- 非破壊的な読み取り専用操作で、スクリプトを実行せずにコード品質の問題を特定します
3. evaluate_matlab_code
- MATLABコードの文字列を評価して出力を返します
- プロジェクトディレクトリを指定することが可能です
4. run_matlab_file
- MATLABスクリプトを実行して出力を返します
- 有効な
.mファイルである必要があります
5. run_matlab_test_file
- MATLABテストスクリプトを実行し、包括的なテスト結果を返します
- MATLABテストフレームワークの規則に従ったユニットテストファイル専用です
4. 筆者の環境
ここから先は、具体的なセットアップ方法について記載します。
この記事は、以下の環境で動作確認を行っています:
| 項目 | バージョン/仕様 |
|---|---|
| macOS | Tahoe 26.3.1 |
| チップ | Apple M4 Max |
| MATLAB | R2026a Update 2 |
| IBM Bob | 1.0.2 |
💡 Note: MATLAB R2020a以降、Apple Silicon/Intel両対応、評価版ライセンスでも動作します。
5. MATLAB MCP Serverのインストール
ステップ1: リポジトリのクローン
# プロジェクトディレクトリに移動
mkdir -p ~/matlab-mcp && cd ~/matlab-mcp
# GitHubからクローン
git clone https://github.com/matlab/matlab-mcp-core-server.git
clone後は、
プロジェクトディレクトリの中にmatlab-mcp-core-serverディレクトリが表示されます
ステップ2: ビルド
# Goがインストールされていることを確認
go version
# ディレクトリ内に移動(必ず)
cd matlab-mcp-core-server
# ビルド実行
make build
💡 Note:
- ビルドには数分かかる場合があります
ビルド成功時の出力例:
GOOS=windows GOARCH=amd64 CGO_ENABLED=0 go build -trimpath ...
GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -trimpath ...
GOOS=darwin GOARCH=amd64 CGO_ENABLED=0 go build -trimpath ...
GOOS=darwin GOARCH=arm64 CGO_ENABLED=0 go build -trimpath ...
ビルドが成功すると、以下のディレクトリにファイルが作成されます:
-
.bin/maca64/matlab-mcp-core-server(Apple Silicon用) ← M1/M2/M3/M4はこれ -
.bin/maci64/matlab-mcp-core-server(Intel Mac用) -
.bin/glnxa64/matlab-mcp-core-server(Linux用) -
.bin/win64/matlab-mcp-core-server.exe(Windows用)
ステップ3: 動作確認
重要: matlab-mcp-core-serverディレクトリ内で実行してください。
例)バージョン確認
.bin/maca64/matlab-mcp-core-server --version
期待される出力:
MATLAB MCP Core Server version: X.X.X
例)ヘルプ表示
.bin/maca64/matlab-mcp-core-server --help
期待される出力:
Usage:
--disable-telemetry This MCP server can collect fully anonymized information about your usage of the server and send it to MathWorks. This data collection helps MathWorks improve products and is on by default. To opt out of data collection, set the argument --disable-telemetry to true.
--extension-file Use custom MCP tools by providing the path to a JSON extension file that defines the tools. Each tool maps to a MATLAB function. You can use the argument multiple times to specify multiple extension files. If you do not specify an extension file, the MCP server does not load any custom tools.
--help Show this help text
6. IBM Bobとの連携設定
IBM Bobでは、MCPサーバーの設定を2つのレベルで管理できます:
- グローバル設定 (
~/.bob/mcp_settings.json)
- すべてのワークスペースで共通の設定
- システム全体で使用するツール向け
- MATLABのように常に使用するツールに最適
- プロジェクト設定 (
.bob/mcp.json)
- プロジェクト固有の設定
- バージョン管理を通じてチーム共有が可能
- プロジェクトごとに異なるMATLABバージョンを使用する場合に最適
このガイドでは一旦グローバルの設定方法をご紹介します。
ステップ 1: グローバル設定用ファイルの作成
# ホームディレクトリの.bobフォルダに移動
cd ~/.bob
# 設定ファイルを作成(存在しない場合)
touch mcp_settings.json
ステップ2 : 設定ファイルの記述
~/.bob/mcp_settings.jsonに以下の内容を記述:
※commandや--matlab-rootはご自身の環境に合わせてpathを設定してください。
{
"mcpServers": {
"command": "/Users/Username/matlab-mcp/matlab-mcp-core-server/.bin/maca64/matlab-mcp-core-server",
"args": [
"--matlab-root",
"/Applications/MATLAB_R2026a.app",
"--matlab-display-mode",
"desktop",
"--log-level",
"info"
],
"disabled": false
}
}
}
引数リファレンス
| 引数 | 必須/オプション | 説明 | デフォルト値 |
|---|---|---|---|
--matlab-root |
★必須 | MATLABインストールディレクトリ(/binは含めない) |
システムPATHから自動検出 |
--matlab-display-mode |
オプション | MATLABデスクトップの表示設定 ・ desktop: GUI表示 - プロット、Figure、エディタが使用可能。 デバッグやビジュアル確認に便利。 ・ nodesktop: GUIなし- 軽量・高速で、サーバー環境や自動化に適している。※ plot、uifigureなどは別ウィンドウで開く |
desktop |
--initial-working-folder |
オプション | MATLAB起動時の作業フォルダ | AIアプリケーションのルートまたはドキュメントフォルダ |
--initialize-matlab-on-startup |
オプション | サーバー起動時にMATLABを初期化 ・ true: 即座に起動・ false: 最初のツール呼び出し時に起動 |
false |
--matlab-session-mode |
オプション | MATLABセッションモード(R2023a以降) ・ new: 新規セッション・ auto: 既存セッション優先・ existing: 既存セッションのみ |
auto |
--extension-file |
オプション | カスタムMCPツール定義ファイル 複数指定可能 |
なし |
--log-folder |
オプション | ログファイル保存先フォルダ | OSのデフォルト一時フォルダ |
--log-level |
オプション | ログレベルdebug, info, warn, error
|
info |
--disable-telemetry |
オプション | 匿名データ収集の無効化trueで無効化 |
false |
作成したら、IBM Bobを再起動し、実行確認します。
7. 動作確認
- IBM Bobを再起動
- チャット画面を開きAdvanced Modeを選択
- promptを投げる
matlabのMCPで、detext_matlab_toolboxesを呼び出してください
以下のように、toolの呼び出しが成功し、インストール情報が正しく取得できていたら成功です。
8. おわりに
この記事では、MATLAB MCP Core ServerとIBM Bobを連携させる方法を解説しました。
実現できたこと:
- MCPプロトコルを使用したMATLABとAIツールの統合
- IBM BobからMATLABコードの実行・解析が可能に
- 手作業でのコピー&ペーストが不要に
主要な設定ポイント:
- MATLAB MCP Core Serverのビルドとインストール
- IBM Bobのグローバル設定ファイル(
~/.bob/mcp_settings.json)の作成 - MATLABインストールパスと起動オプションの設定
この連携により、MATLAB開発の効率が大幅に向上します。
今後、実際の活用事例や便利な使い方などを別の記事で紹介できればと思っています。
質問や改善提案があれば、コメント欄でお気軽にお知らせください!

