MealMasteryAI について
MealMasteryAI は、MealMastery の献立作成機能を自然言語で利用するための MCP サーバーです。献立、レシピ、設定、買い物リストを管理する人向けに、ツール、読み取り専用リソース、ガイド付きプロンプトをまとめて提供します。
主な機能
- 01献立の生成と管理
- 02レシピの検索、保存、評価
- 03買い物リストの作成と更新
- 04買い物リストの Instacart または Kroger への送信
- 05ユーザー設定とプランリソースの参照
- 06献立生成の進捗配信
活用シーン
- 01設定に合わせた週間献立の作成
- 02既存プランの料理の差し替え
- 03献立から買い物リストを作成
- 04買い物リストを接続済みサービスに送信
MCP 対応
MCP クライアントに 24 個のツール、3 個の読み取り専用リソース、4 個のプロンプトテンプレートを提供します。progress token を渡すクライアントには、献立生成の進捗通知を送信できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
@mealmastery/mcp-server
MealMastery AI の献立計画用 MCP サーバーです。Claude Desktop、VS Code Copilot、その他の MCP 互換 AI エージェントと連携します。
Philosophy
MCP サーバーはコア機能のミラーであり、新機能を最初に公開する場所ではありません。その価値は次のとおりです。
「アプリでできることはすべて、Claude との自然な会話を通じてもできるようになります。」
MCP レイヤーは利便性(自然言語)と組み合わせやすさ(ツールの連鎖)を加えますが、その基盤となる機能はまずコア製品に存在します。新機能は、ウェブ/モバイルアプリを支える API エンドポイントとして構築し、その後 MCP を通じて公開してください。逆の順序にはしないでください。
Setup
- MealMastery Settings から API キーを取得します
- Claude Desktop の設定(
claude_desktop_config.json)に追加します。
{
"mcpServers": {
"mealmastery": {
"command": "npx",
"args": ["-y", "@mealmastery/mcp-server"],
"env": {
"MEALMASTERY_API_KEY": "mm_live_..."
}
}
}
}
Features
24 Tools
献立計画、レシピ、買い物リスト、ユーザー設定に関する完全な CRUD に加え、進行状況をストリーミング表示する AI 生成機能を利用できます。
3 Resources (read-only context)
| リソース URI | 説明 |
|---|---|
mealmastery://meal-plan/current | すべての食事と栄養情報を含む最新の献立計画 |
mealmastery://user/preferences | 食事の好み、アレルギー、スキルレベル |
mealmastery://grocery-list/current | 現在の献立計画に基づく買い物リスト |
4 Prompt Templates (guided workflows)
| プロンプト | 説明 |
|---|---|
weekly-meal-prep | 1 週間分の計画:献立計画の生成、確認、買い物リスト作成、購入手続き |
swap-meal | 現在の献立計画の食事を差し替えます |
order-groceries | 買い物リストをプレビューし、Instacart/Kroger に送信します |
quick-dinner | 時間の制約に合わせた、手早く作れる食事のアイデアを 1 つ提案します |
Streaming & Progress
generate_meal_plan ツールは MCP の進行状況通知に対応しています。progressToken を送信するクライアントは、AI による生成中にリアルタイムの更新(ステータスメッセージ付きの 0~100%の進行状況)を受け取ります。進行状況に対応していないクライアントは、ストリーミングを使用しないエンドポイントに自動的にフォールバックします。
Quota Awareness
API キーのクォータ(サブスクリプションのプランに基づく 1 日あたりのリクエスト上限)は、トークン交換のたびに通知されます。無料プラン:1 日あたり 1,000 件。有料プラン:1 日あたり 10,000 件。
Available Tools
User Context
- get_user_context - ユーザーのプロフィール、設定、サブスクリプション、最新の献立計画を読み込みます
- get_user_preferences - 食事の好みと調理設定を取得します
- update_user_preferences - 食事、アレルギー、料理の好みを更新します
- get_subscription_status - サブスクリプションのプランと利用上限を確認します
- get_checkout_providers - 接続済みの食料品販売サービス(Instacart、Kroger)を確認します
- checkout_grocery_list - 買い物リストを Instacart または Kroger に送信します
Meal Planning
- generate_meal_plan - AI を使ってパーソナライズされた献立計画を生成します(進行状況のストリーミングに対応)
- get_latest_meal_plan - 現在または最新の献立計画を取得します
- get_meal_plan - ID を指定して特定の献立計画を取得します
- list_meal_plans - 献立計画の履歴を表示します
- regenerate_meal - 献立計画内の食事を、AI が新たに生成した食事に置き換えます
- generate_and_add_meal - AI が生成した食事を、指定した枠に追加します
- remove_meal - 献立計画から食事を削除します
Recipes
- search_recipes - 保存済みのレシピを検索します
- get_recipe - レシピの詳細をすべて取得します
- save_meal_as_recipe - 生成した食事を再利用可能なレシピとして保存します
- get_favorite_recipes - お気に入りのレシピ一覧を取得します
- favorite_meal - 食事をお気に入りに登録します
- get_meal_ratings - 献立計画内の食事の評価を取得します
- get_all_ratings - レシピの全期間の評価を取得します
Grocery
- generate_grocery_list - 献立計画から買い物リストを作成します
- get_grocery_list - 特定の買い物リストを取得します
- list_grocery_lists - 買い物リストの履歴を表示します
- update_grocery_items - 買い物項目にチェックを付ける、除外する、または数量を調整します
環境変数
| 変数 | 必須 | デフォルト | 説明 |
|---|---|---|---|
MEALMASTERY_API_KEY | はい | - | 開発者 API キー(mm_live_...) |
MEALMASTERY_API_URL | いいえ | https://api.mealmastery.ai | API のベース URL |
セキュリティ
- API キーは有効期間の短い JWT(15 分)と交換され、データリクエストで送信されることはありません
- localhost 以外のすべての接続で HTTPS が強制されます
- スコープベースのアクセス制御(read、write、checkout、admin)
- キーごとの日次クォータがサーバー側で適用されます
- エラーメッセージはサニタイズされ、内部 API の詳細がエージェントに漏れることはありません
開発
npm install
npm run build
npm start
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。