メインコンテンツへスキップ

Model Context Protocol

会話の中に、あなたの元帳を。

いつも使っているAIツールにBeancountを接続。お金のことを質問し、元帳ファイルを編集し、変更の履歴はGitでたどれます。

ただ尋ねるだけ

まずは質問してみましょう。答えの根拠を、元帳までたどれます。

これはサンプルデータです。実際の元帳には接続していません。
あなた

今日の純資産は?

AIアシスタント

あなたの純資産は本日時点で128,450.32 USDです。

元帳の残高を照会し、答えの根拠となった結果を確認できます。
答えの根拠
runBqlQuery
SELECT sum(position) WHERE account ~ 'Assets|Liabilities'

128450.32 USD

Beancount

MCP互換クライアントで動作

  • Claude Code
  • Claude Desktop
  • Codex
  • Cursor
  • Windsurf
  • Zed

すでに使っているクライアントを接続

クライアントを選択し、サーバーを一度追加して、アクセスを許可する台帳を承認します。

Claude Code

  1. ターミナルでこのコマンドを実行してください。

  2. Claude Code を開き、/mcp を実行して認証します。Web Beancount にサインインし、1つの台帳またはすべての台帳を承認します。

  3. 一度承認すると、資格情報はここから自動的に更新されます。

クライアント設定ドキュメント
ターミナル
claude mcp add --transport http beancount https://beancount.io/api-gateway/mcp

台帳が複数ありますか?一度にすべてを承認できます。アシスタントは listLedgers を呼び出してアクセス可能な台帳を確認し、各呼び出しで台帳名を指定するため、1つのサーバーですべての帳簿をカバーできます。

Web Beancount アカウントを使用して、サーバーがアクセスできる台帳を承認します。

AI ができること

サーバーは帳簿と銀行連携のための専用ツールを提供します。帳簿の操作は以下のとおりです。AI はこれらを組み合わせて、ファイル構成を把握し、文脈を読み取り、答えを問い合わせ、編集を提案します。

帳簿ツールと銀行ツール。使い方はクライアントが決めます。

runBqlQuery

残高、取引、勘定科目に対して BQL(Beancount Query Language)クエリを実行します。

listLedgerFiles

台帳リポジトリのディレクトリ構造を閲覧します。

readLedgerFiles

.beancount ファイルやその他の台帳ドキュメントの内容を読み取ります。

updateLedgerFiles

アトミックな git コミットでファイルを変更し、dry_run でプレビューできます。ファイルの追加と削除は createLedgerFiles と deleteLedgerFiles が担います。

あなたの台帳を守ります

あなたの帳簿への書き込みアクセスを持つAIは、約束ではなく設計によって信頼を勝ち取ります。

スコープ付き OAuth 2.1

接続がアクセスできる範囲を選択できます。単一の台帳、またはすべての台帳です。個人の台帳のみを承認すれば、その接続はビジネスの帳簿に触れることはできません。影響範囲はあなたが設定します。

ドライランによるプレビュー

ファイルツール(createLedgerFiles、updateLedgerFiles、deleteLedgerFiles)と appendLedgerText は dry_run モードに対応しています。何も書き込まずに正確な変更内容を検証・プレビューするので、クライアントは先に差分を表示できます。

すべての編集はgitコミット

変更は実際のコミット("AI edit: …")として台帳のリポジトリに記録されます。標準的なgitツールで確認・取り消しできる完全な監査証跡です。

ステートレスサーバー

MCPサーバーは、ツール呼び出し間でセッション状態を保持しません。選択した AI クライアントとモデルは、リクエストした結果を受け取ります。接続前に、それらのデータポリシーを確認してください。

あなたの台帳全体はすでにgitリポジトリです。

Git for Beancountの動作を確認する

よくある質問

接続前に知っておきたいこと。

どのように構築されているか気になりますか?

ブログでエンジニアリングFAQを読む

他の会計MCPサーバーと比較検討中ですか?

Beancount MCPとQuickBooks、Xero、Expensifyの比較
MCPとは何か、Beancountにとってなぜ重要なのか?

MCP(Model Context Protocol)は、AIアシスタントが外部ツールやデータソースに構造化された安全な方法でアクセスできるようにするオープン標準です。推測したりデータを貼り付けるよう求めたりする代わりに、AIクライアントは台帳に直接接続し、実際のデータをクエリし、実際のファイルを読み取り、正確な編集を行います。

Beancount MCPサーバーと連携できるAIクライアントは?

OAuth 2.1に対応したMCP互換クライアントなら、Claude Code、Claude Desktop、Cursor、Windsurf、Zedなど、すぐにそのまま使えます。OAuth 2.1に対応していないクライアントは、beancount.ioのアカウント設定で生成した静的トークンを使って接続できます。

元帳を接続するにはどうすればいいですか?

クライアントの MCP 設定にサーバー URL を追加します。初回使用時にクライアントがブラウザウィンドウを開きます。Web Beancount アカウントでログインし、単一の台帳またはすべての台帳へのアクセスを許可するかを選択します。以降、クライアントは認証情報を自動的に保存および更新します。

AIは元帳で実際に何ができるのですか?

サーバーは操作ごとに 1 つのツールを公開しています。現在のツール一覧は beancount.io/.well-known/ にある機械可読のディスカバリーマニフェストで確認できます。帳簿ツールは Beancount Query Language のクエリを実行し(runBqlQuery)、リポジトリを参照し(listLedgerFiles)、帳簿ドキュメントを読み取り(readLedgerFiles)、ディレクティブを日付順に追加し(appendLedgerText)、アトミックな git コミットでファイルを作成・変更・削除します(createLedgerFiles、updateLedgerFiles、deleteLedgerFiles。いずれも dry_run プレビューモードに対応)。銀行ツールは保留中の取引の取得・取り込み・破棄と、連携済み接続の管理を行います。新しい銀行の連携は MCP ではなくブラウザで行います。API キーとアカウント設定は Beancount.io の Web アプリで管理します。AI はこれらのツールを組み合わせて質問に答え、編集を提案します。

AIが私の知らないうちに元帳を変更することはありますか?

新しいディレクティブは appendLedgerText で、ファイルの変更はファイルツール(createLedgerFiles、updateLedgerFiles、deleteLedgerFiles)で行います。dry_run モードは何もコミットせずに予定の変更をプレビューします。実際のコミット前に確認を求めるかどうかはクライアント次第です。コミットされた変更はすべて実際の git コミットとして残り、標準の git ツールで元に戻せる完全な監査証跡になります。コミット処理では書き込み後に検証エラーが報告されることがあるため、先にプレビューし、その後で帳簿を確認してください。

データが第三者に送信されることはありますか?

帳簿データはWeb Beancountバックエンドを経由し、ツールの実行結果としてAIクライアントに返されます。選択したAIモデルがその結果を受け取るため、そのプロバイダーのデータポリシーも適用されます。接続は認可した帳簿にのみ到達します。1つの帳簿でも、すべての帳簿でも可能です。

次の会話に、あなたの元帳を持ち込みましょう。

Beancount MCPサーバーは、現在すべてのWeb Beancountユーザーが利用できます。あなたの元帳はgit pushひとつで接続できます。