CData Connect AI 経由で Theia IDE からリアルタイムでFHIR のデータにクエリ
Theia IDE は、柔軟で拡張性の高い開発環境を提供する、オープンソースのクラウド・デスクトップ対応 IDE プラットフォームです。組み込みの AI 機能は複数の LLM プロバイダーと MCP(Model Context Protocol)ツール連携をサポートしており、開発者は IDE 内のチャットベースのエージェントから直接、外部のライブデータソースとやり取りできます。
Theia IDE と CData Connect AI を組み込みの MCP サーバーを介して連携させると、Theia の AI エージェントがリアルタイムでFHIR のデータにセキュアにアクセスできるようになります。エディタを離れることなく、カスタムの連携コードを書く必要もなく、カタログの一覧表示やスキーマの探索、FHIR のデータのレコードのクエリが可能です。
この記事では、Connect AI での FHIR 接続の設定、必要な Personal Access Token の生成、Theia IDE への CData Connect AI MCP サーバーの登録、LLM プロバイダーによる AI 機能の有効化、そして Theia AI Chat からリアルタイムでFHIR のデータにクエリして連携を確認する方法を解説します。
ステップ 1:Theia IDE 用に FHIR への接続を設定
Theia IDE から FHIR への接続は、Connect AI のリモート MCP サーバーを介して実現します。Theia IDE からFHIR のデータを操作するために、まずは Connect AI で FHIR への接続を作成・設定しましょう。
- Connect AI にログインし、Sources をクリック、次に Add Connection をクリック
- 接続を追加パネルから FHIR を選択
-
FHIR に接続するために必要な認証プロパティを入力します。
URL をFHIR サーバーのService Base URL に設定します。これは接続したいFHIR サーバーでリソースが定義されているアドレスです。ConnectionType をサポートされている接続タイプに設定します。ContentType をドキュメントのフォーマットに設定します。AuthScheme をFHIR サーバーの認証要件に基づいて設定します。
汎用、Azure ベース、AWS ベース、およびGoogle ベースのFHIR サーバー実装がサポートされます。
Service Base URL のサンプル
- 汎用:http://my_fhir_server/r4b/
- Azure:https://MY_AZURE_FHIR.azurehealthcareapis.com/
- AWS:https://healthlake.REGION.amazonaws.com/datastore/DATASTORE_ID/r4/
- Google:https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/
汎用FHIR インスタンス
CData 製品はFHIR のカスタムインスタンスへの接続をサポートします。カスタムFHIR サーバーへの認証はOAuth で行います(OAuth の詳細はヘルプドキュメントを参照してください)。カスタムFHIR インスタンスに接続する前に、ConnectionType をGenericに設定する必要があります。
- Save & Test をクリック
- Permissions タブに移動し、ユーザーベースのアクセス許可を設定
Personal Access Token の追加
Theia IDE から Connect AI への接続認証には、Personal Access Token(PAT)を使用します。アクセス制御の粒度を維持するために、連携ごとに個別の PAT を作成することをお勧めします。
- Connect AI 画面の右上にある歯車アイコン()をクリックして Settings を開きます
- Settings ページで Access Tokens セクションに移動し、 Create PAT をクリック
- PAT にわかりやすい名前を入力し、Create をクリック
- 表示されたトークンをコピーして安全に保存してください。トークンは作成時にのみ表示されます
FHIR の接続設定と PAT の生成が完了しました。これで Theia IDE から Connect AI を通じてFHIR のデータに接続する準備が整いました。
ステップ 2:Theia IDE で Connect AI MCP を設定
続いて、Theia IDE に CData Connect AI のリモート MCP サーバーを登録して、組み込みの AI エージェントが Connect AI を通じてライブデータツールを検出・呼び出せるようにしましょう。
- Theia IDE をダウンロードしてインストール
- Theia IDE を開き、Settings に移動(または Ctrl + , を押す)して Settings ビューを開きます
-
Settings パネルで AI Features を展開し、MCP を選択
-
Edit in settings.json をクリックして設定ファイルを開き、以下の JSON を貼り付けます:
{ "ai-features.mcp.mcpServers": { "cdata": { "serverUrl": "https://mcp.cloud.cdata.com/mcp", "serverAuthToken": "Basic your_base64_encoded_email_PAT", "serverAuthTokenHeader": "Authorization" } } }注意:Theia IDE は Connect AI への接続に Basic 認証を使用します。Connect AI のユーザーメールアドレスと、先ほど作成した PAT を email:PAT の形式で組み合わせ、Base64 エンコードした文字列の先頭に Basic を付けます。例えば、[email protected]:ABC123...XYZ789 の場合、serverAuthToken の値は Basic dXNlckBkb21haW4uY29tOkFCQzEyMy4uLlhZWjc4OQ== のようになります。
- settings.json ファイルを保存
AI の有効化と LLM プロバイダーの設定
Theia IDE でエージェントの推論を機能させるには、AI 機能を有効化し、少なくとも 1 つの LLM プロバイダーを設定する必要があります。
- Settings に戻り、AI Features から AI Enablement を選択
-
Enable AI のチェックボックスをオンにして、Theia の AI 機能を有効化
- AI Features で、使用する LLM プロバイダー(Anthropic、OpenAI、Google、Hugging Face など)を選択し、API キーを入力
MCP サーバーの登録と LLM プロバイダーの設定が完了しました。これで Theia の AI エージェントが Connect AI を通じてリアルタイムでFHIR のデータにクエリできるようになりました。
ステップ 3:Theia AI Chat からリアルタイムでFHIR のデータにクエリ
連携の設定が完了したので、Theia AI Chat パネルからFHIR のデータを操作してみましょう。
- Theia IDE の右側サイドバーから AI Chat パネルを開きます
- チャットの下部にある Toggle Capabilities Configuration アイコンをクリック(または Ctrl + Shift + . を押下)して Capabilities パネルを開きます
-
Generic Capabilities から MCP を展開し、cdata サーバー(およびエージェントに公開したい特定のツール)にチェックを入れて、Connect AI のツールをエージェントから利用可能にします
-
チャット入力欄に @AppTester と入力し、続けてプロンプトを記述します。例えば:
- cdata mcp のすべてのカタログを一覧表示して
- FHIR の利用可能なスキーマとテーブルを表示して
- FHIR のデータのテーブルから上位 5 件のレコードを取得して
-
エージェントが Connect AI MCP サーバーを呼び出し、FHIR のデータからリアルタイムの結果を返します
これで、Theia IDE が Connect AI MCP サーバーと通信し、リモート MCP を通じてエディタから直接リアルタイムのFHIR のデータを取得できるようになりました。
CData Connect AI の入手
クラウドアプリケーションから 数百種類の SaaS、ビッグデータ、NoSQL ソースに直接アクセスするには、CData Connect AI をぜひお試しください。 14日間の無償トライアルをダウンロードして、今すぐお試しいただけます。ご不明な点がございましたら、サポートチーム までお気軽にお問い合わせください。