OvenLovin
ReferenceMCP Tools

get_meal_plan

Get a saved meal plan with enriched recipe details, attendee information, and check report summary. Use to retrieve existing plans for review or modification.

Input Schema

ParameterTypeRequiredDescription
planIdstring (UUID)No*Meal plan ID to retrieve
weekStartstring (date)No*Week start date (YYYY-MM-DD) to find plan for

*Either planId or weekStart must be provided. All ids are UUIDs.

Output Schema

{
  id: string,
  weekStart: string,
  cookFor: number | null, // null = follow the household People count
  status: "draft" | "approved" | "archived",
  entries: Array<{
    date: string,
    meal: string,
    recipe: {
      id: string,
      title: string,
      prepTimeMinutes?: number,
      cookTimeMinutes?: number
    } | null,
    freeformMeal?: string,
    servings: number | null,
    attendees: Array<{
      id: string,
      displayName: string
    }>,
    prepAheadNotes?: string
  }>,
  checkReport?: {
    status: "complete" | "incomplete",
    blockingIssues: number,
    warnings: number,
    checkedAt: string
  },
  acknowledgedWarnings: string[]
}

Example Call (by ID)

{
  "planId": "2d8f1a6b-5c4e-4a91-9c0e-7c2a1e8f4b3d"
}

Example Call (by date)

{
  "weekStart": "2024-01-15"
}

Example Result

{
  "id": "2d8f1a6b-5c4e-4a91-9c0e-7c2a1e8f4b3d",
  "weekStart": "2024-01-15",
  "status": "approved",
  "entries": [
    {
      "date": "2024-01-15",
      "meal": "dinner",
      "recipe": {
        "id": "49e5fbdd-b252-4638-a1b4-e3a5cba25c46",
        "title": "Grilled Chicken Salad",
        "prepTimeMinutes": 20,
        "cookTimeMinutes": 15
      },
      "servings": 4,
      "attendees": [
        {
          "id": "6f1c2a90-8d3e-4b7a-9c12-0e4f5a6b7c8d",
          "displayName": "Parent A"
        },
        {
          "id": "8a3d4e5f-1b2c-4d6e-8f90-1a2b3c4d5e6f",
          "displayName": "Child B"
        }
      ],
      "prepAheadNotes": "Marinate chicken the night before"
    },
    {
      "date": "2024-01-16",
      "meal": "dinner",
      "recipe": {
        "id": "f130dac8-ac5c-4351-a253-45b3ad4e120f",
        "title": "Vegetarian Pasta Primavera",
        "prepTimeMinutes": 15,
        "cookTimeMinutes": 20
      },
      "servings": 4,
      "attendees": [
        {
          "id": "6f1c2a90-8d3e-4b7a-9c12-0e4f5a6b7c8d",
          "displayName": "Parent A"
        },
        {
          "id": "8a3d4e5f-1b2c-4d6e-8f90-1a2b3c4d5e6f",
          "displayName": "Child B"
        },
        {
          "id": "9b4e5f60-2c3d-4e7f-9012-2b3c4d5e6f70",
          "displayName": "Parent C"
        }
      ]
    }
  ],
  "checkReport": {
    "status": "complete",
    "blockingIssues": 0,
    "warnings": 0,
    "checkedAt": "2024-01-14T18:30:00Z"
  },
  "acknowledgedWarnings": []
}

Lookup Behavior

By planId

  • Returns exact plan matching the ID
  • Throws error if not found
  • Fastest lookup method

By weekStart

  • Returns the first plan matching that week start date
  • Returns error if no plan exists for that week
  • Use when you know the week but not the plan ID

Usage Notes

  1. Enriched data: Recipe and attendee details are pre-loaded for display
  2. Check report summary: The checkReport provides high-level safety status; full findings are stored but not returned here
  3. Re-checking: If the plan status shows needsRecheck (not shown in output but stored), re-run check_meal_plan before using
  4. Get full recipe details: Use get_recipe for complete ingredient lists

On this page