mcpField
Q
quickbooks-mcp-server

quickbooks-mcp-server

ローカル
github.com/NyxToolsDev金融データ030 週間前に更新

quickbooks-mcp-server について

quickbooks-mcp-serverはQuickBooks OnlineをClaude DesktopとClaude Codeに接続し、自然言語で会計業務を扱えます。財務照会や顧客・請求書の操作に対応し、有料機能ではレポートやデータ更新も行えます。

主な機能

  1. 01請求書の一覧、検索、詳細確認
  2. 02経費と口座取引の確認
  3. 03残高と顧客サマリーの照会
  4. 04財務レポートの作成
  5. 05請求書と経費の作成
  6. 06支払い記録と期間比較

活用シーン

  1. 01延滞請求書と支払い履歴を確認
  2. 02仕入先やカテゴリ別の支出を確認
  3. 03口座残高と最近の取引を照会
  4. 04請求書の作成や経費・支払いの記録

MCP 対応

このMCPサーバーは、請求書、経費、口座、顧客の操作を含むQuickBooks Online会計ツールをClaudeクライアントに提供します。有料ツールではレポートとデータ更新操作も利用できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"nyxtoolsdev-quickbooks": {
"command": "uvx",
"args": [
"quickbooks-mcp"
]
}
}
}
起動コマンドuvx quickbooks-mcp

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypiquickbooks-mcp0.1.1

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

QuickBooks MCP サーバー

Claude Desktop と Claude Code を QuickBooks Online に接続し、自然言語で会計業務を行えます。請求書、経費、レポートなどについて、平易な英語で質問できます。

ライセンス:MIT Python 3.10+


これは何ですか?

Claude が QuickBooks Online のデータに直接アクセスできるようにする MCP(Model Context Protocol) サーバーです。QuickBooks にログインしてレポートをクリックして確認する代わりに、Claude に尋ねるだけです。

「期限超過の請求書を金額順にすべて表示して」 「今四半期の損益はどうなっていますか?」 「Acme Corp 宛てに 2,500 ドルの請求書を作成して」

このサーバーが OAuth 認証、API 呼び出し、レート制限、データの書式設定を処理します。


クイックスタート

1. インストール
pip install quickbooks-mcp

または、ソースからインストールします。

git clone https://github.com/nyxtools/quickbooks-mcp-server.git
cd quickbooks-mcp-server
pip install -e .
2. QuickBooks Developer App を作成する
  1. developer.intuit.com にアクセスします
  2. アプリを作成し、QuickBooks Online and Payments を選択します
  3. Keys & OAuth で、Client ID と Client Secret を控えます
  4. Redirect URI として http://localhost:8080/callback を追加します
3. 環境変数を設定する
export QBO_CLIENT_ID='your_client_id'
export QBO_CLIENT_SECRET='your_client_secret'
4. OAuth のセットアップを実行する
python scripts/setup_oauth.py

ブラウザーが開き、QuickBooks の認証が行われ、トークンがローカルに(暗号化して)保存されます。最後に表示される Realm ID を控えてください。

export QBO_REALM_ID='your_realm_id'
5. Claude Desktop を設定する

Claude Desktop の設定ファイル(claude_desktop_config.json)に追加します。

{
  "mcpServers": {
    "quickbooks": {
      "command": "quickbooks-mcp",
      "env": {
        "QBO_CLIENT_ID": "your_client_id",
        "QBO_CLIENT_SECRET": "your_client_secret",
        "QBO_REALM_ID": "your_realm_id"
      }
    }
  }
}

設定ファイルの場所:

  • macOS:~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows:%APPDATA%\Claude\claude_desktop_config.json
  • Linux:~/.config/Claude/claude_desktop_config.json
6. 使用を開始する

Claude Desktop を再起動して、次のように試してみてください。

「現在の銀行口座残高を教えて」


全 19 種類のツール

無料プラン(9 種類のツール)
ツール説明
list_invoicesステータス、日付、顧客で請求書を一覧表示・絞り込み
get_invoice_details明細項目と支払い履歴を含む請求書の詳細
get_overdue_invoices支払期日からの経過日数順に並べた期限超過請求書
list_expenses日付、取引先、金額、カテゴリで経費を一覧表示・絞り込み
get_top_expenses任意の期間について、カテゴリまたは取引先別にまとめた上位の経費
get_account_balances銀行口座、クレジットカード、またはすべての口座の現在残高
get_account_transactions日付で絞り込める、任意の口座の最近の取引
search_customers連絡先情報を含め、名前またはメールアドレスで顧客を検索
get_customer_summary顧客の財務概要:請求額、支払額、未払い額
プレミアムプラン(10 種類のツール)-- 月額 $29
ツール説明
get_profit_and_loss任意の期間の損益レポート(収入・経費の内訳付き)
get_balance_sheet任意の日付時点の貸借対照表(資産、負債、純資産)
get_cash_flowキャッシュフロー計算書(営業、投資、財務)
get_accounts_receivable_aging顧客別の売掛金の経過期間(未経過/30/60/90 日以上)
get_accounts_payable_aging取引先別の買掛金の経過期間(未経過/30/60/90 日以上)
create_invoice明細項目、支払期日、メモを指定して請求書を作成
record_payment方法と参照情報を指定して請求書への支払いを記録
create_expense取引先、金額、カテゴリ、日付を指定して経費を記録
get_financial_health主要指標:流動比率、DSO、バーンレート、ランウェイ
compare_periods期間を横並びで比較し、変化率を表示

プレミアムライセンスは nyxtools.dev/quickbooks-mcp で取得できます。

環境変数に設定します。

export LICENSE_KEY='your_license_key'

使用例

請求書

「1 月の請求書をすべて表示して」 「期限超過の請求書はどれですか?特に問題のあるものから表示して」 「請求書 #1042 の詳細を表示して」 「Acme Corp の未決済請求書を表示して」

経費

「今月はいくら使いましたか?」 「今四半期の経費カテゴリ上位10件を表示してください」 「今年、Amazonでいくら使いましたか?」

口座

「銀行口座の残高はいくらですか?」 「当座預金口座の直近20件の取引を表示してください」 「会社のクレジットカードの残高はいくらですか?」

顧客

「顧客のJohn Smithを検索してください」 「顧客456の財務概要を教えてください」 「未払い残高のある顧客を検索してください」

レポート(プレミアム)

「今四半期の損益計算書を表示してください」 「貸借対照表を表示してください」 「今月のキャッシュフローはどうですか?」 「売掛金のエイジングレポートを表示してください」 「支払いが最も遅い顧客は誰ですか?」

書き込み操作(プレミアム)

「顧客123の請求書を作成してください:ウェブサイトデザイン $2,500、ホスティング $150/月、支払期限は正味30日」 「請求書#1042に対する$1,000の小切手払いを記録してください」 「3月15日にクレジットカードで支払った、Office Depotでの備品購入費$250を記録してください」

分析(プレミアム)

「財務状況は健全ですか?主要な比率を表示してください」 「今月と先月を比較してください」 「今四半期を前年の同じ四半期と比較するとどうでしたか?」


設定

すべての設定は環境変数で行います。

変数必須デフォルト説明
QBO_CLIENT_IDはいQuickBooks OAuth2 クライアント ID
QBO_CLIENT_SECRETはいQuickBooks OAuth2 クライアントシークレット
QBO_REALM_IDはいQuickBooks の会社/Realm ID
QBO_REDIRECT_URIいいえhttp://localhost:8080/callbackOAuth リダイレクト URI
LICENSE_KEYいいえプレミアムライセンスキー
QBO_SANDBOXいいえfalseサンドボックス環境を使用
TOKEN_STORE_PATHいいえ~/.quickbooks-mcp/tokens.jsonトークンの保存場所
LOG_LEVELいいえINFOログレベル

セキュリティ

  • 保存時のトークンは暗号化されます(マシン固有のキーを使用。Fernet + PBKDF2)
  • トークンは自動更新されます――アクセストークンの有効期間は60分、リフレッシュトークンは100日です
  • 認証情報はコードに保存されません――すべてのシークレットは環境変数で設定します
  • QuickBooks API のレート制限に対応するため、レート制限機能が組み込まれています
  • インジェクションを防ぐため、すべてのクエリパラメーターをサニタイズします

開発

# Clone and install with dev dependencies
git clone https://github.com/nyxtools/quickbooks-mcp-server.git
cd quickbooks-mcp-server
pip install -e ".[dev]"

# Run tests
pytest

# Run with coverage
pytest --cov=quickbooks_mcp

# Lint
ruff check src/ tests/

# Type check
mypy src/
プロジェクト構成
quickbooks-mcp-server/
  src/quickbooks_mcp/
    auth/          # OAuth2 flow and encrypted token storage
    client/        # QBO REST API client with rate limiting
    tools/         # MCP tool implementations (19 tools)
    utils/         # Money (Decimal), formatting, license validation
    server.py      # MCP server setup and tool registration
    config.py      # Environment-based configuration
  scripts/
    setup_oauth.py # Interactive OAuth setup
  examples/        # Config examples and usage guide
  tests/           # Pytest test suite

トラブルシューティング

「QuickBooks のトークンが見つかりません」

OAuth のセットアップを実行してください。

python scripts/setup_oauth.py
「トークンの更新に失敗しました」

リフレッシュトークンの有効期限が切れている可能性があります。OAuth のセットアップを再実行してください。

「QuickBooks API エラー(HTTP 403)」

アプリに com.intuit.quickbooks.accounting スコープがあることを確認してください。

「QuickBooks によってレート制限されました」

サーバーはレート制限を自動的に処理します。このエラーが表示された場合は、60秒お待ちください。

「これはプレミアム機能です」

一部のツールにはライセンスキーが必要です。こちらから入手するか、環境に LICENSE_KEY を設定してください。

サンドボックスモード

実際のデータに影響を与えずにテストするには:

export QBO_SANDBOX=true

Intuit の開発者ダッシュボードから開発用キー(本番用ではありません)を使用してください。


ライセンス

MIT License。詳細はLICENSEを参照してください。

Copyright (c) 2026 NyxTools

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。