【新モデル】USB型 ポケットWiFi [365チャージWiFi] 車載 Wi-Fi バッテリーレス スティックWiFi 100ギガ付 タイプC モバイルルーター 1年間 使える ポケット WiFi ギガ リチャージ 可能 簡単設定 スティック Wi Fi 月額費用無し モバイルWiFi プリペイドWiFi
¥13,500 (2025年4月30日 13:06 GMT +09:00 時点 - 詳細はこちら価格および発送可能時期は表示された日付/時刻の時点のものであり、変更される場合があります。本商品の購入においては、購入の時点で当該の Amazon サイトに表示されている価格および発送可能時期の情報が適用されます。)KEEPTIME モバイルモニター 15.6インチ 1920*1080 モバイルディスプレイ ポータブルモニター IPS液晶パネル 非光沢画面 薄型 軽量 マグネット保護カバー付き USB Type-C ミニHDMI PS4/XBOX/Switch/PC/Macなど対応 在宅勤務 リモートワーク
¥14,990 (2025年4月30日 13:13 GMT +09:00 時点 - 詳細はこちら価格および発送可能時期は表示された日付/時刻の時点のものであり、変更される場合があります。本商品の購入においては、購入の時点で当該の Amazon サイトに表示されている価格および発送可能時期の情報が適用されます。)
世界で初めてAIと「もっとわっさ〜とダイナミックに動かして」を分かりあった瞬間です。
成果物
本稿では、AIエージェントを活用してTouchDesignerをよりアクセスしやすくし、初心者やアーティストが自分のアイデアを簡単に実現できる(可能性を秘めた)MCPサーバーを開発した経緯と概要、特徴、開発の裏話、そして未来の可能性について紹介します!
TouchDesigner とは?
TouchDesigner は、メディアアーティスト、VJ、インタラクティブデザイナーがリアルタイムのビジュアルや没入型の体験を生み出すためのノードベースのビジュアルプログラミングツールです。
ライブパフォーマンスやアートインスタレーションで使われることが多く、プロフェッショナルの現場でも用いられているツールです。
学習コストの高さが課題
しかし、初心者にとっては課題があります。
数百種に登るノードの種類やそれに紐づくパラメータの多さ、Pythonスクリプトの知識が必要なため、学習コストが高いのです。
AIの登場により、課題解決をAIと並走することができる様になったとは言え「それ、AIがやってよ〜」となるのが人間の業です。
この壁にぶち当たったユーザー(私)の課題を解決するべく、このMCPサーバーの開発を始めました。
MCPで初学者の「守・破・離」を高速化
一部の方には耳タコかもしれませんが、 Model Context Protocol (MCP) とは、アプリケーションが大規模言語モデル(LLM)にコンテキストを提供する方法を標準化するオープンなプロトコルです。例えるなら、AIアプリケーションのための「USB-Cポート」のようなもので、データソースやツールとの標準化された接続を可能にします(MCP公式ドキュメント)。
TouchDesigner MCPは、このプロトコルをTouchDesignerに適用したものです。
具体的には、AIエージェントがTouchDesignerのWebServer DATを通じてプロジェクトを操作できるようにするブリッジです。
WebServer DAT は TouchDesignerにバンドルされた Pythonで HTTP/HTTPS/WebSocket サーバを立ち上げてくれるモジュールです
このMCPサーバーによって、AIエージェントが初学者であるユーザーの意図に近い表現を生成し、ユーザーはその結果を調整しながら学びを深められます。
これによって TouchDesigner 初学者の「守・破・離」を高速化できる と考えています。
また、ユーザーが作った表現をAIエージェントがパラメータ操作を行うことで表現の改善やVJの様に振る舞うことができる様になります。
主な特徴と技術的工夫
TouchDesigner MCPは、クリエイティブな作業を効率化し、初心者でも扱いやすい MCP tool / promptを提供します。
Claude Desktop、Cursor、VSCode CopilotChatなどのAIエージェントと連携が可能となり、これにより、ユーザーは自然言語で指示を出し、AIがTouchDesigner内で適切な操作を実行することができます。
つまり一々プロンプトを考えてAIに回答を出してもらって自分で実装するといった手間を省くことができます。
1. ノード操作の自動化
TouchDesigner MCPは、AIエージェントがノードを自由に操作できるツールを提供します。具体的には:
-
ノードの作成・削除・更新:
create_td_node
やdelete_td_node
などのツールで、ノードを動的に操作。 -
プロパティの取得:
get_td_node_parameters
やget_td_info
で、ノードやプロジェクトの詳細をクエリ。 -
メソッド実行:
exec_node_method
でノードの関数を直接呼び出し。
これにより、ユーザーは複雑なノード設定をAIに任せ、クリエイティブな部分に集中できます。
2. Pythonスクリプトの自動実行
TouchDesigner MCPは、TouchDesignerのPython環境でスクリプトを自動実行する機能を備えています。たとえば、Execute DATを作成し、Pythonコードを直接記述してノードを操作できます。
これにより、複雑な処理もAIエージェントに委ねられ、ユーザーの負担が軽減されます。
3. エラーの自己解析と修正
TouchDesignerのエラーは原因を特定するのが難しいことがありますが、MCP promptによりエラーを再帰的に解析し、修正案を提案します。
たとえば、パーティクルシステムのエミッターが見つからない場合、詳細なエラーレポートを生成し、修正をサポートします。この機能は、初心者にとって特に価値があります。本当にデバッグが大変なので…。
OpenAPIスキーマベースでZodスキーマ / APIクライアントコード / PythonのAPIサーバ コントローラ / サービスを開発
YAMLを書くだけでまるっとクライアントコードとバリデータを吐き出せるようにしたので、改善が容易になっています。
事例: 世界初のAIによるパーティクルシステム構築
AIエージェントだけで TouchDesigner を用いてパーティクルシステムを構築した(きっと多分)世界初の事例です。
パーティクルシステムは、煙や火花のような視覚効果を作成するもので、通常は複雑なノード設定が必要です。MCPを使えば、初心者でもこのような複雑な表現を簡単に実現できます。
この模様の全編は、YouTube動画でも公開しています。
ユーザーさんからのお喜びの声
開発の苦労と解決策
TouchDesigner MCPの開発は、決して簡単ではありませんでした。以下は主な課題とその解決策です:
そもそもMCPから直接アクセスするエンドポイントが TouchDesginer に生えていない
APIが公開されていたりするプロダクトですと、そのエンドポイントをリクエストするだけの実装で済みます。
TouchDesigner には外部公開されているエンドポイントが無いため、WebServer DATと連動するAPIコントローラを全てPythonで自前で実装する必要がありました。
普段Pythonを一切書かないため、Copilotにサポートしてもらいながらtoolsに対応するエンドポイントを全て自分で実装しました。
ノードタイプ / プロパティが膨大でスキーマ定義がつらい
TouchDesignerには、データ処理に使用されるノード(オペレータ)とそのプロパティが膨大に存在します。
当初の設計ではこれらすべてに対してZodスキーマを作成する必要がありました。
解決策:MCPに自身のtoolを使ってZodスキーマを量産させる荒技で解決
ちなみにこのZodはその後の設計修正で削除されました😂
またTouchDesignerのノードUIに表示されるプロパティ名(例:「Output Resolution」)と、内部で使用されるキー(例:「Outputres」)が一致しない問題がありました。
この不一致により、プログラムでノードを操作する際に手動でマッピングする必要があり、私は「人間パーサー」になることを余儀なくされました。
今後の展望
TouchDesigner MCPは、まだ発展途上ですが、未来の可能性は無限大だと思っています。
例えば:
-
YouTubeチュートリアルとの連携:AIエージェントがTouchDesignerのチュートリアル動画から手順を抽出し、プロジェクトを再現する機能。これにより、初心者は動画を見ながら実際のプロジェクトを試せ、学習が直感的になります。
-
コミュニティの拡大:オープンソースプロジェクトとして、MCPは他の開発者やアーティストとのコラボレーションを促進します。ToolのZodスキーマやAPIクライアントコード / WebServer DATのルーティングコードはOpenAPIスキーマから生成できる様にしているで、簡単にプロジェクトに参加できます。(多分)
-
AI VJ時代の幕開け:MCPがライブビジュアルパフォーマンス(VJ)の新しい時代を切り開く…はず。
直球ですが、拡散をお願いします!!
TouchDesigner MCPは、TouchDesignerコミュニティにとって革新的なツールです。AIエージェントを活用することで、初心者やメディアアーティストが複雑なビジュアルプログラミングにアクセスしやすくなり、クリエイティブな表現の幅が広がります。
今後、YouTubeとの連携やさらなる機能追加により、TouchDesigner MCPはアーティストやクリエイターにとって欠かせない存在になると良いな〜と思いながら今後も開発を進めていきます!
是非このMCP serverを使った感想をXに呟いてください!モチベーションが高まるので!!
Views: 0