matlab/simulink-agentic-toolkit

The Simulink Agentic Toolkit gives your AI agent both the tools and the expertise to work effectively with Simulink and Model-Based Design.

Simulink Agentic Toolkit

何であるか – 大規模言語モデル(LLM)コーディングエージェント(Claude Code、Copilot、Codex、Gemini CLI、Sourcegraph Ampなど)がSimulink®モデルを読み取り、編集、照会、テスト、検証できるMATLABベースのアドオン。これはエージェントをMATLAB MCP Server(モデル・コンテキスト・プロトコルブリッジ)に接続し、モデルベース設計のベストプラクティスをエンコードしたスキルカタログを提供することで実現される。

主な構成要素

  • MCPツール – エージェントがSimulinkモデルを操作するために呼び出せる即席のコマンド(model_overviewmodel_editmodel_testなど)
  • スキルカタログ – 数十の自己完結型のスキル定義(例:モデル構築、SystemComposerアーキテクチャ、検証、コード生成)で、各スキルには必要なツールボックスを記述したmanifest.yamlが含まれる
  • 自動インストーラー – MATLABツールボックス(agenticToolkitInstaller.mltbx)で、MCPサーバーのインストール、ツールの登録、選択したエージェントへのスキルの追加を1つのコマンド(setupAgenticToolkit("install"))で実行可能
  • ライブラリ設定 – インストール済みのMathWorksブロックライブラリまたはカスタムブロックライブラリをエージェントの知識ベースに公開するためのヘルパー(satk.Configuration.setLibrary

動作方法

  1. インストーラーがMATLAB MCP Serverを起動し、実行中のMATLAB/Simulinkセッション(shareMATLABSession)に接続する
  2. エージェントがスキルファイル(グローバルまたはプロジェクト単位)を読み込み、含まれるドメイン知識を学習する
  3. エージェントがモデルに対して操作を実行する必要がある場合、MCPツールを呼び出す。サーバーはリクエストをMATLABに転送し、対応するSimulink APIコールを実行して結果を返す

対応プラットフォーム – MCPツールとスキルを消費できる任意のLLMベースのコーディングエージェント。リポジトリには、Claude Code、GitHub Copilot、OpenAI Codex、Google Gemini CLI、Sourcegraph Ampの自動セットアップサポートが検証済みとして記載されている

インストール(クイックスタート)

% 1. 最新リリースからツールボックスをダウンロード
matlab.addons.toolbox.installToolbox('agenticToolkitInstaller.mltbx')
% 2. インストーラーを実行(MCPサーバー、ツール、スキルのインストール)
setupAgenticToolkit('install')

ヘッドレスまたはプロキシ制限環境では、上記のようにプログラム的にツールボックスをインストール可能

手動セットアップ(完全な制御を希望する場合)

  • OSに適したmatlab-mcp-serverバイナリをダウンロードし、~/.matlab/agentic-toolkits/bin/に配置する
  • ./matlab-mcp-server --setup-matlabでサーバーを起動し、MATLABコンソールでshareMATLABSession()を実行する
  • このリポジトリをクローンし、tools/tools.json拡張をサーバーのコマンドラインに追加する
  • スキルディレクトリを~/.agents/skills/にシンボリックリンクする(READMEにスクリプトあり)

一般的なワークフロー

% 現在のMATLABセッション用にツールキットを初期化
addpath('~/.matlab/agentic-toolkits/simulink')
satk_initialize

% モデルを開く(Simulinkに同梱の例)
openExample('simulink_general/sldemo_househeatExample')

% LLMエージェントで以下を尋ねる:
%   "現在開いているモデルの構造を説明してください。"
% エージェントはMCP経由で`model_overview`を呼び出し、階層構造を返す

エージェントが行えること(選択されたMCPツール)

ツール 機能
model_overview サブシステム階層と主要な接続をリストアップ
model_read ブロックパラメータ、式、信号フローを検査
model_edit ブロックの追加・削除、信号の接続、パラメータ設定
model_check 編集時チェック(未接続ポート、状態問題)
model_test Gherkinスタイルの検証テストの実行(Simulink Testが必要)
model_query_params / model_resolve_params 原始的または解決済みのパラメータ値を取得
model_read_diagnostics Diagnostic Viewerからエラー/警告を取得

セキュリティに関する注意 – すべてのツール呼び出しは実行前にレビューすること。モデルの変更やコード生成を行う操作には、常に人間の監視を保つこと

ライセンスLICENSE.mdを参照。MCPサーバーの使用はMathWorksソフトウェアライセンス契約に準拠し、1人のMATLAB/Simulinkユーザーに限定される

サポート – リポジトリでイシューをオープンするか、MathWorks技術サポートに連絡。プルリクエストは無効化されており、貢献は通常のGitHubイシュー駆動プロセスを通じて受け付ける

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト