はじめてのカスタム MCP ツール:CData Connect AI で AI エージェントの操作を定義する



CData Connect AI は、リモート MCP サーバーを通じてデータを公開し、AI エージェントが接続されたあらゆるデータソースを検出・クエリできるようにします。デフォルトでは、エージェントはすべてのテーブルとビルトインツール一式にアクセスできます。カスタム MCP ツールを使えば、さらに一歩進んで、エージェントが名前で呼び出せる厳選された決定論的な操作を、パラメータや動作を正確に指定して定義できます。

カスタムツールは Workspace にスコープされます。Workspace は Connect AI のデータカタログで、テーブルやビューのサブセットをまとめたコレクションです。AI エージェントをグローバルエンドポイントではなく Workspace の MCP エンドポイントに接続することで、そのエージェントが利用できるデータと操作を正確にコントロールできます。

この記事では、顧客データを含むサンプルの Google Sheet に対して Workspace を作成し、業種別にアカウントを取得するツールと新しいサポートチケットを挿入するツールの 2 つのカスタムツールを定義します。その後、Claude Desktop を Workspace に接続して両方のツールをテストします。

前提条件

このガイドに沿って進めるには、以下が必要です。

  • CData Connect AI の Growth プラン以上のアカウント — カスタム MCP ツールには Growth プラン以上が必要です(無料トライアルにサインアップ
  • Connect AI の Admin ユーザーロール — カスタムツールを作成できるのは Admin のみです
  • Google アカウント(お持ちでない場合はこちらで作成してください)
  • Claude Desktop がインストール済みであること

概要

手順の全体像は以下のとおりです。

  1. 顧客データを含むサンプル Google Sheet をコピーする
  2. Connect AI で Google Sheets への接続を構成する
  3. Workspace を作成してテーブルを追加する
  4. Workspace Asset ツールを作成する(業種別にアカウントを取得)
  5. Custom SQL ツールを作成する(新しいサポートチケットを挿入)
  6. Claude Desktop を Workspace の MCP エンドポイントに接続して両方のツールをテストする

ステップ 1:サンプル Google Sheet をコピーする

まず、アカウント、商談、サポートチケット、製品利用状況などの顧客データを含むサンプル Google Sheet をコピーしましょう。

  1. ブラウザでサンプルの顧客ヘルスシートを開きます。
  2. File > Make a copy をクリックして、Google Drive にコピーを保存します。

    NOTE: コピーに付けた名前(例:"demo_organization")を覚えておいてください。Connect AI で接続を構成する際に必要になります。

スプレッドシートには、関連する顧客データを含む 4 つのシートがあります。

  • account:会社名、業種、売上、従業員数などの企業情報
  • opportunity:ステージ、金額、確度、クローズ予定日などの商談情報
  • tickets:優先度、ステータス、説明を含むサポートチケット
  • usage:ジョブ実行数、処理レコード数、売上データなどの製品利用メトリクス

ステップ 2:Connect AI で Google Sheets への接続を構成する

次に、CData Connect AI で Google Sheet への接続を設定していきましょう。

Connect AI にサインアップまたはログインする

  1. https://jp.cdata.com/ai/signup/ から新しいアカウントを作成するか、https://cloud.cdata.com/ から既存のアカウントにログインします。
  2. サインアッププロセスを完了するか、資格情報を使ってログインします。

Google Sheets 接続を追加する

  1. Connect AI にログインしたら、左側のナビゲーションメニューで Sources をクリックし、 Add Connection をクリックします。
  2. Add Connection パネルから Google Sheets を選択します。
  3. 接続の構成画面で、以下を設定します。
    • Spreadsheet プロパティに、コピーした Google Sheet の名前(例:"demo_organization")を設定します
    • Sign in をクリックして、OAuth で Google 認証を行います
  4. 認証が完了したら、Permissions タブに移動し、必要に応じてユーザーベースの権限を構成します。

パーソナルアクセストークンを作成する

パーソナルアクセストークン(PAT)は、Claude Desktop を Connect AI アカウントで認証するために使用します。

  1. Connect AI アプリの右上にある歯車アイコン()をクリックして Settings を開きます。
  2. Access Tokens セクションに移動し、 Create PAT をクリックします。
  3. PAT にわかりやすい名前(例:"Claude Desktop")を入力し、Create をクリックします。
  4. トークンをコピーして安全な場所に保存してください。トークンは一度しか表示されません。

ステップ 3:Workspace を作成する

カスタムツールは Workspace にスコープされます。ここでは Workspace を作成し、Google Sheets のテーブルを追加しましょう。

  1. 左側のナビゲーションで Workspaces をクリックします。
  2. 右上の Add をクリックします。
  3. Workspace Name に customer-data と入力し、Confirm をクリックします。NOTE: ステップ 5 の Custom SQL ツールではこの名前を使用します。別の名前を選んだ場合は、SQL を適宜更新してください。
  4. Workspace 内で Add Asset をクリックし、含めたいテーブルを選択します。少なくとも、Google Sheets 接続から account テーブルと tickets テーブルを追加してください。

ステップ 4:Workspace Asset ツールを作成する

Workspace Asset ツールは、Workspace 内のテーブルに対してビルトインアクション(get、search、create)を公開します。ここでは、業種でフィルタリングしてアカウントを取得するツールを作成しましょう。

  1. Workspace 内で、Custom Tools タブをクリックします。
  2. Add をクリックし、Workspace Asset を選択します。
  3. account テーブルを選択し、Get アクションを選びます。
  4. ツールの詳細を編集します。
    • Tool Nameget_accounts_by_industry
    • AI Instructions:"Retrieves accounts filtered by industry. Use this tool when the user asks about accounts in a specific industry."
    • industry パラメータを Required に設定し、"The industry to filter accounts by (e.g., Healthcare, Technology, Finance)." のような説明を追加します
  5. Save をクリックし、ツールを Enabled に切り替えます。

ステップ 5:Custom SQL ツールを作成する

Custom SQL ツールは、指定した SQL ステートメントを実行します。オプションでパラメータを使用することもできます。ここでは、demo_organization_tickets テーブルに新しいサポートチケットを挿入するツールを作成しましょう。

  1. Custom Tools タブで Add をクリックし、Custom SQL を選択します。
  2. ツールの詳細を編集します。
    • Tool Namecreate_support_ticket
    • AI Instructions:"Creates a new support ticket. Use this tool when the user asks to open, log, or create a ticket for an account."
  3. 以下の SQL ステートメントを入力します。パラメータには @param 構文を使用します。
    INSERT INTO [customer-data].[ROOT].[demo_organization_tickets]
      (AccountId, Subject, Priority, Status, Type, Description)
    VALUES
      (@account_id, @subject, @priority, 'pending', 'problem', @description)
  4. パラメータセクションで、各パラメータを構成します。
    • @account_id — Required。"The Id of the account to open the ticket for. Use get_accounts_by_industry or ask for the account name first to retrieve the Id."
    • @subject — Required。"A short summary of the issue."
    • @priority — Required。"Ticket priority: low, normal, high, or urgent."
    • @description — Optional。"A detailed description of the issue."
  5. NOTE: テーブル参照 [customer-data].[ROOT].[demo_organization_tickets] は、Workspace 名とコピーした Google Sheet の名前を使用しています。別の名前を使った場合は、適宜更新してください。

  6. Validate SQL をクリックしてステートメントが有効であることを確認し、Save をクリックしてツールを Enabled に切り替えます。

ステップ 6:Claude Desktop を接続してツールをテストする

それでは、Claude Desktop を Workspace 専用の MCP エンドポイントに接続して、カスタムツールを使えるようにしましょう。

Workspace の MCP URL を取得する

  1. Workspace 内で View Endpoints をクリックします。
  2. Remote MCP Server URL をコピーします。以下のような形式になります。 https://mcp.cloud.cdata.com/mcp/workspaces/your-workspace-guid

Claude Desktop を構成する

  1. Claude Desktop の設定ファイルを開きます。
    • macOS~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows%APPDATA%\Claude\claude_desktop_config.json
  2. mcpServers の下に以下のエントリを追加します。URL はコピーしたものに置き換え、Base64 エンコードした email:PAT を指定してください。
    {
      "mcpServers": {
        "cdata-custom-tools": {
          "type": "streamableHttp",
          "url": "https://mcp.cloud.cdata.com/mcp/workspaces/your-workspace-guid",
          "headers": {
            "Authorization": "Basic your_base64_encoded_email_PAT"
          }
        }
      }
    }

    NOTE: 資格情報を Base64 エンコードするには、ターミナルで echo -n "[email protected]:your-PAT" | base64 を実行してください。

  3. ファイルを保存し、Claude Desktop を再起動します。
  4. Claude Desktop で新しい会話を開きます。利用可能な MCP サーバーとして cdata-custom-tools が表示されるはずです。

Workspace Asset ツールをテストする

Claude に読み取りツールの使用を依頼してみましょう。

  • "Healthcare 業界のアカウントをすべて取得して"
  • "アカウントリストに含まれる Technology 企業はどれ?"

Claude は適切なパラメータを使って get_accounts_by_industry を呼び出し、Google Sheet から直接結果を返します。

Custom SQL ツールをテストする

Claude にチケットの作成を依頼してみましょう。

  • "Aurora Healthcare Systems について、ユーザーがログインできない問題の高優先度チケットを作成して"

Claude はまず Aurora Healthcare Systems のアカウントを検索して Id を取得し、その後 create_support_ticket を Id、件名、優先度、説明をパラメータとして呼び出します。Google Sheet を開いて新しい行が追加されたことを確認できます。

次のステップ

カスタム MCP ツールの設定が完了したら、以下のような活用が可能です。

  • 更新や削除など、他の書き込み操作用の Custom SQL ツールを適切なガードレールとともに追加する
  • サンプルの Google Sheet を Salesforce、Zendesk、Snowflake などの本番データソースに置き換える
  • チームやユースケースごとに異なるツールセットを持つ複数の Workspace を作成する
  • Cursor や ChatGPT など、他の MCP 対応 AI クライアントを同じ Workspace エンドポイントに接続する

CData Connect AI を始めましょう

300 以上の SaaS、ビッグデータ、NoSQL ソースへのリアルタイムデータアクセスを AI アプリケーションから直接利用するには、CData Connect AI をぜひお試しください。