Skip to main content
Glama

QuickBooks Online MCP Server

by heyibad

QuickBooks Online MCP Server

Hacktoberfest 2025 License: MIT

This is a Model Context Protocol (MCP) server implementation for QuickBooks Online integration.

🎃 Hacktoberfest 2025

We're participating in Hacktoberfest 2025! Check out our Hacktoberfest Guide for contribution opportunities. Issues labeled with hacktoberfest and good first issue are great places to start!

Setup

  1. Install dependencies:

npm install
  1. Create a .env file in the root directory with the following variables:

QUICKBOOKS_CLIENT_ID=your_client_id QUICKBOOKS_CLIENT_SECRET=your_client_secret QUICKBOOKS_ENVIRONMENT=sandbox
  1. Get your Client ID and Client Secret:

    • Go to the Intuit Developer Portal

    • Create a new app or select an existing one

    • Get the Client ID and Client Secret from the app's keys section

    • Add http://localhost:8000/callback to the app's Redirect URIs

Authentication

There are two ways to authenticate with QuickBooks Online:

Option 1: Using Environment Variables

If you already have a refresh token and realm ID, you can add them directly to your .env file:

QUICKBOOKS_REFRESH_TOKEN=your_refresh_token QUICKBOOKS_REALM_ID=your_realm_id

Option 2: Using the OAuth Flow

If you don't have a refresh token, you can use the built-in OAuth flow:

This will:

  • Start a temporary local server

  • Open your default browser automatically

  • Redirect you to QuickBooks for authentication

  • Save the tokens to your .env file once authenticated

  • Close automatically when complete

Usage

After authentication is set up, you can use the MCP server to interact with QuickBooks Online. The server provides various tools for managing customers, estimates, bills, and more.

Available Tools

Added tools for Create, Delete, Get, Search, Update for the following entities:

  • Account

  • Bill Payment

  • Bill

  • Customer

  • Employee

  • Estimate

  • Invoice

  • Item

  • Journal Entry

  • Purchase

  • Vendor

Error Handling

If you see an error message like "QuickBooks not connected", make sure to:

  1. Check that your .env file contains all required variables

  2. Verify that your tokens are valid and not expired

-
security - not tested
F
license - not found
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Enables interaction with QuickBooks Online through OAuth authentication. Supports CRUD operations for financial entities like customers, invoices, bills, estimates, and accounting records through natural language.

  1. 🎃 Hacktoberfest 2025
    1. Setup
      1. Authentication
        1. Option 1: Using Environment Variables
        2. Option 2: Using the OAuth Flow
      2. Usage
        1. Available Tools
          1. Error Handling

            MCP directory API

            We provide all the information about MCP servers via our MCP API.

            curl -X GET 'https://glama.ai/api/mcp/v1/servers/heyibad/quickbook-mcp-'

            If you have feedback or need assistance with the MCP directory API, please join our Discord server