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_overview、model_edit、model_testなど) - スキルカタログ – 数十の自己完結型のスキル定義(例:モデル構築、SystemComposerアーキテクチャ、検証、コード生成)で、各スキルには必要なツールボックスを記述した
manifest.yamlが含まれる - 自動インストーラー – MATLABツールボックス(
agenticToolkitInstaller.mltbx)で、MCPサーバーのインストール、ツールの登録、選択したエージェントへのスキルの追加を1つのコマンド(setupAgenticToolkit("install"))で実行可能 - ライブラリ設定 – インストール済みのMathWorksブロックライブラリまたはカスタムブロックライブラリをエージェントの知識ベースに公開するためのヘルパー(
satk.Configuration.setLibrary)
動作方法
- インストーラーがMATLAB MCP Serverを起動し、実行中のMATLAB/Simulinkセッション(
shareMATLABSession)に接続する - エージェントがスキルファイル(グローバルまたはプロジェクト単位)を読み込み、含まれるドメイン知識を学習する
- エージェントがモデルに対して操作を実行する必要がある場合、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イシュー駆動プロセスを通じて受け付ける
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト