fatsecret-mcp について
fatsecret-mcpはFatSecret Platform APIに接続する非公式のMCPサーバーです。AIアシスタントを通じて栄養情報の検索や食事記録の管理を行いたい人向けで、食品・レシピ検索、食事日記、体重、運動の記録に対応します。
主な機能
- 01食品検索、栄養情報、バーコード検索
- 02条件を指定したレシピ検索
- 03食事日記の作成と管理
- 04お気に入りと保存済み食事テンプレートの管理
- 05体重の記録と運動データの表示
- 06対話形式の認証情報設定とOAuth認証
活用シーン
- 01食品の栄養情報を調べる、またはバーコードで検索
- 02カロリーや主要栄養素でレシピを絞り込む
- 03食事を記録し、月ごとの栄養サマリーを確認
- 04体重の履歴と運動記録を追跡
MCP 対応
このMCPサーバーはFatSecret Platform APIに接続し、食品、レシピ、食事日記、体重、運動に関するツールをMCPクライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y fatsecret-mcpFATSECRET_CLIENT_IDシークレットFatSecret API Client IDFATSECRET_CLIENT_SECRETシークレットFatSecret API Client Secret (OAuth 2.0)FATSECRET_CONSUMER_SECRETシークレットFatSecret API Consumer Secret (OAuth 1.0)ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
44掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| region | string | いいえ | |
| language | string | いいえ | |
| food_type | string | いいえ | |
| max_results | number | いいえ | |
| page_number | number | いいえ | |
| search_expression | string | はい | 食品の検索クエリ |
| include_food_images | boolean | いいえ | |
| flag_default_serving | boolean | いいえ | |
| include_sub_categories | boolean | いいえ | |
| include_food_attributes | boolean | いいえ |
詳細
FatSecret MCP サーバー 
重要
これはFatSecretの公式MCPサーバーではありません。 無料の開発者アカウントが必要なFatSecret Platform APIを使用します。
Claude/CursorをFatSecret Platform APIに接続するMCP(Model Context Protocol)サーバーです。AIアシスタントから直接、食品の検索、食事の記録、レシピの管理、体重のモニタリングができます。
NPMで利用可能:npx fatsecret-mcp | Claude Desktop拡張機能:fatsecret-mcp.mcpb
✨ 機能
- 🔐 認証 — 対話形式での認証情報設定とOAuth認証
- 🔍 食品検索 — FatSecretの豊富な食品データベースを、詳細な栄養データとともに検索
- 📷 バーコード検索 — GTIN-13バーコードで食品を検索
- 🍳 レシピ検索 — カロリー、マクロ栄養素、調理時間でレシピを閲覧・絞り込み
- 📝 食事日記 — 食事日記の記録を追加、編集、コピー、削除
- 🍽️ 保存済みの食事 — 再利用できる食事テンプレートを作成・管理
- ⚖️ 体重記録 — 体重の履歴を記録・表示
- 🏃♂️ 運動記録 — 運動を表示し、アクティビティの記録を管理
- ⭐ お気に入り — お気に入りの食品やレシピを管理
🚀 クイックスタート
MCPクライアントの設定に追加します:
{
"mcpServers": {
"fatsecret": {
"command": "npx",
"args": ["-y", "fatsecret-mcp"]
}
}
}
これで準備完了です!初回使用時には、AIがセットアップを案内します:
check_auth_status— 認証情報の不足を検出し、必要な対応を案内しますsetup_credentials— APIキーを入力します(~/.fatsecret-mcp/config.jsonに保存されます)start_auth→complete_auth— 食事日記/体重関連ツールを使うために、FatSecretアカウントを認証します
または、環境変数として認証情報を渡すこともできます:
{
"mcpServers": {
"fatsecret": {
"command": "npx",
"args": ["-y", "fatsecret-mcp"],
"env": {
"FATSECRET_CLIENT_ID": "your_client_id",
"FATSECRET_CLIENT_SECRET": "your_client_secret",
"FATSECRET_CONSUMER_SECRET": "your_consumer_secret"
}
}
}
}
🔑 認証情報の取得方法
- platform.fatsecret.comで無料アカウントを作成します
- My Account → API Keysに移動します
- 次の3つの値が表示されます:
- Client ID(OAuth 2.0とOAuth 1.0の両方で使用)
- Client Secret(OAuth 2.0 — 公開されている食品/レシピの検索用)
- Consumer Secret(OAuth 1.0 — ユーザープロフィール/食事日記へのアクセス用)
📖 手順ガイド:FatSecret APIを使い始める
Claude Desktop(拡張機能)
fatsecret-mcp.mcpbをダウンロードして、Claude Desktopで開きます。FatSecretの認証情報を入力するよう求められます。シークレットはOSのキーチェーンに安全に保存されます。
詳細はMCPBを使用したデスクトップ拡張機能の構築をご覧ください。
Claude Desktop(手動)
~/Library/Application Support/Claude/claude_desktop_config.json
Claude Code(CLI)
claude mcp add fatsecret -- npx -y fatsecret-mcp
または環境変数を使用します:
claude mcp add fatsecret \
-e FATSECRET_CLIENT_ID=your_client_id \
-e FATSECRET_CLIENT_SECRET=your_client_secret \
-e FATSECRET_CONSUMER_SECRET=your_consumer_secret \
-- npx -y fatsecret-mcp
claude mcp listで確認します。
Cursor
- 設定UI —
Settings → MCP → + Add new MCP serverを選択し、コマンド、引数、環境変数を入力します - プロジェクト設定 — プロジェクトのルートにある
.cursor/mcp.jsonにJSONを追加します - グローバル設定 —
~/.cursor/mcp.jsonにJSONを追加します
🛠️ 利用可能なツール
| ツール | 説明 |
|---|---|
| 🔐 セットアップと認証 | |
check_auth_status | 認証情報とプロフィール認証が設定されているか確認します。最初に呼び出してください。 |
setup_credentials | FatSecret API の認証情報を永続設定に保存します |
start_auth | OAuth 1.0 認証を開始します。ユーザーがアクセスする URL を返します |
complete_auth | 認証ページの検証 PIN を使って OAuth 認証を完了します |
| 🔍 食品検索 (公開) | |
search_foods | 食品データベースを検索します |
get_food | 食品の詳細な栄養情報を取得します |
find_food_by_barcode | GTIN-13 バーコードで食品を検索します |
autocomplete_foods | 検索候補を取得します |
| 🍳 レシピ (公開) | |
search_recipes | フィルターを使ってレシピを検索します |
get_recipe | 材料と手順を含むレシピの詳細を取得します |
| 📚 参照 (公開) | |
get_food_categories | 食品カテゴリーを取得します |
get_food_sub_categories | 食品のサブカテゴリーを取得します |
get_brands | 食品ブランドを取得します |
get_recipe_types | レシピの種類を取得します |
| 📝 食事記録 (プロフィール認証) | |
get_food_entries | 指定日の食事記録を取得します |
get_food_entries_month | 月間の栄養サマリーを取得します(日ごとのカロリーと主要栄養素) |
create_food_entry | 食事記録を追加します |
edit_food_entry | 食事記録を編集します |
delete_food_entry | 食事記録を削除します |
copy_food_entries | ある日の記録を別の日にコピーします |
copy_saved_meal_entries | 保存済みの食事を指定日にコピーします |
| ⭐ お気に入り (プロフィール認証) | |
get_favorite_foods | お気に入りの食品を取得します |
delete_favorite_food | お気に入りから食品を削除します |
get_most_eaten_foods | 最もよく食べる食品を取得します |
get_recently_eaten_foods | 最近食べた食品を取得します |
get_favorite_recipes | お気に入りのレシピを取得します |
add_favorite_recipe | レシピをお気に入りに追加します |
delete_favorite_recipe | お気に入りからレシピを削除します |
| 🍽️ 保存済みの食事 (プロフィール認証) | |
get_saved_meals | 保存済みの食事を取得します |
create_saved_meal | 保存済みの食事を作成します |
edit_saved_meal | 保存済みの食事を編集します |
delete_saved_meal | 保存済みの食事を削除します |
get_saved_meal_items | 保存済みの食事に含まれる項目を取得します |
add_saved_meal_item | 保存済みの食事に食品を追加します |
edit_saved_meal_item | 保存済みの食事の項目を編集します |
delete_saved_meal_item | 保存済みの食事から項目を削除します |
| ⚖️ 体重 (プロフィール認証) | |
update_weight | 指定日の体重を記録します |
get_weight_month | 1か月分の体重履歴を取得します |
| 🏃♂️ 運動 (プロフィール認証) | |
get_exercises | 運動の種類を取得します |
edit_exercise_entries | アクティビティ間で運動時間を移動します |
get_exercise_entries_month | 1か月分の運動データを取得します |
save_exercise_template | 曜日ごとの運動テンプレートを保存します |
| 👤 プロフィール (プロフィール認証) | |
get_profile | ユーザープロフィール情報を取得します |
create_food | カスタム食品を作成します(Premier) |
API リファレンス:FatSecret Postman Collection
🧪 接続テスト
npx fatsecret-mcp
または、環境変数を使います。
FATSECRET_CLIENT_ID='...' FATSECRET_CLIENT_SECRET='...' FATSECRET_CONSUMER_SECRET='...' npx fatsecret-mcp
📋 要件
- Node.js 18+
- FatSecret Platform API アカウント(platform.fatsecret.com)
- MCP 対応クライアント(Claude Desktop、Cursor など)
🔧 開発
- リポジトリをクローンします
npm install.env.exampleを.envにコピーし、認証情報を入力しますnpm run devで開発モードを実行します
MCP Inspector を使ったデバッグ:
FATSECRET_CLIENT_ID=X FATSECRET_CLIENT_SECRET=X FATSECRET_CONSUMER_SECRET=X npx -y @modelcontextprotocol/inspector npx <local-path>/fatsecret-mcp
📄 ライセンス
MIT License — 詳細は LICENSE ファイルをご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。