freee/freee-mcp
Model Context Protocol (MCP) server for freee API integration
概要
freee‑mcp は、AIエージェント(Claude、Codex、Cursorなど)が freee のビジネスソフトウェアプラットフォームと通信できるようにする公式ブリッジです。これは2つの部分で構成されています:
- MCPサーバー – OAuth 2.0 + PKCE認証を処理し、freeeのOpenAPI仕様に対してリクエストを検証し、freee REST APIに呼び出しを転送する小さなNode.jsサービス。
- Agent Skills – 各 freee エンドポイント(パラメータ、リクエスト形式、例)を説明するJSON/YAML「レシピ」のコレクションです。エージェントが「先月の請求書を見せて」などのユーザーリクエストを受け取ると、関連するスキルを取得し、正しいAPI呼び出しを構築し、MCPサーバーに送信します。
簡単に言えば、自然言語のコマンドを認証済みの freee API 呼び出しに変換し、会計、人事、請求書発行、プロジェクトタイムトラッキング、営業、IT資産管理、電子契約などをカバーします。
誰が使うのか
| ロール | 重要な理由 |
|---|---|
| ビジネスアナリスト / 財務チーム | コードを書かずに、LLMに取引、請求書、給与データを取得または作成させることができます。 |
| AI拡張ボットを開発する開発者 | MCPサーバーをClaude Code、OpenAI Codex、Cursorなどに接続し、ボットにfreeeの12モジュールAPIへのアクセスを即座に与えます。 |
| 自動化エンジニア | CLIツール(freee_api_get、freee_api_postなど)を使用してバルク操作をスクリプト化し、OpenAPIバリデーションの利点を活用します。 |
| freeeパートナーおよびISV | OAuthやリクエスト検証を再実装することなく、製品に「freeeに話しかける」機能を提供します。 |
動作の仕組み(高レベルのフロー)
- セットアップ – freeeアプリケーションを登録し、
npx freee-mcp configureを実行するか(またはホストされたRemote MCPに接続)、ウィザードがクライアントID、シークレットを保存し、デフォルトの会社を選択します。 - エージェントがスキルを要求 – LLMが freee-api-skill パッケージを呼び出し、エンドポイント定義と短い「レシピ」を返します。
- エージェントがリクエストを構築 – レシピを使用して、エージェントは
freee_api_get('/api/1/deals')のような呼び出しを構築します。 - MCPサーバーが検証 – OpenAPIスキーマに対してリクエストをチェックし、OAuthベアラートークンを追加して、
https://api.freee.co.jpに転送します。 - レスポンスが返る – MCPサーバーがJSONをエージェントに渡し、エージェントが人間が読める回答にフォーマットします。
すべての認証は自動的に処理され、トークンは必要に応じて更新されます。
主な機能
- 広範なAPIカバレッジ – 12のfreeeモジュール、557の個別操作(電子契約
freee-signコマンドを含む)。 - 安全なOAuth 2.0 + PKCE – シークレットは平文で保存されず、サーバーがトークンを更新します。
- 動的な会社切り替え –
freee_set_current_companyにより、1つのMCPインスタンスで複数のビジネス拠点を操作できます。 - OpenAPI駆動の検証 – すべてのリクエストはfreeeの公式スキーマに対してチェックされ、不正な呼び出しを防ぎます。
- リモートまたはローカルのMCP – ホストされたサーバー(
https://mcp.freee.co.jp/mcp)を使用して即座に開始するか、Nodeサーバーを自分で実行して完全に制御します。 - 既製のAgent Skills – ZIPファイル(
freee-api-skill.zip)には完全なリファレンスセットが含まれており、Claude、skills、GitHub CLI、またはMicrosoft APMを介してインストールできます。 - CLIツールボックス – 手動テストやスクリプト化のための簡単なコマンド(
freee_api_get、freee_api_post、freee_file_uploadなど)。 - freee Signサポート – 電子契約管理専用の
freee-sign-mcpコマンドセット(現在はローカルのみ)。
開始方法(クイック手順)
- 接続モードを選択
- リモート: Claude Desktop → カスタムコネクタ → 名前
freee、URLhttps://mcp.freee.co.jp/mcp。 - ローカル: freee開発者ポータルでアプリを登録し、
npx freee-mcp configureを実行します。
- リモート: Claude Desktop → カスタムコネクタ → 名前
- スキルを追加
- 最新リリースから
freee-api-skill.zipをダウンロードし、Claude Desktopの Skills UIにアップロードするか、npx skills add freee/freee-mcpを実行します。
- 最新リリースから
- コマンドをテスト
CLIが認証し、APIを呼び出し、JSONレスポンスを出力します。npx freee_api_get /api/1/deals - LLMで使用
- Claudeで、「Acme Corpの新しい請求書を作成して、15万円、来週の金曜日が期限」と尋ねます。エージェントが適切なスキルを取得し、
freee_api_post /api/1/invoicesを呼び出し、作成を確認します。
- Claudeで、「Acme Corpの新しい請求書を作成して、15万円、来週の金曜日が期限」と尋ねます。エージェントが適切なスキルを取得し、
誰が構築したか、貢献方法
- freee株式会社がメンテナンス – 公式オープンソースプロジェクト(Apache-2.0)。リポジトリには30人以上の貢献者がいます。
- 開発ワークフロー –
bunがパッケージマネージャーで、一般的なコマンドはbun run dev、bun run build、bun run test:runなどです。 - 拡張 – 新しいスキルを追加し、
bun run generate:referencesでOpenAPIリファレンスを更新するか、プルリクエストでバグ修正に貢献します。詳細はCONTRIBUTING.mdを参照してください。
TL;DR
freee-mcp = MCPサーバー + スキルバンドル で、AIエージェントが自然言語のプロンプトでfreeeのビジネスソフトウェアAPI(会計、人事、請求書発行、契約など)を安全に呼び出せるようにします。リモートサーバーをインストールするかローカルで実行し、スキルパッケージをLLMに追加して、会話型インターフェースでfreeeタスクの自動化を始めましょう。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト