home / mcp / quickbooks mcp server

QuickBooks MCP Server

This read-only MCP Server allows you to connect to QuickBooks data from Claude Desktop through CData JDBC Drivers. For full CRUD support, check out our MCP Server for QuickBooks (https://www.cdata.com/drivers/quickbooks/download/mcp).

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "cdatasoftware-quickbooks-mcp-server-by-cdata": {
      "command": "java",
      "args": [
        "-jar",
        "CDataMCP-jar-with-dependencies.jar",
        "/PATH/TO/quickbooks.prp"
      ]
    }
  }
}

You have a read‑only MCP server that exposes live QuickBooks data through a simple MCP interface. It lets you ask natural language questions and receive up‑to‑date results without writing SQL. The server wraps the CData JDBC Driver for QuickBooks so you can query QuickBooks data as relational models from your MCP client.

How to use

Connect your MCP client (such as Claude Desktop or any tool that supports JSON‑RPC style MCP calls) to the QuickBooks MCP server. You will interact with it through the built‑in tools that map to the underlying data source. You can ask questions like how many records exist for a given table, what columns are available, or run simple read queries. The server is designed to return results in a familiar tabular format, and you won’t need to write SQL to get started.

How to install

Prerequisites: make sure you have Java installed and available on your command line. You will also need Git and Maven to build the server from source.

Step 1: Clone the project and enter the directory.

git clone https://github.com/cdatasoftware/quickbooks-mcp-server-by-cdata.git
cd quickbooks-mcp-server-by-cdata

Step 2: Build the server to produce the MCP JAR.

mvn clean install
```
This creates the file `CDataMCP-jar-with-dependencies.jar` in the target directory.

Step 3: Install the CData JDBC Driver for QuickBooks. Download from the CData site, then install as instructed by the installer package.

Step 4: License the CData JDBC Driver. From the installation directory, run the license command and provide your name, email, and license key (or TRIAL).

java -jar cdata.jdbc.quickbooks.jar --license
```
Enter your details when prompted.

Step 5: Configure the JDBC connection. Use the Connection String utility to build a connection string, then copy it for use in the server configuration.

java -jar cdata.jdbc.quickbooks.jar
```
Test the connection and copy the resulting JDBC URL for use in the `.prp` file.

Step 6: Create the server properties file (quickbooks.prp) with the required properties. You will provide the exact values you obtained from the connection test.

Prefix=quickbooks
ServerName=CDataQuickBooks
ServerVersion=1.0
DriverPath=PATH\\TO\\cdata.jdbc.quickbooks.jar
DriverClass=cdata.jdbc.quickbooks.QuickBooksDriver
JdbcUrl=jdbc:quickbooks:InitiateOAuth=GETANDREFRESH;
Tables=
```
Replace the placeholder values with your actual paths and URL.

Additional configuration notes

The server is run using a Java command that starts the MCP runtime with your PRP file. You will use the resulting quickbooks.prp in the command line to start the MCP server.

Example PRP usage: you pass the path to the PRP file after the -jar argument.

Operational notes

The MCP server runs in stdio mode, which means it is intended to be used with clients running on the same machine. This setup is ideal for local development or environments where the client and server are co‑located.

If you need to run the server with a Claude Desktop style client, you will configure the client to start the Java process with the path to CDataMCP-jar-with-dependencies.jar and pass your quickbooks.prp file as an argument.

Ensure you fully quit and restart your MCP client after any server configuration changes so the new MCP server becomes visible to the client.

Tools & Endpoints

You will interact with these server tools from your MCP client. They let you discover data structures and run read queries without writing SQL.

Troubleshooting

If you cannot see the QuickBooks MCP Server in your client, fully quit the client and restart it. If data retrieval fails, double‑check your connection string in the .prp file and verify the driver is properly licensed.

If you need help, contact the CData Support Team for driver or MCP related issues.

Available tools

quickbooks_get_tables

Retrieves a list of tables available in the QuickBooks data source. The output is in CSV format with column headers on the first line.

quickbooks_get_columns

Retrieves a list of columns for a specified table. The output is in CSV format with column headers on the first line.

quickbooks_run_query

Executes a SQL SELECT query against the QuickBooks data exposed by the MCP server.