Skip to main content
Glama

@him0/freee-mcp

freee API を Claude から使えるようにする MCP サーバー & Claude Plugin です。

MCP サーバー(API 呼び出し機能)と skill(API リファレンス)を組み合わせて利用することを想定しています。

npm version

Note: このプロジェクトは開発中であり、予期せぬ不具合が発生する可能性があります。問題を発見された場合は Issue として報告していただけると幸いです。プルリクエストも歓迎しています。

特徴

  • MCP サーバー: freee API を Claude Desktop / Claude Code から直接呼び出し

  • Claude Plugin: 詳細な API リファレンスドキュメント付きスキルを提供

  • 複数 API 対応: 会計・人事労務・請求書・工数管理・販売の5つの freee API をサポート

  • OAuth 2.0 + PKCE: セキュアな認証フロー、トークン自動更新

  • 複数事業所対応: 事業所の動的切り替えが可能

SKILL と MCP の通信の流れ

Claude Code では、SKILL(API リファレンス)と MCP サーバー(API 呼び出し)を組み合わせて利用します。

sequenceDiagram participant User as ユーザー participant Claude as Claude Code participant Skill as Agent Skill<br/>(API リファレンス) participant MCP as MCP サーバー<br/>(ローカル) participant API as freee API User->>Claude: リクエスト<br/>「取引一覧を取得して」 Note over Claude,Skill: 1. SKILL からリファレンスを取得 Claude->>Skill: freee-api-skill 呼び出し Skill-->>Claude: API リファレンス注入<br/>(エンドポイント、パラメータ仕様) Note over Claude,MCP: 2. MCP Tool で API を実行 Claude->>MCP: freee_api_get 呼び出し<br/>path: /api/1/deals MCP->>MCP: OpenAPI スキーマで検証 MCP->>MCP: 認証トークン付与 Note over MCP,API: 3. freee API への通信 MCP->>API: GET /api/1/deals<br/>Authorization: Bearer xxx API-->>MCP: JSON レスポンス MCP-->>Claude: 取引データ Claude-->>User: 結果を整形して表示

この仕組みにより:

  • SKILL: 必要な API リファレンスを段階的にコンテキストに注入(コンテキスト効率化)

  • MCP: 認証・リクエスト検証・API 呼び出しを担当

クイックスタート

1. freee アプリケーションの登録

freee アプリストア で新しいアプリを作成:

  • コールバックURL: http://127.0.0.1:54321/callback

  • Client ID と Client Secret を取得

  • 必要な権限にチェック

2. セットアップ

npx @him0/freee-mcp configure

対話式ウィザードが認証情報の設定、OAuth認証、事業所選択を行います。

3. Claude Desktop に追加

configure が出力する設定を Claude Desktop の設定ファイルに追加:

OS

設定ファイルパス

macOS

~/Library/Application Support/Claude/claude_desktop_config.json

Windows

%APPDATA%\Claude\claude_desktop_config.json

Linux

~/.config/Claude/claude_desktop_config.json

{ "mcpServers": { "freee": { "command": "npx", "args": ["@him0/freee-mcp"] } } }

⚠️ 環境変数での設定について 環境変数(FREEE_CLIENT_IDFREEE_CLIENT_SECRET など)を使った設定は非推奨です。 代わりに npx @him0/freee-mcp configure を実行して設定ファイルに移行してください。 環境変数設定は将来のバージョンで削除される予定です。

Claude Plugin として使う

Claude Code でプラグインとしてインストールすると、API リファレンス付きのスキルが利用できます:

claude plugin marketplace add him0/freee-mcp claude plugin install freee-api

含まれるリファレンス

API

内容

ファイル数

会計

取引、勘定科目、取引先、請求書、経費申請など

31

人事労務

従業員、勤怠、給与明細、年末調整など

27

請求書

請求書、見積書、納品書

3

工数管理

ユーザー情報

1

販売

案件、受注

2

Claude との会話中に API の使い方を質問すると、これらのリファレンスを参照して正確な情報を提供します。

データ作成のベストプラクティス

請求書や経費精算など、同じ形式のデータを繰り返し作成する場合は、以前に作成したデータを参照することで効率的に作業できます:

  • 請求書作成: 過去の請求書を取得して、取引先・品目・税区分などを参考にする

  • 経費精算: 過去の申請を参照して、勘定科目や部門の指定を正確に行う

  • 取引登録: 類似の取引を参考にして、入力ミスを防ぐ

例: 「先月の○○社への請求書を参考に、今月分を作成して」

利用可能なツール

管理ツール

ツール

説明

freee_authenticate

OAuth 認証を実行

freee_auth_status

認証状態を確認

freee_clear_auth

認証情報をクリア

freee_set_current_company

事業所を切り替え

freee_get_current_company

現在の事業所を表示

freee_list_companies

事業所一覧を取得

freee_current_user

現在のユーザー情報

API ツール

HTTPメソッドごとのシンプルなツール構成:

ツール

説明

freee_api_get

データ取得

/api/1/deals

freee_api_post

新規作成

/api/1/deals

freee_api_put

更新

/api/1/deals/123

freee_api_delete

削除

/api/1/deals/123

freee_api_patch

部分更新

/api/1/deals/123

freee_api_list_paths

エンドポイント一覧

-

パスは OpenAPI スキーマに対して自動検証されます。

company_id の取り扱い

リクエスト(パラメータまたはボディ)に company_id を含める場合、現在の事業所と一致している必要があります。不一致の場合はエラーになります。

  • 事業所の確認: freee_get_current_company

  • 事業所の切り替え: freee_set_company

  • company_id を含まない API(例: /api/1/companies)はそのまま実行可能

開発者向け

git clone https://github.com/him0/freee-mcp.git cd freee-mcp pnpm install pnpm dev # 開発サーバー(ウォッチモード) pnpm build # ビルド pnpm typecheck # 型チェック pnpm lint # リント pnpm test:run # テスト # API リファレンスの再生成 pnpm generate:references

技術スタック

TypeScript / Model Context Protocol SDK / OAuth 2.0 + PKCE / Zod / esbuild

アーキテクチャ詳細

プロジェクトのアーキテクチャ、内部構造、開発ガイドラインについては CLAUDE.md を参照してください。

ライセンス

ISC

コミュニティ

質問や情報交換は Discord サーバーで行っています。お気軽にご参加ください。

関連リンク

-
security - not tested
F
license - not found
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/him0/freee-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server