mcpField
F
Food Tracker MCP

Food Tracker MCP

ローカル
github.com/nagarjun226AI・エージェント683 週間前に更新

Food Tracker MCP について

Food Tracker MCP は、OpenFoodFacts を利用して食品記録と栄養管理を行う MCP サーバーです。食事制限の管理、製品の適合性確認、摂取記録にも対応します。

主な機能

  1. 01バーコードやキーワードで食品検索
  2. 02製品の栄養成分を分析
  3. 03食事制限やアレルギーを管理
  4. 04制限に対する製品の適合性確認
  5. 05食事を記録して栄養概要を表示

活用シーン

  1. 01バーコードで栄養情報を確認
  2. 02食事制限に合う製品か購入前に確認
  3. 03毎日の食事を記録して摂取状況を確認

MCP 対応

MCP クライアント向けに、製品検索、栄養分析、制限管理、食事記録のツールを提供し、OpenFoodFacts を通じて製品情報を取得します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Food Tracker MCP

食品の摂取状況を追跡し、栄養を分析し、食事制限を管理するための Model Context Protocol(MCP)サーバーです。

概要

Food Tracker MCP は OpenFoodFacts データベースと連携し、以下の機能を備えた包括的な食品追跡システムを提供します。

  • バーコードまたはキーワードで食品を検索
  • 食品の栄養成分を分析
  • 特定の栄養目標と食事制限に基づいて献立を作成
  • 食事の記録で食品の摂取状況を追跡
  • 食事制限とアレルギーを管理
  • 製品がユーザーの制限に適合するか確認
  • 食事の記録と栄養サマリーを表示

インストール

前提条件
  • Python 3.8 以降
  • pip(Python パッケージマネージャー)
セットアップ
  1. リポジトリをクローンするか、food_tracker.py ファイルをダウンロードします。
# Option 1: Clone the repository (if available)
git clone https://github.com/yourusername/food-tracker-mcp.git
cd food-tracker-mcp

# Option 2: Create a new directory and save the file there
mkdir food-tracker-mcp
cd food-tracker-mcp
# Copy food_tracker.py into this directory
  1. 仮想環境を作成します(推奨)。
python -m venv venv
  1. 仮想環境を有効にします。
# On Windows
venv\Scripts\activate

# On macOS/Linux
source venv/bin/activate
  1. 必要な依存関係をインストールします。
pip install httpx fastmcp pydantic
  1. データディレクトリが作成されていることを確認します(スクリプトの初回実行時に自動的に作成されます)。
mkdir -p data/users data/logs

MCP サーバーの実行

次のコマンドでサーバーを実行します。

python food_tracker.py

サーバーが起動し、コマンドを受信できる状態になります。

Claude での使用

この MCP を Claude で使用するには、Claude プラットフォームに登録する必要があります。手順は次のとおりです。

  1. Anthropic のドキュメントに従って MCP を登録します。

    • https://console.anthropic.com/mcps にアクセスするか、Anthropic アカウントの該当セクションを開きます
    • 必要な情報とエンドポイントを指定して、food-tracker MCP を登録します
  2. 登録すると、MCP のツールを呼び出して、Claude から Food Tracker を利用できます。

Claude で使用できるプロンプトの例:

  • 「このバーコードをスキャンして栄養情報を確認してください:3270190119357」
  • 「食事制限にピーナッツアレルギーを追加してください」
  • 「朝食にグラノーラバーを食べたと記録してください」
  • 「『オートミール』を含む製品を検索してください」
  • 「この製品が食事制限に適合するか確認してください」
  • 「今日の食事の記録を表示してください」

利用可能なツール

この MCP は、Claude から利用できる以下のツールを提供します。

1. get_product_by_barcode

バーコードを使って食品の詳細情報を取得します。

パラメーター:

  • barcode:製品のバーコード(EAN、UPC など)
2. search_products

名前または説明で食品を検索します。

パラメーター:

  • query:検索クエリ
  • page:ページネーションのページ番号(デフォルト:1)
  • page_size:1 ページあたりの結果数(デフォルト:10)
3. manage_user_restrictions

ユーザーの食事制限を管理します。

パラメーター:

  • user_id:ユーザーの一意の識別子
  • action:実行する操作(get、add、remove、update)
  • restriction_type:制限の種類(アレルゲン、食事法、原材料、医療上の制限、好み)
  • restriction_value:具体的な制限値(例:「ピーナッツ」、「ベジタリアン」)
  • severity:制限の厳しさ(避ける、制限する、致命的)
  • notes:制限に関する追加のメモ
4. check_product_compatibility

製品がユーザーの食事制限に適合するか確認します。

パラメーター:

  • user_id:ユーザーの一意の識別子
  • barcode:確認する製品のバーコード
5. analyze_nutrition

食品の栄養成分を分析します。

パラメーター:

  • barcode:製品のバーコード
6. log_food_consumption

ユーザーの食品摂取を記録します。

パラメーター:

  • user_id:ユーザーの一意の識別子
  • barcode:製品のバーコード
  • quantity:摂取量(デフォルト:1 食分)
  • meal_type:食事の種類(朝食、昼食、夕食、軽食)
7. get_user_food_log

指定した日付のユーザーの食事の記録を取得します。

パラメーター:

  • user_id:ユーザーの一意の識別子
  • date:YYYY-MM-DD 形式の日付(デフォルトは今日)

使用例

制限を設定した新規ユーザーの登録
  1. グルテンアレルギーを追加します。
manage_user_restrictions(
    user_id="user123",
    action="add",
    restriction_type="allergen", 
    restriction_value="gluten",
    severity="avoid",
    notes="Avoid all wheat products"
)
  1. ベジタリアンの食事法を追加します。
manage_user_restrictions(
    user_id="user123",
    action="add",
    restriction_type="diet", 
    restriction_value="vegetarian"
)
食品摂取量の記録
  1. 商品をスキャンして記録します:
# First get product info
product = get_product_by_barcode(barcode="3270190119357")

# Then log consumption
log_food_consumption(
    user_id="user123",
    barcode="3270190119357",
    quantity=1,
    meal_type="breakfast"
)
  1. 食事制限との適合性を確認します:
check_product_compatibility(
    user_id="user123",
    barcode="3270190119357"
)
栄養情報の分析
  1. 詳細な栄養分析を取得します:
analyze_nutrition(barcode="3270190119357")
  1. 食品の記録と栄養素の合計を確認します:
get_user_food_log(user_id="user123")

データの保存

Food Tracker MCP はデータをローカルの JSON ファイルに保存します:

  • ユーザープロフィール:./data/users/{user_id}.json
  • 食品の記録:./data/logs/{user_id}_{date}.json

MCP の拡張

次の方法で MCP を拡張できます:

  1. 新しい栄養分析機能を追加する
  2. より詳細な食事プランと目標を実装する
  3. 利用可能な食材に基づくレシピの提案を追加する
  4. 栄養データのレポートと視覚化を作成する
  5. 進捗を共有するソーシャル機能を実装する

トラブルシューティング

  • 接続の問題が発生した場合は、MCP が OpenFoodFacts API に接続するため、インターネットにアクセスできることを確認してください
  • 商品情報が不完全な場合は、OpenFoodFacts データベースの制限が原因である可能性があります
  • データの永続化に問題がある場合は、データディレクトリのアクセス権限を確認してください

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。