Skip to main content

Set up the QuickBooks MCP server

The MintMCP QuickBooks MCP server gives AI agents access to QuickBooks Online accounting data, including invoices, customers, vendors, accounts, and transactions. This guide covers creating an Intuit developer app, completing the production key questionnaire, and connecting it to MintMCP.

Prerequisites

  • A MintMCP admin account
  • An Intuit Developer account — sign up at developer.intuit.com
  • A QuickBooks Online account (to retrieve your Realm ID)

Create a QuickBooks app

  1. Go to developer.intuit.com/app/developer/homepage.
  2. Click Add a workspace if you don't have one yet, and create one.
  3. Click Add an App.
  4. Enter the app name: MintMCP.
  5. Under Select your scopes, check com.intuit.quickbooks.accounting.
  6. Click Create app (or Next), then click Open app on the confirmation screen.

Fill out the app details

  1. In your app dashboard, click Get production keys to begin the production key setup flow.

  2. Under Add your app's end-user license agreement and privacy policy, enter:

    FieldValue
    End-user license agreement URLhttps://www.mintmcp.com/terms
    Privacy policy URLhttps://www.mintmcp.com/privacy
  3. Under Add your app's host domain, launch URL, disconnect URL, and connect/reconnect URL, enter:

    FieldValue
    Host domainapp.mintmcp.com
    Launch URLhttps://app.mintmcp.com
    Disconnect URLhttps://app.mintmcp.com
    Connect/Reconnect URLhttps://app.mintmcp.com
  4. Under Category for App, select Accounting.

  5. Under Country, select USA.

Fill out the compliance document

  1. Under Regulated industry, select None of the above.
  2. Click Save.

Complete the questionnaire

Intuit requires a questionnaire to approve production key access. Use the answers below.

Section 1 — Compliance

QuestionAnswer
Has your company ever received complaints, lawsuits, or investigative requests from regulatory authorities?No
Have you worked with legal counsel to understand regulatory requirements?No
Have you reviewed and confirmed compliance with Intuit's security requirements?Yes
Is your app designed to enhance the QuickBooks experience or facilitate a business process?Yes
Are you or your representatives subject to sanctions or restrictions?No
Does your application involve generative AI functionality?Yes

Section 2 — App details

QuestionAnswer
Which of the following is true about your app?You built your app from scratch and wrote the code that lets it interact with Intuit APIs
What platform(s) does your app utilize?Web SaaS
How does your app interact with Intuit product data?It reads data from Intuit products
Are you building a private app or a public one?We're building a private app
Which types of QuickBooks Online users can use your app?Any user of the QuickBooks Online company
Does your app integrate with platforms other than Intuit?Yes

Section 3 — OAuth and authentication

QuestionAnswer
Have you tested connecting, disconnecting, and reconnecting your app?Yes
How often does your app refresh access tokens?Only when access_token expires
Does your app retry failed auth requests?Yes
If your app encounters an auth error, do you ask customers to reconnect?Yes
Did you use the Intuit discovery document to get the latest OAuth endpoints?Yes
Can your app handle errors due to expired access tokens?Yes
Can your app handle errors due to expired refresh tokens?Yes
Can your app handle invalid grant errors?Yes
Can your app handle CSRF errors?Yes
Does your app rely on the OAuth playground to get tokens?Yes

Section 4 — API usage

QuestionAnswer
Which broad API categories does your app use?Accounting API
How often does your app call APIs per customer?Daily

Section 5 — Error handling

QuestionAnswer
Have you tested if your app can handle API errors, including syntax and validation errors?Yes
Does your app capture the intuit_tid field from response headers?No
Does your app store error information in logs for troubleshooting?Yes
Do you provide a way for customers to contact you for support from within the app?Yes

Section 6 — Security

QuestionAnswer
Has your company ever had a security breach requiring notification?No
Do you have a security team that regularly assesses vulnerabilities?Yes
Are the client ID and secret stored securely (not hardcoded or in browser logs)?Yes
Does your app use multi-factor authentication?Yes
Does your app use CAPTCHA for authentication?No
Does your app use WebSocket?No
Do you allow Intuit data to be used by or shown to anyone other than the customer?No
  1. Click Submit.

Get production keys

  1. Wait approximately 2 minutes for Intuit to approve the questionnaire submission.

  2. Go to your app dashboard and click Get production keys.

  3. In your app settings, go to Settings > Redirect URIs and add:

    https://app.mintmcp.com/oauth/callback
  4. Go back to Keys & OAuth (or Keys and Credentials) and click Show credentials.

  5. Copy the Client ID and Client Secret — you'll need both in the next step.

Get your Realm ID

The Realm ID is your QuickBooks Online company ID. Each company you connect to MintMCP needs its own Realm ID.

  1. Sign in to QuickBooks Online.
  2. Click the Settings gear icon in the top-right corner.
  3. Under Your Company, click Account and settings (or Additional info in some versions).
  4. Your Company ID is shown in the company information section — this is your Realm ID.

Add QuickBooks to MintMCP

  1. Go to app.mintmcp.com/vmcps?tab=manage-store.
  2. Scroll to find QuickBooks in the list and click to install it.
  3. When prompted, enter:
    • Client ID: paste the Client ID from your Intuit app's Keys & OAuth page
    • Client Secret: paste the Client Secret from your Intuit app's Keys & OAuth page
    • Realm ID: paste your QuickBooks Online Company ID
  4. Click Save (or Install).

Security considerations

  • The Client Secret grants access to your QuickBooks data — store it securely and do not share it.
  • The Realm ID identifies a specific QuickBooks Online company; only users within that company can access its data through the server.
  • Revoking the Intuit app or rotating credentials immediately disconnects the MintMCP QuickBooks server for all users.
  • QuickBooks access tokens expire and are refreshed automatically; no manual token management is required.

Next steps