Claude Media
Claudeとfreee会計の連携 — Claude Codeで仕訳・記帳を確認する手順

Claudeとfreee会計の連携 — Claude Codeで仕訳・記帳を確認する手順

freee公式のMCPサーバーとClaude Codeを接続し、仕訳や記帳内容をAIに確認させる手順です。接続方式の選び方と実務のプロンプト例、注意点を扱います。

Claude Codeからfreeeの何に触れるのか

freee-mcpは、freeeが公式OSSとして公開しているMCPサーバーです。公開を告知した2026年3月2日のプレスリリースは、会計・人事労務・請求書・工数管理・販売の5領域で約270本のAPIをMCPツール化したと説明しています。Claude Codeから接続すれば、取引の内容確認や記帳漏れの洗い出しをチャットの指示で進められます。

構成は2層です。MCPサーバーがAPI呼び出し・認証・リクエスト検証を受け持ち、Agent SkillsがAPIリファレンスと操作レシピを必要な分だけAIのコンテキストへ注入します。Claudeがパラメータを推測せずに済むのは、この2層目があるからです。

READMEの利用条件には、拡張分の但し書きもあります。サーベイ・開業・人事評価は「リモート版限定」の扱いです。申告を含む一部は、接続環境・OAuthクライアント・契約プラン・利用者権限が要ると書かれています。会計だけを使うなら関係ありませんが、「全部のAPIがどの環境でも動く」とは読めません。

Claude / Claude Desktopを含めた全体比較は、Claude freee連携の設定手順 — Remote MCPとPluginの使い方にあります。本記事はClaude Codeでの取引確認と、その安全な頼み方に絞ります。

3つの接続経路は何が違うのか

Claude Codeから使う経路は3つあります。違いはセットアップの手間より、どこで動くサーバーにつながるかにあります。

経路

Claude Codeからの接続経路

  • リモートMCPを直接登録

    freeeがホストするサーバーにURLでつなぎます。URLはhttps://mcp.freee.co.jp/mcpだけで、プレスリリースは誤ったURLを足すと情報漏洩の恐れがあると注意しています。Agent Skillsは別に入れます。

  • Claude Code Plugin

    プラグイン定義(.claude-plugin/plugin.json)では、MCPサーバーが同じリモートURLのHTTPサーバーとして宣言され、スキルは./skillsから読み込まれます。つまりPluginは、リモートMCPとAgent Skillsを一括で入れる経路です。

  • ローカルMCPサーバー

    自分でfreeeアプリを登録し、npx freee-mcp configureで認証情報・OAuth・事業所選択まで済ませます。権限の範囲を自分で決めたい場合や、リモートを経由させたくない場合の経路です。

「Pluginはローカル運用向け」と誤解しやすいのですが、定義上の接続先はリモートです。ローカルのMCPサーバーを使いたいなら、Pluginではなく3つ目の経路を選びます。

READMEがローカル用に載せているのは、configureの出力とClaude Desktopの設定ファイル用JSONだけです。Claude Codeへの登録コマンドは載っていません。手元のClaude Code(v2.1.287)でclaude mcp add --helpを見ると、登録の書式は次のとおりでした。

claude mcp add --transport http sentry https://mcp.sentry.dev/mcp   # --helpの例(HTTPサーバー)
claude mcp add my-server -- my-command --some-flag arg1             # --helpの例(stdioサーバー)

これはヘルプ画面に載る一般形で、freee向けの指定ではありません。リモートなら--transport http freee https://mcp.freee.co.jp/mcp、ローカルならfreee -- npx freee-mcpという当てはめになります。ただしこの当てはめは書式からの推定で、freee公式の手順ではありません。既定のスコープはlocalで、--scopeによりuserやprojectへ変えられます。

導入してからfreeeにつながるまでの流れ

Pluginの導入は2コマンドです。マーケットプレース名はfreee-mcp-marketplaceで、READMEの記載どおりです。

claude plugin marketplace add freee/freee-mcp
claude plugin install freee-mcp@freee-mcp-marketplace

プロンプト内なら、/plugin marketplace add freee/freee-mcpと/plugin install freee-mcp@freee-mcp-marketplaceで同じ操作ができます。

Agent Skillsだけを足すならnpx skills add freee/freee-mcpが使えます。GitHub CLI(v2.90.0以降)ならgh skill install freee/freee-mcp freee-api-skillです。

流れ

つながるまでの順序

  1. 1

    プラグインを入れる

    /pluginの一覧でfreee-mcpが有効かを確かめます。MCPサーバーとスキルは別の部品なので、入れただけで両方動いている保証はありません。

  2. 2

    freeeにログインする

    リモート経路は、freeeへのログインで認証が進みます(プレスリリースの説明)。READMEの管理ツール表では、freee_authenticateの備考は「stdioのみ」です。

  3. 3

    事業所を確かめる

    freee_list_companiesで事業所IDまで見ます。freee_set_current_companyで操作対象を決め、freee_get_current_companyで確認します。

  4. 4

    最初は読み取りだけ頼む

    freee_api_getだけで終わる依頼から始めます。書き込みを伴う依頼は、次の節の権限設定を入れてからにします。

company_idをリクエストに含める場合は、現在選択中の事業所と一致していないとエラーになります。複数の事業所を1つのセッションで行き来するなら、作業の直前にこの確認を挟む癖が、誤った事業所へのAPI呼び出しを防ぎます。認証の仕組み(OAuth 2.0 + PKCEやトークンの更新)は、リモートMCPのOAuth認証 — 仕組みとClaude Codeでの実装変化でも扱っています。

「書き換えない」を指示文でなく権限で担保する

freee-mcpの基本ツールは、HTTPメソッドごとに分かれた5つです。freee_api_get・freee_api_post・freee_api_put・freee_api_delete・freee_api_patchが該当します。ほかにエンドポイント一覧を返すfreee_api_list_pathsがあります。パスはOpenAPIスキーマに対して自動検証され、スキーマに無いパスとメソッドの組み合わせはその場でエラーになります。

この構成は、権限設定と相性がよい作りです。読み取りと書き込みがツール名の単位で分かれているため、「GETだけ許す」をツールの許可ルールで表せます。

くらべる

読み取り専用を守る2つの方法

モデル任せ

指示文で縛る

「自動で修正しない」とプロンプトに書く方法です。手軽ですが、守られるかどうかは依頼のたびにモデルの解釈に左右されます。書き込みツールそのものは、呼べる状態のままです。

設定で固定

権限で縛る

書き込み系ツールをaskかdenyにする方法です。モデルの解釈と無関係に、呼び出しの手前で確認が入るか、そもそも呼べなくなります。

権限ルールのツール名は、公式の権限ドキュメントによるとmcp__<サーバー名>__<ツール名>の形です。Plugin同梱のMCPサーバーは、MCPドキュメントによるとmcp__plugin_<プラグイン名>_<サーバー名>__<ツール名>になります。freee-mcpのプラグイン名はfreee-mcp、サーバーのキーはfreeeです。この規則なら、削除ツールはmcp__plugin_freee-mcp_freee__freee_api_deleteと呼ばれる計算になります。命名規則からの導出なので、実際の名前は/mcpや権限の画面で確かめてから書いてください。

.claude/settings.json(例)
{
  "permissions": {
    "allow": ["mcp__plugin_freee-mcp_freee__freee_api_get"],
    "ask": [
      "mcp__plugin_freee-mcp_freee__freee_api_post",
      "mcp__plugin_freee-mcp_freee__freee_api_put",
      "mcp__plugin_freee-mcp_freee__freee_api_patch"
    ],
    "deny": ["mcp__plugin_freee-mcp_freee__freee_api_delete"]
  }
}

制約が1つあります。権限ドキュメントによると、MCPツールのルールに括弧でパラメータ条件を付けても、設定ファイルの読み込み時に無視されます。「/api/1/dealsへの取得だけ許す」といったパス単位の絞り込みはできません。許可の粒度はツール名、つまりHTTPメソッドまでです。freee_api_getを許可すれば、取得できるパスは全部読めます。設定ファイルではなく起動時の--disallowedToolsなら、パラメータ値が完全一致する呼び出しを拒否できます。ただし許可には使えません。

取引の確認を頼むプロンプトの書き方

READMEが取得の例に挙げるのは/api/1/deals、つまり取引です。freeeの「取引」と記事題名の「仕訳」が同じものかは、freee APIリファレンスで確かめる必要があります。仕訳帳そのものを返す経路が別にあるのかも、このREADMEからは読み取れません。以下のプロンプトは、取引一覧を材料に疑わしい行を挙げさせる使い方です。

範囲と観点を先に絞ると、結果のぶれが減ります。「今月の取引を見て」だけでは、どこまで遡るかも、何を基準にするかも決まらないためです。

指示文の例
{対象月}に登録された取引のうち、次の観点で疑わしい行を一覧にしてください。
 
- 取得: freee_api_get で /api/1/deals から対象月分を取得
- 観点:
  1. 税区分が未設定、または金額と税額の計算が合わない
  2. 同じ取引先・同じ金額の重複登録の疑い
  3. 勘定科目が「仮払金」「仮受金」のまま長く残っている
- 出力: 取引ID・取引先・金額・該当した観点・理由
- 判断に迷う行は「要確認」として理由を残す。修正の実行はしない

出力は疑いの一覧であって、会計処理が正しいか誤りかの判定ではありません。税区分や勘定科目の最終判断は、帳簿を持つ事業者本人か税理士の領分です。一覧は、人が見る順番を決める道具として使うのが無理のない使い方です。

過去のデータを手本にする方法は、READMEの「データ作成のベストプラクティス」にあります。請求書なら過去の請求書から取引先・品目・税区分を、経費精算なら過去の申請から勘定科目や部門の指定を引き継ぎます。READMEの例文は「先月の○○社への請求書を参考に、今月分を作成して」です。

経費申請や請求書を触るとき

会計APIのAgent Skillsには、取引・勘定科目・取引先・請求書に加えて、経費申請の操作レシピが含まれます。申請を作る側の操作は、同じツール経由で行えます。承認フローをCoworkで自動化する設計は、freee×Coworkで月次経費精算の承認フローを自動化するで扱っています。

READMEの管理ツール表では、freee_file_uploadも「stdioのみ」です。レシートや請求書のファイルをMCP経由でアップロードする用途は、リモート経路では使えない可能性があります。リモートで試した結果は、ここでは確認できていません。

よくあるつまずき

認証が通らない: ローカル経路では、freeeアプリストアで登録するコールバックURLがhttp://127.0.0.1:54321/callbackである必要があります。登録内容とずれていると、configureの認証で失敗します。リモート経路にはこの登録がありません。

ツールが見当たらない: Pluginでは、MCPサーバーとAgent Skillsが別の部品です。/pluginの一覧で有効かを確かめ、MCP側は/mcpで状態を見ます。

事業所を取り違えた: freee_set_current_companyを挟まずに複数の事業所を横断すると起きやすい事故です。事業所名だけでなく事業所IDまで確認してから切り替えます。

電子契約(freeeサイン)が使えない: サインのAPIは別コマンドのfreee-sign-mcpで、READMEによるとリモートでの提供は準備中です。ローカル起動のみ対応のため、会計や請求書と同じ感覚でリモート接続を試しても、サイン用のツール(sign_api_getなど)は出てきません。

設定・起動・認証・ツール表示のどの層で止まっているかの切り分けは、MCP共通の話です。MCPサーバーに接続できないときの切り分け手順にまとめています。

よくある質問

freee-mcpは無料で使えますか

freee-mcp自体はApache-2.0のOSSで、GitHubから入手できます。ただしREADMEには、領域によって契約プランや利用者権限が要ると明記されています。追加費用の範囲は、freeeの契約内容で確かめてください。

Cursorなど他のAIツールからも使えますか

READMEには、Claude / Claude Desktop・Claude Code・Codexの導入手順があります。CursorやOpenCodeは、Agent Skillsの導入先として例示されている扱いです。MCPの接続は、各ツールの案内に従う形です。gh skillの--agentには、copilotやgemini-cliも例示されています。Codex向けには別のプラグイン定義が用意されています。

まとめ

書き込みを伴う依頼は、権限ルール名を/mcpで確かめてsettings.jsonに入れてから始めます。出力は人が確認する順番を決める材料で、帳簿の判断は人が持ちます。

この記事を共有:XはてブLinkedIn