Phoenix MCP Server by CData

Phoenix MCP Server by CData

Official
CDataSoftware

Connects to Phoenix databases through CData's unified interface, allowing you to query and analyze distributed data stored in Phoenix clusters.

Phoenix MCP Server by CData

146 views1Local (stdio)

What it does

  • Query Phoenix databases using SQL
  • Execute distributed queries across Phoenix clusters
  • Retrieve HBase data through Phoenix SQL interface
  • Access real-time analytics on big data
  • Browse Phoenix table schemas and metadata

Best for

Big data engineers working with HBaseAnalytics teams querying distributed datasetsDevelopers building real-time data applications
CData's enterprise-grade connectivitySQL interface for HBase data

About Phoenix MCP Server by CData

Phoenix MCP Server by CData is an official MCP server published by CDataSoftware that provides AI assistants with tools and capabilities via the Model Context Protocol. Accelerate data workflows with Phoenix MCP Server by CData — a powerful MCP server and data integration server for relia It is categorized under databases, analytics data.

How to install

You can install Phoenix MCP Server by CData in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.

License

Phoenix MCP Server by CData is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.

phoenix-mcp-server-by-cdata

CData's Model Context Protocol (MCP) Server for Phoenix

:heavy_exclamation_mark: This project builds a read-only MCP server. For full read, write, update, delete, and action capabilities and a simplified setup, check out our CData MCP Server for Phoenix.

Purpose

We created this read-only MCP Server to allow LLMs (like Claude Desktop) to query live data Phoenix supported by the CData JDBC Driver for Phoenix.

CData JDBC Driver connects to Phoenix by exposing them as relational SQL models.

This server wraps that driver and makes Phoenix data available through a simple MCP interface, so LLMs can retrieve live information by asking natural language questions — no SQL required.

Setup Guide

  1. Clone the repository:
    git clone https://github.com/cdatasoftware/phoenix-mcp-server-by-cdata.git
    cd phoenix-mcp-server-by-cdata
    
  2. Build the server:
    mvn clean install
    
    This creates the JAR file: CDataMCP-jar-with-dependencies.jar
  3. Download and install the CData JDBC Driver for {source}: https://www.cdata.com/drivers/phoenix/download/jdbc
  4. License the CData JDBC Driver:
    • Navigate to the lib folder in the installation directory, typically:
      • (Windows) C:\Program Files\CData\CData JDBC Driver for Phoenix\
      • (Mac/Linux) /Applications/CData JDBC Driver for Phoenix/
    • Run the command java -jar cdata.jdbc.apachephoenix.jar --license
    • Enter your name, email, and "TRIAL" (or your license key).
  5. Configure your connection to the data source (Salesforce as an example):
    • Run the command java -jar cdata.jdbc.apachephoenix.jar to open the Connection String utility.

      README image
    • Configure the connection string and click "Test Connection"

      Note: If the data sources uses OAuth, you will need to authenticate in your browser.

    • Once successful, copy the connection string for use later.

  6. Create a .prp file for your JDBC connection (e.g. phoenix.prp) using the following properties and format:
    • Prefix - a prefix to be used for the tools exposed
    • ServerName - a name for your server
    • ServerVersion - a version for your server
    • DriverPath - the full path to the JAR file for your JDBC driver
    • DriverClass - the name of the JDBC Driver Class (e.g. cdata.jdbc.apachephoenix.ApachePhoenixDriver)
    • JdbcUrl - the JDBC connection string to use with the CData JDBC Driver to connect to your data (copied from above)
    • Tables - leave blank to access all data, otherwise you can explicitly declare the tables you wish to create access for
      Prefix=apachephoenix
      ServerName=CDataApachePhoenix
      ServerVersion=1.0
      DriverPath=PATH\TO\cdata.jdbc.apachephoenix.jar
      DriverClass=cdata.jdbc.apachephoenix.ApachePhoenixDriver
      JdbcUrl=jdbc:apachephoenix:InitiateOAuth=GETANDREFRESH;
      Tables=
      

Using the Server with Claude Desktop

  1. Create the config file for Claude Desktop ( claude_desktop_config.json) to add the new MCP server, using the format below. If the file already exists, add the entry to the mcpServers in the config file.

    Windows

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

    Linux/Mac

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

    If needed, copy the config file to the appropriate directory (Claude Desktop as the example). 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. Run or refresh your client (Claude Desktop).

Note: You may need to fully exit or quit your Claude Desktop client and re-open it for the MCP Servers to appear.

Running the Server

  1. Run the follow the command to run the MCP Server on its own
    java -jar /PATH/TO/CDataMCP-jar-with-dependencies.jar /PATH/TO/Salesforce.prp
    

Note: The server uses stdio so can only be used with clients that run on the same machine as the server.

Usage Details

Once the MCP Server is configured, the AI client will be able to use the built-in tools to read, write, update, and delete the underlying data. In general, you do not need to call the tools explicitly. Simply ask the client to answer questions about the underlying data system. For example:

  • "What is the correlation between my closed won opportunities and the account industry?"
  • "How many open tickets do I have in the SUPPORT project?"
  • "Can you tell me what calendar events I have today?"

The list of tools available and their descriptions follow:

Tools & Descriptions

In the definitions below, {servername} refers to the name of the MCP Server in the config file (e.g. {classname_dash} above).

  • {servername}_get_tables - Retrieves a list of tables available in the data source. Use the {servername}_get_columns tool to list available columns on a table. The output of the tool will be returned in CSV format, with the first line containing column headers.
  • {servername}_get_columns - Retrieves a list of columns for a table. Use the {servername}_get_tables tool to get a list of available tables. The output of the tool will be returned in CSV format, with the first line containing column headers.
  • {servername}_run_query - Execute a SQL SELECT query

JSON-RPC Request Examples

If you are scripting out the requests sent to the MCP Server instead of using an AI Client (e.g. Claude), then you can refer to the JSON payload examples below – following the JSON-RPC 2.0 specification - when calling the available tools.

phoenix_get_tables

{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/call",
    "params": {
        "name": "phoenix_get_tables",
        "arguments": {}
    }
}

phoenix_get_columns

{
    "jsonrpc": "2.0",
    "id": 2,
    "method": "tools/call",
    "params": {
        "name": "phoenix_get_columns",
        "arguments": {
            "table":  "Account"
        }
    }
}

phoenix_run_query

{
    "jsonrpc": "2.0",
    "id": 3,
    "method": "tools/call",
    "params": {
        "name": "phoenix_run_query",
        "arguments": {
            "sql":  "SELECT * FROM [Account] WHERE [IsDeleted] = true"
        }
    }
}

Troubleshooting

  1. If you cannot see your CData MCP Server in Claude Desktop, be sure that you have fully quit Claude Desktop (Windows: use the Task Manager, Mac: use the Activity Monitor)
  2. If Claude Desktop is unable to retrieve data, be sure that you have configured your connection properly. Use the Connection String builder to create the connection string (see above) and copy the connection string into the property (.prp) file.
  3. If you are having trouble connecting to your data source, contact the CData Support Team.
  4. If you are having trouble using the MCP server, or have any other feedback, join the CData Community.

License

This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.

All Supported Sources

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
ElasticsearchEmailEnterpriseDBEpicor Kinetic
Exact OnlineExcelExcel OnlineFacebook
Facebook AdsFHIRFreshdeskFTP
GitHubGmailGoogle Ad ManagerGoogle Ads
Google Anal

README truncated. View full README on GitHub.

Alternatives

Related Skills

Browse all skills
literature-review

Conduct comprehensive, systematic literature reviews using multiple academic databases (PubMed, arXiv, bioRxiv, Semantic Scholar, etc.). This skill should be used when conducting systematic literature reviews, meta-analyses, research synthesis, or comprehensive literature searches across biomedical, scientific, and technical domains. Creates professionally formatted markdown documents and PDFs with verified citations in multiple citation styles (APA, Nature, Vancouver, etc.).

377
postgresql-psql

Comprehensive guide for PostgreSQL psql - the interactive terminal client for PostgreSQL. Use when connecting to PostgreSQL databases, executing queries, managing databases/tables, configuring connection options, formatting output, writing scripts, managing transactions, and using advanced psql features for database administration and development.

38
data-storytelling

Transform data into compelling narratives using visualization, context, and persuasive structure. Use when presenting analytics to stakeholders, creating data reports, or building executive presentations.

27
content-trend-researcher

Advanced content and topic research skill that analyzes trends across Google Analytics, Google Trends, Substack, Medium, Reddit, LinkedIn, X, blogs, podcasts, and YouTube to generate data-driven article outlines based on user intent analysis

23
data-scientist

Expert data scientist for advanced analytics, machine learning, and statistical modeling. Handles complex data analysis, predictive modeling, and business intelligence. Use PROACTIVELY for data analysis tasks, ML modeling, statistical analysis, and data-driven insights.

13
google-analytics

Analyze Google Analytics data, review website performance metrics, identify traffic patterns, and suggest data-driven improvements. Use when the user asks about analytics, website metrics, traffic analysis, conversion rates, user behavior, or performance optimization.

13