mcpField
D
databricks-mcp-server-by-cdata

databricks-mcp-server-by-cdata

ローカル
github.com/CDataSoftwareデータベース154 週間前に更新

databricks-mcp-server-by-cdata について

CData JDBC Driver 経由で Databricks のライブデータを照会するローカルの読み取り専用 MCP サーバーです。SQL を書かずに自然言語でデータを取得したい LLM クライアント向けです。

主な機能

  1. 01Databricks データの読み取り専用アクセス
  2. 02JDBC Driver による接続
  3. 03ライブデータの自然言語検索
  4. 04SQL クエリとスキーマのツール

活用シーン

  1. 01Databricks のライブデータの照会
  2. 02利用可能なテーブルと列の確認
  3. 03条件付き SQL クエリの実行

MCP 対応

テーブル・列の取得や SQL 実行など、Databricks の照会ツールを MCP クライアントに公開します。stdio を使用するため、クライアントはサーバーと同じマシンで動作する必要があります。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

databricks-mcp-server-by-cdata

Databricks 用 CData の Model Context Protocol(MCP)サーバー

:heavy_exclamation_mark: このプロジェクトでは、ローカルで動作する読み取り専用の MCP サーバーを構築します。完全なリモート MCP アクセスについては、初のマネージド MCP プラットフォームである CData Connect AI をご覧ください。ローカルホスト型で、読み取り、書き込み、更新、削除、アクションのすべてに対応し、セットアップも簡単な環境については、Databricks 用 CData MCP サーバーをご覧ください。

目的

Databricks 用 CData JDBC Driver でサポートされる Databricks のライブデータを LLM(Claude Desktop など)がクエリできるように、この読み取り専用の MCP サーバーを作成しました。

CData JDBC Driver は、Databricks をリレーショナル SQL モデルとして公開することで接続します。

このサーバーはそのドライバーをラップし、シンプルな MCP インターフェースを通じて Databricks データを利用可能にします。そのため、LLM は SQL を使わず、自然言語で質問するだけでライブ情報を取得できます。

セットアップガイド

  1. リポジトリをクローンします。
    git clone https://github.com/cdatasoftware/databricks-mcp-server-by-cdata.git
    cd databricks-mcp-server-by-cdata
    
  2. サーバーをビルドします。
    mvn clean install
    
    これにより、JAR ファイル CDataMCP-jar-with-dependencies.jar が作成されます。
  3. Databricks 用 CData JDBC Driver をダウンロードしてインストールします。{source}: https://www.cdata.com/drivers/databricks/download/jdbc
  4. CData JDBC Driver のライセンスを設定します。
    • インストールディレクトリの lib フォルダーに移動します。通常、場所は次のとおりです。
      • (Windows)C:\Program Files\CData\CData JDBC Driver for Databricks\
      • (Mac/Linux)/Applications/CData JDBC Driver for Databricks/
    • コマンド java -jar cdata.jdbc.databricks.jar --license を実行します。
    • 名前、メールアドレス、「TRIAL」(またはライセンスキー)を入力します。
  5. データソースへの接続を設定します(例として Salesforce を使用)。
    • コマンド java -jar cdata.jdbc.databricks.jar を実行して、Connection String ユーティリティを開きます。

      CData JDBC Driver Connectiong String utility.
    • 接続文字列を設定し、「Test Connection」をクリックします。

      注: データソースで OAuth を使用する場合は、ブラウザーで認証する必要があります。

    • 接続に成功したら、後で使用するために接続文字列をコピーします。

  6. 次のプロパティと形式を使用して、JDBC 接続用の .prp ファイル(例:databricks.prp)を作成します。
    • Prefix - 公開するツールに使用するプレフィックス
    • ServerName - サーバー名
    • ServerVersion - サーバーのバージョン
    • DriverPath - JDBC ドライバーの JAR ファイルへのフルパス
    • DriverClass - JDBC Driver Class の名前(例:cdata.jdbc.databricks.DatabricksDriver)
    • JdbcUrl - CData JDBC Driver でデータに接続するための JDBC 接続文字列(上記からコピー)
    • Tables - すべてのデータにアクセスする場合は空欄のままにします。それ以外の場合は、アクセス対象とするテーブルを明示的に指定できます。
      Prefix=databricks
      ServerName=CDataDatabricks
      ServerVersion=1.0
      DriverPath=PATH\TO\cdata.jdbc.databricks.jar
      DriverClass=cdata.jdbc.databricks.DatabricksDriver
      JdbcUrl=jdbc:databricks:InitiateOAuth=GETANDREFRESH;
      Tables=
      

Claude Desktop でサーバーを使用する

  1. 以下の形式を使用して、新しい MCP サーバーを追加するための Claude Desktop の設定ファイル(claude_desktop_config.json)を作成します。ファイルがすでに存在する場合は、設定ファイルの mcpServers にエントリを追加します。

    Windows

    {
      "mcpServers": {
        "{classname_dash}": {
          "command": "PATH\\TO\\java.exe",
          "args": [
            "-jar",
            "PATH\\TO\\CDataMCP-jar-with-dependencies.jar",
            "PATH\\TO\\databricks.prp"
          ]
        },
        ...
      }
    }
    

    Linux/Mac

    {
      "mcpServers": {
        "{classname_dash}": {
          "command": "/PATH/TO/java",
          "args": [
            "-jar",
            "/PATH/TO/CDataMCP-jar-with-dependencies.jar",
            "/PATH/TO/databricks.prp"
          ]
        },
        ...
      }
    }
    

    必要に応じて、設定ファイルを適切なディレクトリにコピーします(例として Claude Desktop を使用しています)。 Windows

    cp C:\PATH\TO\claude_desktop_config.json %APPDATA%\Claude\claude_desktop_config.json
    

    Linux/Mac

    cp /PATH/TO/claude_desktop_config.json /Users/{user}/Library/Application\ Support/Claude/claude_desktop_config.json'
    
  2. クライアント(Claude Desktop)を起動または更新します。

Note: MCP サーバーを表示するには、Claude Desktop クライアントを完全に終了してから再起動する必要がある場合があります。

サーバーの実行

  1. 次のコマンドを実行して、MCP サーバーを単独で起動します。
    java -jar /PATH/TO/CDataMCP-jar-with-dependencies.jar /PATH/TO/Salesforce.prp
    

Note: サーバーは stdio を使用するため、サーバーと同じマシン上で実行されているクライアントでのみ使用できます。

使用方法の詳細

MCP サーバーを設定すると、AI クライアントは組み込みツールを使用して、基盤となるデータの読み取り、書き込み、更新、削除を行えるようになります。通常、ツールを明示的に呼び出す必要はありません。基盤となるデータシステムについての質問をクライアントにするだけでかまいません。例:

  • 「受注成立した商談と取引先の業種には、どのような相関関係がありますか?」
  • 「SUPPORT プロジェクトに未解決のチケットはいくつありますか?」
  • 「今日のカレンダーの予定を教えてもらえますか?」

利用可能なツールの一覧と説明は次のとおりです。

ツールと説明

以下の定義では、{servername} は設定ファイル内の MCP サーバー名(例:上記の {classname_dash})を指します。

  • {servername}_get_tables - データソースで利用可能なテーブルの一覧を取得します。テーブルで利用可能な列を一覧表示するには、{servername}_get_columns ツールを使用します。ツールの出力は CSV 形式で返され、1 行目に列ヘッダーが含まれます。
  • {servername}_get_columns - テーブルの列の一覧を取得します。利用可能なテーブルの一覧を取得するには、{servername}_get_tables ツールを使用します。ツールの出力は CSV 形式で返され、1 行目に列ヘッダーが含まれます。
  • {servername}_run_query - SQL の SELECT クエリを実行します

JSON-RPC リクエストの例

AI クライアント(例:Claude)を使用せずに、MCP サーバーに送信するリクエストをスクリプトで作成する場合は、利用可能なツールの呼び出しに関する以下の JSON ペイロード例を、JSON-RPC 2.0 仕様に従って参照してください。

databricks_get_tables
{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/call",
    "params": {
        "name": "databricks_get_tables",
        "arguments": {}
    }
}
databricks_get_columns
{
    "jsonrpc": "2.0",
    "id": 2,
    "method": "tools/call",
    "params": {
        "name": "databricks_get_columns",
        "arguments": {
            "table":  "Account"
        }
    }
}
databricks_run_query
{
    "jsonrpc": "2.0",
    "id": 3,
    "method": "tools/call",
    "params": {
        "name": "databricks_run_query",
        "arguments": {
            "sql":  "SELECT * FROM [Account] WHERE [IsDeleted] = true"
        }
    }
}

トラブルシューティング

  1. Claude Desktop に CData MCP Server が表示されない場合は、Claude Desktop を完全に終了してください(Windows:タスクマネージャーを使用、Mac:アクティビティモニタを使用)。
  2. Claude Desktop がデータを取得できない場合は、接続が正しく設定されていることを確認してください。Connection String ビルダーを使用して接続文字列を作成し(上記を参照)、接続文字列をプロパティ(.prp)ファイルにコピーしてください。
  3. データソースへの接続に問題がある場合は、CData サポートチームにお問い合わせください。
  4. MCP サーバーの使用に問題がある場合や、その他のフィードバックがある場合は、CData Communityにご参加ください。

ライセンス

この MCP サーバーは MIT License の下でライセンスされています。つまり、MIT License の利用規約に従う限り、ソフトウェアを自由に使用、変更、配布できます。詳細については、プロジェクトリポジトリの LICENSE ファイルをご覧ください。

すべての対応ソース

AccessAct CRMAct-OnActive Directory
ActiveCampaignAcumaticaAdobe AnalyticsAdobe Commerce
ADPAirtableAlloyDBAmazon Athena
Amazon DynamoDBAmazon MarketplaceAmazon S3Asana
Authorize.NetAvalara AvaTaxAvroAzure Active Directory
Azure Analysis ServicesAzure Data CatalogAzure Data Lake StorageAzure DevOps
Azure SynapseAzure TableBasecampBigCommerce
BigQueryBing AdsBing SearchBitbucket
Blackbaud FE NXTBoxBullhorn CRMCassandra
CertiniaCloudantCockroachDBConfluence
Cosmos DBCouchbaseCouchDBCSV
CventDatabricksDB2DocuSign
DropboxDynamics 365Dynamics 365 Business CentralDynamics CRM
Dynamics GPDynamics NAVeBayeBay Analytics
ElasticsearchメールEnterpriseDBEpicor Kinetic
Exact OnlineExcelExcel OnlineFacebook
Facebook AdsFHIRFreshdeskFTP
GitHubGmailGoogle Ad ManagerGoogle Ads
Google AnalyticsGoogle CalendarGoogle Campaign Manager 360Google Cloud Storage
Google ContactsGoogle Data CatalogGoogle DirectoryGoogle Drive
Google SearchGoogle SheetsGoogle SpannerGraphQL
GreenhouseGreenplumHarperDBHBase
HCL DominoHDFSHighriseHive
HubDBHubSpotIBM Cloud Data EngineIBM Cloud Object Storage
IBM InformixImpalaInstagramJDBC-ODBC Bridge
JiraJira AssetsJira Service ManagementJSON
KafkaKintoneLDAPLinkedIn
LinkedIn AdsMailChimpMariaDBMarketo
MarkLogicMicrosoft DataverseMicrosoft Entra IDMicrosoft Exchange
Microsoft OneDriveMicrosoft PlannerMicrosoft ProjectMicrosoft Teams
Monday.comMongoDBMYOB AccountRightMySQL
nCinoNeo4JNetSuiteOData
OdooOffice 365OktaOneNote
OracleOracle EloquaOracle Financials CloudOracle HCM Cloud
Oracle SalesOracle SCMOracle Service CloudOutreach.io
ParquetPaylocityPayPalPhoenix
PingOnePinterestPipedrivePostgreSQL
Power BI XMLAPrestoQuickbaseQuickBooks
QuickBooks OnlineQuickBooks TimeRaisers Edge NXTReckon
Reckon Accounts HostedRedisRedshiftREST
RSSSage 200Sage 300Sage 50 UK
Sage Cloud AccountingSage IntacctSalesforceSalesforce Data Cloud
Salesforce Financial Service CloudSalesforce MarketingSalesforce Marketing Cloud Account EngagementSalesforce Pardot
SalesloftSAPSAP Ariba ProcurementSAP Ariba Source
SAP Business OneSAP BusinessObjects BISAP ByDesignSAP Concur
SAP FieldglassSAP HANASAP HANA XS AdvancedSAP Hybris C4C
SAP Netweaver GatewaySAP SuccessFactorsSAS Data SetsSAS xpt
SendGridServiceNowSFTPSharePoint
SharePoint Excel ServicesShipStationShopifySingleStore
SlackSmartsheetSnapchat AdsSnowflake
SparkSplunkSQL Analysis ServicesSQL Server
SquareStripeSugar CRMSuiteCRM
SurveyMonkeySybaseSybase IQTableau CRM Analytics
TallyTaxJarTeradataTier1
TigerGraphTrelloTrinoTwilio
TwitterTwitter AdsVeeva CRMVeeva Vault
Wave FinancialWooCommerceWordPressWorkday
xBaseXeroXMLYouTube Analytics
ZendeskZoho BooksZoho CreatorZoho CRM
Zoho InventoryZoho ProjectsZuora... ほか数十種類

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。