hubdb_get_tablesLABSCO SUMMARY
HubDB as a queryable database, not as a CMS panel.
HubDB rows are usually edited through HubSpot's interface and read through templates, which makes them awkward to interrogate. Exposed as SQL tables they become answerable — how many rows match this, which entries are missing a field — in one question rather than by exporting and filtering. This build is read-only with no write tool present; CData sells a separate MCP server with full read-write if you need to change rows.
What it is
A read-only MCP server from CData that puts HubDB behind a SQL interface. The CData JDBC driver models HubDB as relational tables; this server wraps it so an assistant can list the tables, read their columns, and run SELECT queries against live data without you writing SQL.
What you get
- The HubDB tables available, returned as CSV with a header row —
get_tables - The columns on a table, so the query matches the real schema —
get_columns - A SQL SELECT executed against live HubDB content —
run_query - A configurable prefix on the tool names, so this can sit alongside other CData servers in the same client config
- A
Tablessetting that only picks which tables also get a ready-made description (blank means none); it does not limit what the tools can list or query, so limit the connection or the account it signs in with
Requirements
A licensed CData JDBC Driver for HubDB, installed and licensed separately, plus Java. Build from a clone with mvn clean install to produce CDataMCP-jar-with-dependencies.jar. Connection settings live in a .prp file: prefix, server name and version, the path to cdata.jdbc.hubdb.jar, the driver class cdata.jdbc.hubdb.HubDBDriver, the JDBC connection string from the driver's utility, and an optional table list. Transport is stdio, so client and server run on the same machine.
Setup effort
Build from source — clone the repository, then point your client at the binary
USE CASES
Answering a content question about HubDB rows
Ask in plain language and let the assistant find the table and columns before composing the SELECT.
Auditing a table for gaps
Query for rows missing the fields that matter, instead of scrolling the HubSpot table view.
Learning the schema someone else built
List the tables, then read the columns on the ones you inherit, before writing anything that depends on them.
3 tools
Listed in project docs. Your client may show a different list.
hubdb_get_columnshubdb_run_queryBEFORE YOU INSTALL
What to know first
Tools you get
3 tools named in the project's documentation. All three tools read, so you can query HubDB rows but not add or edit them; write access is a separate paid CData product. Tool names are prefixed by your server name, as in {servername}_get_tables.
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
Clone the repository, then point your client at the binary. This one is built from source rather than installed with a single command.
Server setup
git clone https://github.com/cdatasoftware/hubdb-mcp-server-by-cdata.git
cd hubdb-mcp-server-by-cdata
mvn clean installDownload and install the CData JDBC Driver for HubDB from https://www.cdata.com/drivers/hubdb/download/jdbc
License the driver: java -jar cdata.jdbc.hubdb.jar --license (enter name, email, and "TRIAL" or a license key)
Run java -jar cdata.jdbc.hubdb.jar with no arguments to open the Connection String utility, test the connection, copy the connection string
Write a .prp file (e.g. hubdb.prp) containing Prefix=hubdb, ServerName, ServerVersion, DriverPath, DriverClass=cdata.jdbc.hubdb.HubDBDriver, JdbcUrl, Tables
Tables only picks which tables also get a ready-made description for your assistant, and empty means none; the server can still list and query every table your connection string reaches, so to keep data out of reach, limit that connection or the account it signs in with.
Add the mcpServers entry below to claude_desktop_config.json, pointing java at CDataMCP-jar-with-dependencies.jar and at the .prp file, then fully quit and reopen the client
MCP Clients
Claude Desktop — Linux, macOS
{
"mcpServers": {
"hubdb": {
"command": "<YOUR_PATH_TO_JAVA>",
"args": [
"-jar",
"<YOUR_PATH_TO_CDATA_MCP_JAR_WITH>",
"<YOUR_PATH_TO_HUBDB>"
]
}
}
}