目次
3行サマリ
- 公式Remote MCPが全プランで利用可能: 2026年3月以降、
npx @moneyforward/mcp-serverがOAuth認可を内包し、最も簡単な統合パスを提供。 - KanseiLink実測でトップグループ: trust_score 0.90・エージェント成功率93%・平均156ms。verified(🟢)ティアに位置する。
- つまずきの大半は『設計の理解不足』: 技術的難しさよりも、office_id前提の呼び出し順序と仕訳の貸借一致という会計ドメイン特有の罠が失敗の主因。
会計SaaSは日本SaaSの中で最もエージェント対応(AEO)が進んだカテゴリだ。freeeに続きMoney Forwardが公式Remote MCPを全プラン公開したことで、『中堅企業の会計データに直接触れる会計エージェント』の現実味が一段増した。月次決算・仕訳起票・試算表取得を自動化したいエージェント開発者にとって、Money Forward MCPは2026年に押さえるべき基盤の一つだ。
KanseiLink実測データ — trust 0.90 / 成功率93%
KanseiLinkは実エージェントの利用結果を継続的に収集している。Money Forward Cloud MCPの直近の集計は以下の通り。
Money Forward Cloud MCP — KanseiLink実測(2026-05時点)
成功率93%は日本SaaSの中で上位に入る数字だ。報告された失敗は主に api_error 系で、後述する『呼び出し順序』と『仕訳の整合』に起因するものが目立つ。平均156msという低レイテンシは、会計のような多段ワークフロー(事業所取得→勘定科目取得→仕訳起票)を回すエージェントにとって、リトライ時のコスト累積を抑える上で有利に働く。
公式MCPサーバーの提供・OAuth 2.0準拠・構造化エラーレスポンス(error_messages/errors)・page-basedページネーション。KanseiLinkがAEO上位グループに共通して観測している『エージェントが自己回復できる設計』を備えている。
認証 — OAuth 2.0と公式Remote MCP
Money Forward Cloud会計のAPIは OAuth 2.0 Authorization Code フロー を採用している。スコープは mfc/accounting/read と mfc/accounting/write の2系統。トークン発行は https://accounting.moneyforward.com/oauth/token。
ただしエージェント開発で最も簡単なのは、手動でclient_id/secretを管理するのではなく、公式Remote MCPサーバーを使うことだ。2026年3月以降、全プラン向けに公開されている。
# 公式 Remote MCP サーバー(OAuth認可を内包)
npx @moneyforward/mcp-server
# 手動でREST APIを使う場合は developer.moneyforward.com でアプリ登録
# base_url: https://accounting.moneyforward.com/api/v3/
公式MCPサーバーはOAuthの認可フローをラップしているため、エージェント側はトークンのライフサイクル管理から解放される。手動REST連携が必要なのは、独自バックエンドに組み込む場合や、MCP未対応のランタイムを使う場合に限られる。まずはMCP経由を試すのが、KanseiLink実測の成功率を最大化する近道だ。
主要エンドポイント — office_id起点の設計
Money Forward APIの設計上、ほぼすべての操作は『どの事業所(office)に対する操作か』を前提とする。したがって最初に GET /offices を呼んで office_id を取得し、それをスコープに後続の呼び出しを行う。これはfreeeの company_id と全く同じパターンだ。
| メソッド | パス | 用途 |
|---|---|---|
| GET | /offices | 事業所一覧 — まず office_id を取得 |
| GET | /journals | 仕訳一覧の取得 |
| POST | /journals | 仕訳の起票 |
| GET | /deal_categories | 勘定科目(取引カテゴリ)一覧 |
| GET | /trial_balance | 試算表の取得 |
| POST | /auto_journal_entries | AIによる自動仕訳(2026-03追加) |
GET /api/v3/offices HTTP/1.1
Host: accounting.moneyforward.com
Authorization: Bearer {access_token}
Response:
{"offices":[{"id":123,"display_name":"テスト事務所"}]}
リクエストは application/json、ページネーションは page/per_page(最大100)で、レスポンスに total_count と total_pages を含む。エラーは {"error_messages":[...],"errors":{"field":["message"]}} という構造化フォーマットで返る——これはエージェントが失敗理由を機械的に解釈できる、AEO上は好ましい形だ。
エージェント開発の7つの落とし穴
① office_id を取得せずにエンドポイントを叩く
最も多い初歩的ミス。GET /offices を最初に呼び、office_id を取得してから仕訳・試算表エンドポイントへ進む。freeeの company_id と同じ前提だと覚えておけばよい。
② 仕訳の借方・貸方が一致しない
POST /journals では借方と貸方の金額が一致していなければエラーになる。会計ドメインの基本だが、LLMが金額を生成する際に崩れやすい。仕訳起票前に貸借合計を検算するガードをエージェント側に入れるべきだ。
③ 勘定科目IDを推測で渡す
勘定科目は GET /deal_categories から有効なIDを取得して使う。名称やコードを推測してハードコードすると api_error になる。
金額フィールドはすべてJPYの整数(小数なし)。「1234.56」のような小数や、3桁区切りカンマ付き文字列を渡すと弾かれる。LLMの出力をそのまま渡さず、整数化してから送ること。
④ レート制限(300req/5分)を考慮しない
トークンあたり5分間で300リクエスト。超過すると HTTP 429 が Retry-After 付きで返る。月次の一括取込のようなバースト処理では、Retry-Afterを尊重した指数バックオフ+ジッターを必ず実装する。
⑤ AI自動仕訳エンドポイントを使わず手動で組む
2026年3月に追加された POST /auto_journal_entries は、MLによる経費の自動カテゴライズを提供する。手動で勘定科目を割り当てるより、このエンドポイントを起点にエージェントが提案→人間が承認、というワークフローのほうが精度・速度ともに有利なケースが多い。
⑥ 多通貨仕訳の前提を見落とす
2026年2月に多通貨の仕訳起票がサポートされた。クロスボーダー取引を扱うエージェントは通貨フィールドの扱いを確認すること。単一通貨前提のコードは、為替を伴う事業所で破綻する。
⑦ MCPとREST、どちらで実装するか決めずに始める
独自バックエンドへの深い組み込みでなければ、まずRemote MCP(npx @moneyforward/mcp-server)で試すのが正解。認可のライフサイクル管理を肩代わりしてくれる分、初回成功率が上がる。手動RESTは、MCP未対応ランタイムや細かい制御が必要な場合の選択肢だ。
freeeとの比較 — 似て非なる2つの会計MCP
日本のクラウド会計エージェントを語る上で、freeeとMoney Forwardは避けて通れない2強だ。両者は驚くほど設計思想が似ている一方、細部が異なる。
| 項目 | Money Forward | freee |
|---|---|---|
| 認証 | OAuth 2.0 (Auth Code) | OAuth 2.0 (PKCE) |
| 事業所スコープ | office_id | company_id |
| 公式MCP | あり(全プラン / 2026-03) | あり |
| AI自動仕訳 | あり (/auto_journal_entries) | 機能による |
| 統合ドメイン | 会計中心 | 5ドメイン統合に強い |
共通の罠は『事業所ID取得→勘定科目取得→仕訳の貸借一致』という呼び出し順序とドメイン制約だ。一方を実装できれば、もう一方への移植は容易い。違いは、Money ForwardがAI自動仕訳を明示的なエンドポイントとして提供する点、freeeがPKCEと5ドメイン横断に強い点にある。freee MCPの詳細はこちらの攻略記事を参照してほしい。
FAQ
Q1. 公式MCPサーバーは誰でも使えますか?
はい。npx @moneyforward/mcp-server は2026年3月以降、全プラン向けのRemote MCPとして提供されています。MCPサーバーがOAuth 2.0の認可フローを内包するため、手動でclient_id/secretを管理せず接続できます。手動REST連携を行う場合は developer.moneyforward.com でアプリ登録が必要です。
Q2. Money ForwardとfreeeのMCP/APIはどう違いますか?
両者ともOAuth 2.0で、事業所スコープのID(MFはoffice_id、freeeはcompany_id)を最初に取得する設計は共通です。KanseiLink実測ではMoney Forwardが成功率93%・156ms・trust 0.90。違いはMoney Forwardが全プラン向けRemote MCPとAI自動仕訳(/auto_journal_entries)を備える点、freeeがPKCEと5ドメイン統合に強い点です。
Q3. 仕訳作成APIで最もよくある失敗は?
(1)office_idを取得せずに叩く、(2)借方・貸方の金額が一致しない、の2点が大半です。POST /journalsはoffice_idスコープ内で実行し、deal_categoriesから有効な勘定科目IDを取得してから借方・貸方を組みます。金額はJPYの整数で渡してください。
Q4. レート制限は?
トークンあたり5分間で300リクエストです。超過するとHTTP 429がRetry-After付きで返ります。バースト処理ではRetry-Afterを尊重した指数バックオフを実装し、ページネーション(per_page最大100)で取得件数を抑えてください。
Q5. AEOグレードはどのくらいですか?
KanseiLink実測でtrust_score 0.90・成功率93%・156msと、battle-testedな『verified(🟢)』ティアに位置します。公式MCP提供・OAuth 2.0準拠・構造化エラーという、AEO上位グループの条件を満たしています。最新格付けはKanseiLink MCPの get_service_detail で確認できます。
本記事の技術仕様(認証方式・エンドポイント・レート制限・最近の変更履歴)およびエージェント実測値(trust_score 0.90、成功率93%、平均レイテンシ156ms、報告42件)は、KanseiLink MCPの get_service_detail/get_insights が2026年5月時点で返した値に基づきます。「公式Remote MCP全プラン公開 2026-03」「AI自動仕訳エンドポイント追加 2026-03-18」「多通貨仕訳サポート 2026-02-10」はKanseiLinkの変更履歴データに基づく記載です。API仕様は変更される可能性があるため、実装前に developer.moneyforward.com の公式ドキュメントで最新仕様を必ず確認してください。本記事は特定の実装結果や事業判断を保証するものではありません。