home / mcp / quickbooks time mcp server
This read-only MCP Server allows you to connect to QuickBooks Time data from Claude Desktop through CData JDBC Drivers. For full CRUD support, check out the first managed MCP platform: CData Connect AI (https://www.cdata.com/ai/).
Configuration
View docs{
"mcpServers": {
"cdatasoftware-quickbooks-time-mcp-server-by-cdata": {
"command": "java",
"args": [
"-jar",
"/PATH/TO/CDataMCP-jar-with-dependencies.jar",
"/PATH/TO/quickbooks-time.prp"
]
}
}
}You expose live data from QuickBooks Time through a lightweight MCP server that requires no SQL to query. This server wraps the CData JDBC driver so you can ask natural language questions and receive up-to-date results from QuickBooks Time via MCP tools. It is designed for local, read-only access to QuickBooks Time data, enabling LLMs to retrieve information efficiently.
Once you have the MCP server running, you interact with it through an MCP client. You can ask questions like how many open tickets exist, what the current calendar events look like today, or how certain data points relate to each other. The server exposes a small set of tools that let the client discover what data is available and retrieve results in a structured format. You don’t need to write SQL; simply request the data you want, and the client translates your request into tool calls behind the scenes.
Key tool types you will use include: retrieving a list of available tables, listing columns for a specific table, and running a read-only query to fetch data. The tools are named after the server prefix you configure (for example, your server name followed by _get_tables, _get_columns, or _run_query). The output is returned in CSV format for columns, with the first line containing column headers.
# Prerequisites
- Java installed (JDK 8+)
- Access to a QuickBooks Time data source via the CData JDBC Driver for QuickBooks Time
# Step 1: Build the MCP server
mvn clean install
# This creates the JAR: CDataMCP-jar-with-dependencies.jar
# Step 2: Obtain and license the CData JDBC Driver for QuickBooks Time
# (Follow your platform's typical installation flow and then license as shown below)
java -jar cdata.jdbc.tsheets.jar --license
# Step 3: Configure the data source connection (example shown as a Connection String utility)
java -jar cdata.jdbc.tsheets.jar
# Copy the resulting connection string for later use
# Step 4: Create a .prp file for your JDBC connection
# Example contents
Prefix=tsheets
ServerName=CDataTSheets
ServerVersion=1.0
DriverPath=PATH\TO\cdata.jdbc.tsheets.jar
DriverClass=cdata.jdbc.tsheets.TSheetsDriver
JdbcUrl=jdbc:tsheets:InitiateOAuth=GETANDREFRESH;
Tables=
# Step 5: Run the MCP server using the .prp file
java -jar /PATH/TO/CDataMCP-jar-with-dependencies.jar /PATH/TO/quickbooks-time.prpConfiguration is done by providing a .prp file that includes your JDBC driver path, the JDBC URL, and the tables you want exposed. The server runs on your machine and communicates with the client via standard input/output, so you can use a local MCP client or Claude Desktop configured to load the server as a local process.
Running the server on its own uses a local stdio configuration. You start the server by invoking the JAR with the path to your PRP file, for example:
``
java -jar /PATH/TO/CDataMCP-jar-with-dependencies.jar /PATH/TO/Salesforce.prp
``
> Note: The server is designed for local, read-only access in this setup, and the client must run on the same machine as the server due to stdio communication.
Using Claude Desktop or another MCP client involves adding an entry for this server under the mcpServers configuration. The client will start the server process using the command and arguments you specify and then communicate with it via JSON-RPC over stdio.
Troubleshooting tips: - Fully quit and restart your MCP client if the server does not appear - Verify the connection string and the .prp contents match your data source and credentials - If you encounter data retrieval issues, ensure you have properly licensed and loaded the CData JDBC Driver for QuickBooks Time - Reach out to the CData Support Team or the CData Community for help with connectivity or MCP usage
This MCP server is intended for local, read-only access to QuickBooks Time data. Ensure you follow your organization’s security practices when exposing live data to client applications. License the CData JDBC Driver according to your license terms to avoid usage restrictions.
The MCP server exposes the following tool families to the client:
- {servername}_get_tables: Retrieves a list of available data tables. Output is CSV with a header row.
- {servername}_get_columns: Retrieves a list of columns for a specified table. Output is CSV with a header row.
- {servername}_run_query: Executes a SQL SELECT query against the exposed data.This MCP server is licensed under the MIT License. You may use, modify, and distribute it in compliance with MIT terms.
Retrieves a list of tables available in the data source. Output is CSV with column headers.
Retrieves a list of columns for a specified table. Output is CSV with column headers.
Executes a SQL SELECT query against the exposed data.