2025年4月7日月曜日

VS CodeのGitHub Copilot Agent modeにOracleに問い合わせるMCPサーバーを組み込む

VS CodeのGitHub CopilotでMCPサーバーがサポートされたので、以前に作成したOracleに問い合わせるMCPサーバーを組み込み、データベースに問合せをしてみました。使用しているVS CodeはmacOSの1.99.0です。


最初に設定を開きます。


chat.agnet.enabled(Chat > Agent: Enabled)にチェックを入れます。また、chat.mcp.discovery.enabled(settings.jsonを開いて設定)Chat > Mcp > DiscoveryもEnabledにしています。この設定により、Claude Desktopに設定済みのMCPサーバーの設定がVS CodeのGitHub Copilotにインポートされます。


VS Codeからチャットを開きます。


GitHub CopilotのAgent modeを選択します。


ツールの選択状況が表示されます。クリックして選択されたツールを確認します。


Claude Desktopに設定済みだったMCPサーバーoracleが有効になっていることを確認します。


あとは、Copilotとチャットします。

「私のoracleでアクセスできる表を一覧して。」

SQLを実行するかどうか確認を求められるので、とりあえず「このセッションで許可する」を選びます。


SQLが実行され、Copilotが回答します。


会話を継続します。

「接頭辞がEBAの表をすべて一覧して。」


「表EBA_COUNTRIESにはどのようなデータが含まれていますか?」


Copilotの回答をそのまま正しいものとして受け取って良いのかは、Copilotのチャットに含まれている、回答の元になっている生成されたqueryとその実行結果を確認することで判断できそうです。


Oracle APEXのアプリケーションに記述するSQLを生成する際にも、役に立つ仕組みだと思います。