← The evidence ledger
Evidence row 3453331
Observed , by probe.mcp/1.
- Kind
- mcp.tools
- About
- endpoint bb65ca39-6ade-4d3d-b717-720a619e23ed
- Recorded
- Previous row
- None: the first of its kind about this subject
- Body SHA-256
- 726c2e1d96746123369bbbf75a4df6dd7d5c1f8b09ab01e02b8a5ee74accc351
- Leaf
- 0xa6394dfa29963e5941eb3011df064545224af14c550a849eb2f6a63f84dcc946
What was observed
{
"count": 11,
"tools": [
{
"description": "Creates a NEW recipe in your library only when the user explicitly asks to save/add it or taps Save in the recipe card. For a newly generated recipe the user has not chosen to keep, use display_recipe instead. Does not update existing recipes — to change a saved recipe use update_recipe. To make cooking-time tweaks use apply_recipe_patches. The server mints the stored import-* or ai-* recipe id; any caller-supplied recipe.id is treated only as source payload and is not used for upsert.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"idempotencyKey": {
"description": "Opaque client retry token. Reuse it only for retries of the same create request; otherwise omit it.",
"maxLength": 128,
"minLength": 1,
"pattern": "^[A-Za-z0-9_-]+$",
"type": "string"
},
"recipe": {
"additionalProperties": false,
"properties": {
"description": {
"type": "string"
},
"id": {
"type": "string"
},
"images": {
"items": {
"type": "string"
},
"type": "array"
},
"ingredients": {
"items": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"note": {
"type": "string"
},
"preparation": {
"type": "string"
},
"quantity": {
"type": "number"
},
"quantityText": {
"type": "string"
},
"section": {
"type": "string"
},
"unit": {
"type": "string"
},
"unitSystem": {
"enum": [
"metric",
"imperial",
"count",
"other"
],
"type": "string"
}
},
"required": [
"id",
"name"
],
"type": "object"
},
"type": "array"
},
"meta": {
"additionalProperties": false,
"properties": {
"cookTimeMin": {
"type": "number"
},
"course": {
"type": "string"
},
"cuisine": {
"type": "string"
},
"meal": {
"type": "string"
},
"prepTimeMin": {
"type": "number"
},
"totalTimeMin": {
"type": "number"
},
"yieldText": {
"type": "string"
}
},
"type": "object"
},
"notes": {
"items": {
"type": "string"
},
"type": "array"
},
"steps": {
"items": {
"additionalProperties": false,
"properties": {
"body": {
"type": "string"
},
"id": {
"type": "string"
},
"ingredientIds": {
"items": {
"type": "string"
},
"type": "array"
},
"section": {
"type": "string"
},
"substeps": {
"items": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"text": {
"type": "string"
},
"timerLabel": {
"type": "string"
},
"timerMin": {
"type": "number"
}
},
"required": [
"id",
"text"
],
"type": "object"
},
"type": "array"
},
"timerMin": {
"type": "number"
},
"title": {
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"type": "array"
},
"subtitle": {
"type": "string"
},
"summary": {
"type": "string"
},
"tags": {
"items": {
"type": "string"
},
"type": "array"
},
"title": {
"type": "string"
}
},
"required": [
"id",
"title",
"meta",
"ingredients",
"steps",
"notes"
],
"type": "object"
},
"sourceKind": {
"enum": [
"manual",
"url",
"text"
],
"type": "string"
},
"sourceUrl": {
"type": "string"
}
},
"required": [
"recipe"
],
"type": "object"
},
"name": "add_recipe"
},
{
"description": "Validate and apply explicit edits. Pass recipeId for a persisted cooking session, or pass the full recipe payload from display_recipe to edit an unsaved card without persistence. Does NOT modify the saved recipe in your library.",
"inputSchema": {
"additionalProperties": false,
"anyOf": [
{
"required": [
"recipeId"
]
},
{
"required": [
"recipe"
]
}
],
"properties": {
"editLabel": {
"minLength": 1,
"type": "string"
},
"measurementSystem": {
"enum": [
"source",
"metric",
"imperial"
],
"type": "string"
},
"patches": {
"items": {
"oneOf": [
{
"additionalProperties": false,
"properties": {
"editId": {
"minLength": 1,
"type": "string"
},
"ingredientId": {
"type": "string"
},
"newValue": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"note": {
"type": "string"
},
"preparation": {
"type": "string"
},
"quantity": {
"type": "number"
},
"quantityText": {
"type": "string"
},
"section": {
"type": "string"
},
"unit": {
"type": "string"
},
"unitSystem": {
"enum": [
"metric",
"imperial",
"count",
"other"
],
"type": "string"
}
},
"required": [
"id",
"name"
],
"type": "object"
},
"oldValue": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"note": {
"type": "string"
},
"preparation": {
"type": "string"
},
"quantity": {
"type": "number"
},
"quantityText": {
"type": "string"
},
"section": {
"type": "string"
},
"unit": {
"type": "string"
},
"unitSystem": {
"enum": [
"metric",
"imperial",
"count",
"other"
],
"type": "string"
}
},
"required": [
"id",
"name"
],
"type": "object"
},
"reason": {
"minLength": 1,
"type": "string"
},
"requestId": {
"minLength": 1,
"type": "string"
},
"type": {
"const": "replace-ingredient"
}
},
"required": [
"type",
"requestId",
"editId",
"reason",
"ingredientId",
"newValue"
],
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"afterIngredientId": {
"type": "string"
},
"editId": {
"minLength": 1,
"type": "string"
},
"newValue": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"note": {
"type": "string"
},
"preparation": {
"type": "string"
},
"quantity": {
"type": "number"
},
"quantityText": {
"type": "string"
},
"section": {
"type": "string"
},
"unit": {
"type": "string"
},
"unitSystem": {
"enum": [
"metric",
"imperial",
"count",
"other"
],
"type": "string"
}
},
"required": [
"id",
"name"
],
"type": "object"
},
"reason": {
"minLength": 1,
"type": "string"
},
"requestId": {
"minLength": 1,
"type": "string"
},
"type": {
"const": "insert-ingredient"
}
},
"required": [
"type",
"requestId",
"editId",
"reason",
"newValue"
],
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"editId": {
"minLength": 1,
"type": "string"
},
"ingredientId": {
"type": "string"
},
"oldValue": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"note": {
"type": "string"
},
"preparation": {
"type": "string"
},
"quantity": {
"type": "number"
},
"quantityText": {
"type": "string"
},
"section": {
"type": "string"
},
"unit": {
"type": "string"
},
"unitSystem": {
"enum": [
"metric",
"imperial",
"count",
"other"
],
"type": "string"
}
},
"required": [
"id",
"name"
],
"type": "object"
},
"reason": {
"minLength": 1,
"type": "string"
},
"requestId": {
"minLength": 1,
"type": "string"
},
"type": {
"const": "remove-ingredient"
}
},
"required": [
"type",
"requestId",
"editId",
"reason",
"ingredientId"
],
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"editId": {
"minLength": 1,
"type": "string"
},
"newValue": {
"additionalProperties": false,
"properties": {
"body": {
"type": "string"
},
"id": {
"type": "string"
},
"ingredientIds": {
"items": {
"type": "string"
},
"type": "array"
},
"section": {
"type": "string"
},
"substeps": {
"items": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"text": {
"type": "string"
},
"timerLabel": {
"type": "string"
},
"timerMin": {
"type": "number"
}
},
"required": [
"id",
"text"
],
"type": "object"
},
"type": "array"
},
"timerMin": {
"type": "number"
},
"title": {
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"oldValue": {
"additionalProperties": false,
"properties": {
"body": {
"type": "string"
},
"id": {
"type": "string"
},
"ingredientIds": {
"items": {
"type": "string"
},
"type": "array"
},
"section": {
"type": "string"
},
"substeps": {
"items": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"text": {
"type": "string"
},
"timerLabel": {
"type": "string"
},
"timerMin": {
"type": "number"
}
},
"required": [
"id",
"text"
],
"type": "object"
},
"type": "array"
},
"timerMin": {
"type": "number"
},
"title": {
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"reason": {
"minLength": 1,
"type": "string"
},
"requestId": {
"minLength": 1,
"type": "string"
},
"stepId": {
"type": "string"
},
"type": {
"const": "replace-step"
}
},
"required": [
"type",
"requestId",
"editId",
"reason",
"stepId",
"newValue"
],
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"afterStepId": {
"type": "string"
},
"editId": {
"minLength": 1,
"type": "string"
},
"newValue": {
"additionalProperties": false,
"properties": {
"body": {
"type": "string"
},
"id": {
"type": "string"
},
"ingredientIds": {
"items": {
"type": "string"
},
"type": "array"
},
"section": {
"type": "string"
},
"substeps": {
"items": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"text": {
"type": "string"
},
"timerLabel": {
"type": "string"
},
"timerMin": {
"type": "number"
}
},
"required": [
"id",
"text"
],
"type": "object"
},
"type": "array"
},
"timerMin": {
"type": "number"
},
"title": {
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"reason": {
"minLength": 1,
"type": "string"
},
"requestId": {
"minLength": 1,
"type": "string"
},
"type": {
"const": "insert-step"
}
},
"required": [
"type",
"requestId",
"editId",
"reason",
"newValue"
],
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"editId": {
"minLength": 1,
"type": "string"
},
"oldValue": {
"additionalProperties": false,
"properties": {
"body": {
"type": "string"
},
"id": {
"type": "string"
},
"ingredientIds": {
"items": {
"type": "string"
},
"type": "array"
},
"section": {
"type": "string"
},
"substeps": {
"items": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"text": {
"type": "string"
},
"timerLabel": {
"type": "string"
},
"timerMin": {
"type": "number"
}
},
"required": [
"id",
"text"
],
"type": "object"
},
"type": "array"
},
"timerMin": {
"type": "number"
},
"title": {
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"reason": {
"minLength": 1,
"type": "string"
},
"requestId": {
"minLength": 1,
"type": "string"
},
"stepId": {
"type": "string"
},
"type": {
"const": "remove-step"
}
},
"required": [
"type",
"requestId",
"editId",
"reason",
"stepId"
],
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"editId": {
"minLength": 1,
"type": "string"
},
"field": {
"enum": [
"title",
"subtitle",
"description",
"summary",
"cuisine",
"course",
"meal",
"yieldText",
"prepTimeMin",
"cookTimeMin",
"totalTimeMin"
],
"type": "string"
},
"newValue": {},
"oldValue": {},
"reason": {
"minLength": 1,
"type": "string"
},
"requestId": {
"minLength": 1,
"type": "string"
},
"type": {
"const": "update-meta"
}
},
"required": [
"type",
"requestId",
"editId",
"reason",
"field",
"newValue"
],
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"editId": {
"minLength": 1,
"type": "string"
},
"newValue": {
"items": {
"type": "string"
},
"type": "array"
},
"oldValue": {
"items": {
"type": "string"
},
"type": "array"
},
"reason": {
"minLength": 1,
"type": "string"
},
"requestId": {
"minLength": 1,
"type": "string"
},
"type": {
"const": "replace-images"
}
},
"required": [
"type",
"requestId",
"editId",
"reason",
"newValue"
],
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"editId": {
"minLength": 1,
"type": "string"
},
"note": {
"type": "string"
},
"reason": {
"minLength": 1,
"type": "string"
},
"requestId": {
"minLength": 1,
"type": "string"
},
"type": {
"const": "add-note"
}
},
"required": [
"type",
"requestId",
"editId",
"reason",
"note"
],
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"editId": {
"minLength": 1,
"type": "string"
},
"noteIndex": {
"minimum": 0,
"type": "integer"
},
"oldValue": {
"type": "string"
},
"reason": {
"minLength": 1,
"type": "string"
},
"requestId": {
"minLength": 1,
"type": "string"
},
"type": {
"const": "remove-note"
}
},
"required": [
"type",
"requestId",
"editId",
"reason",
"noteIndex"
],
"type": "object"
}
]
},
"minItems": 1,
"type": "array"
},
"recipe": {
"additionalProperties": false,
"properties": {
"description": {
"type": "string"
},
"id": {
"type": "string"
},
"images": {
"items": {
"type": "string"
},
"type": "array"
},
"ingredients": {
"items": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"note": {
"type": "string"
},
"preparation": {
"type": "string"
},
"quantity": {
"type": "number"
},
"quantityText": {
"type": "string"
},
"section": {
"type": "string"
},
"unit": {
"type": "string"
},
"unitSystem": {
"enum": [
"metric",
"imperial",
"count",
"other"
],
"type": "string"
}
},
"required": [
"id",
"name"
],
"type": "object"
},
"type": "array"
},
"meta": {
"additionalProperties": false,
"properties": {
"cookTimeMin": {
"type": "number"
},
"course": {
"type": "string"
},
"cuisine": {
"type": "string"
},
"meal": {
"type": "string"
},
"prepTimeMin": {
"type": "number"
},
"totalTimeMin": {
"type": "number"
},
"yieldText": {
"type": "string"
}
},
"type": "object"
},
"notes": {
"items": {
"type": "string"
},
"type": "array"
},
"steps": {
"items": {
"additionalProperties": false,
"properties": {
"body": {
"type": "string"
},
"id": {
"type": "string"
},
"ingredientIds": {
"items": {
"type": "string"
},
"type": "array"
},
"section": {
"type": "string"
},
"substeps": {
"items": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"text": {
"type": "string"
},
"timerLabel": {
"type": "string"
},
"timerMin": {
"type": "number"
}
},
"required": [
"id",
"text"
],
"type": "object"
},
"type": "array"
},
"timerMin": {
"type": "number"
},
"title": {
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"type": "array"
},
"subtitle": {
"type": "string"
},
"summary": {
"type": "string"
},
"tags": {
"items": {
"type": "string"
},
"type": "array"
},
"title": {
"type": "string"
}
},
"required": [
"id",
"title",
"meta",
"ingredients",
"steps",
"notes"
],
"type": "object"
},
"recipeId": {
"minLength": 1,
"type": "string"
},
"reply": {
"minLength": 1,
"type": "string"
},
"sessionId": {
"type": "string"
}
},
"required": [
"patches"
],
"type": "object"
},
"name": "apply_recipe_patches"
},
{
"description": "Permanently delete a recipe owned by the authenticated user from their Sous Chef library. This cannot delete public catalog recipes.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"id": {
"minLength": 1,
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "delete_recipe"
},
{
"description": "Presents a complete recipe in Sous Chef's interactive recipe card (servings, ingredients, steps, cooking mode, validated edits, Undo). Prefer this over plain chat formatting whenever you generate, retrieve, or substantially revise a full recipe — including ordinary requests like 'give me a vegan mushroom carbonara' or 'make a quick dinner for two'. Displaying is temporary: it renders the card without saving it or creating a cooking session; saving only happens through add_recipe when the user asks.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"recipe": {
"additionalProperties": false,
"properties": {
"description": {
"type": "string"
},
"id": {
"type": "string"
},
"images": {
"items": {
"type": "string"
},
"type": "array"
},
"ingredients": {
"items": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"note": {
"type": "string"
},
"preparation": {
"type": "string"
},
"quantity": {
"type": "number"
},
"quantityText": {
"type": "string"
},
"section": {
"type": "string"
},
"unit": {
"type": "string"
},
"unitSystem": {
"enum": [
"metric",
"imperial",
"count",
"other"
],
"type": "string"
}
},
"required": [
"id",
"name"
],
"type": "object"
},
"type": "array"
},
"meta": {
"additionalProperties": false,
"properties": {
"cookTimeMin": {
"type": "number"
},
"course": {
"type": "string"
},
"cuisine": {
"type": "string"
},
"meal": {
"type": "string"
},
"prepTimeMin": {
"type": "number"
},
"totalTimeMin": {
"type": "number"
},
"yieldText": {
"type": "string"
}
},
"type": "object"
},
"notes": {
"items": {
"type": "string"
},
"type": "array"
},
"steps": {
"items": {
"additionalProperties": false,
"properties": {
"body": {
"type": "string"
},
"id": {
"type": "string"
},
"ingredientIds": {
"items": {
"type": "string"
},
"type": "array"
},
"section": {
"type": "string"
},
"substeps": {
"items": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"text": {
"type": "string"
},
"timerLabel": {
"type": "string"
},
"timerMin": {
"type": "number"
}
},
"required": [
"id",
"text"
],
"type": "object"
},
"type": "array"
},
"timerMin": {
"type": "number"
},
"title": {
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"type": "array"
},
"subtitle": {
"type": "string"
},
"summary": {
"type": "string"
},
"tags": {
"items": {
"type": "string"
},
"type": "array"
},
"title": {
"type": "string"
}
},
"required": [
"id",
"title",
"meta",
"ingredients",
"steps",
"notes"
],
"type": "object"
}
},
"required": [
"recipe"
],
"type": "object"
},
"name": "display_recipe"
},
{
"description": "Returns the saved canonical recipe from your library or the public catalog. In-progress cooking edits live in sessions and are not returned here.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"id": {
"minLength": 1,
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "get_recipe"
},
{
"description": "Confirm the Sous Chef MCP server is reachable.",
"inputSchema": {
"properties": {},
"type": "object"
},
"name": "health_check"
},
{
"description": "List the authenticated user's saved Sous Chef recipes. Use this before editing when the user refers to a recipe by name instead of id.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"limit": {
"maximum": 100,
"minimum": 1,
"type": "integer"
}
},
"type": "object"
},
"name": "list_my_recipes"
},
{
"description": "Drop a patch group by requestId. Pass recipeId/sessionId for persisted edits, or pass the displayed card's baseRecipe and remaining patch history for a pure unsaved-card Undo. Unknown requestIds are idempotent no-ops.",
"inputSchema": {
"additionalProperties": false,
"anyOf": [
{
"required": [
"recipeId"
]
},
{
"required": [
"baseRecipe",
"patches"
]
}
],
"properties": {
"baseRecipe": {
"additionalProperties": false,
"properties": {
"description": {
"type": "string"
},
"id": {
"type": "string"
},
"images": {
"items": {
"type": "string"
},
"type": "array"
},
"ingredients": {
"items": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"note": {
"type": "string"
},
"preparation": {
"type": "string"
},
"quantity": {
"type": "number"
},
"quantityText": {
"type": "string"
},
"section": {
"type": "string"
},
"unit": {
"type": "string"
},
"unitSystem": {
"enum": [
"metric",
"imperial",
"count",
"other"
],
"type": "string"
}
},
"required": [
"id",
"name"
],
"type": "object"
},
"type": "array"
},
"meta": {
"additionalProperties": false,
"properties": {
"cookTimeMin": {
"type": "number"
},
"course": {
"type": "string"
},
"cuisine": {
"type": "string"
},
"meal": {
"type": "string"
},
"prepTimeMin": {
"type": "number"
},
"totalTimeMin": {
"type": "number"
},
"yieldText": {
"type": "string"
}
},
"type": "object"
},
"notes": {
"items": {
"type": "string"
},
"type": "array"
},
"steps": {
"items": {
"additionalProperties": false,
"properties": {
"body": {
"type": "string"
},
"id": {
"type": "string"
},
"ingredientIds": {
"items": {
"type": "string"
},
"type": "array"
},
"section": {
"type": "string"
},
"substeps": {
"items": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"text": {
"type": "string"
},
"timerLabel": {
"type": "string"
},
"timerMin": {
"type": "number"
}
},
"required": [
"id",
"text"
],
"type": "object"
},
"type": "array"
},
"timerMin": {
"type": "number"
},
"title": {
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"type": "array"
},
"subtitle": {
"type": "string"
},
"summary": {
"type": "string"
},
"tags": {
"items": {
"type": "string"
},
"type": "array"
},
"title": {
"type": "string"
}
},
"required": [
"id",
"title",
"meta",
"ingredients",
"steps",
"notes"
],
"type": "object"
},
"measurementSystem": {
"enum": [
"source",
"metric",
"imperial"
],
"type": "string"
},
"patches": {
"items": {
"oneOf": [
{
"additionalProperties": false,
"properties": {
"editId": {
"minLength": 1,
"type": "string"
},
"ingredientId": {
"type": "string"
},
"newValue": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"note": {
"type": "string"
},
"preparation": {
"type": "string"
},
"quantity": {
"type": "number"
},
"quantityText": {
"type": "string"
},
"section": {
"type": "string"
},
"unit": {
"type": "string"
},
"unitSystem": {
"enum": [
"metric",
"imperial",
"count",
"other"
],
"type": "string"
}
},
"required": [
"id",
"name"
],
"type": "object"
},
"oldValue": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"note": {
"type": "string"
},
"preparation": {
"type": "string"
},
"quantity": {
"type": "number"
},
"quantityText": {
"type": "string"
},
"section": {
"type": "string"
},
"unit": {
"type": "string"
},
"unitSystem": {
"enum": [
"metric",
"imperial",
"count",
"other"
],
"type": "string"
}
},
"required": [
"id",
"name"
],
"type": "object"
},
"reason": {
"minLength": 1,
"type": "string"
},
"requestId": {
"minLength": 1,
"type": "string"
},
"type": {
"const": "replace-ingredient"
}
},
"required": [
"type",
"requestId",
"editId",
"reason",
"ingredientId",
"newValue"
],
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"afterIngredientId": {
"type": "string"
},
"editId": {
"minLength": 1,
"type": "string"
},
"newValue": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"note": {
"type": "string"
},
"preparation": {
"type": "string"
},
"quantity": {
"type": "number"
},
"quantityText": {
"type": "string"
},
"section": {
"type": "string"
},
"unit": {
"type": "string"
},
"unitSystem": {
"enum": [
"metric",
"imperial",
"count",
"other"
],
"type": "string"
}
},
"required": [
"id",
"name"
],
"type": "object"
},
"reason": {
"minLength": 1,
"type": "string"
},
"requestId": {
"minLength": 1,
"type": "string"
},
"type": {
"const": "insert-ingredient"
}
},
"required": [
"type",
"requestId",
"editId",
"reason",
"newValue"
],
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"editId": {
"minLength": 1,
"type": "string"
},
"ingredientId": {
"type": "string"
},
"oldValue": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"note": {
"type": "string"
},
"preparation": {
"type": "string"
},
"quantity": {
"type": "number"
},
"quantityText": {
"type": "string"
},
"section": {
"type": "string"
},
"unit": {
"type": "string"
},
"unitSystem": {
"enum": [
"metric",
"imperial",
"count",
"other"
],
"type": "string"
}
},
"required": [
"id",
"name"
],
"type": "object"
},
"reason": {
"minLength": 1,
"type": "string"
},
"requestId": {
"minLength": 1,
"type": "string"
},
"type": {
"const": "remove-ingredient"
}
},
"required": [
"type",
"requestId",
"editId",
"reason",
"ingredientId"
],
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"editId": {
"minLength": 1,
"type": "string"
},
"newValue": {
"additionalProperties": false,
"properties": {
"body": {
"type": "string"
},
"id": {
"type": "string"
},
"ingredientIds": {
"items": {
"type": "string"
},
"type": "array"
},
"section": {
"type": "string"
},
"substeps": {
"items": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"text": {
"type": "string"
},
"timerLabel": {
"type": "string"
},
"timerMin": {
"type": "number"
}
},
"required": [
"id",
"text"
],
"type": "object"
},
"type": "array"
},
"timerMin": {
"type": "number"
},
"title": {
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"oldValue": {
"additionalProperties": false,
"properties": {
"body": {
"type": "string"
},
"id": {
"type": "string"
},
"ingredientIds": {
"items": {
"type": "string"
},
"type": "array"
},
"section": {
"type": "string"
},
"substeps": {
"items": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"text": {
"type": "string"
},
"timerLabel": {
"type": "string"
},
"timerMin": {
"type": "number"
}
},
"required": [
"id",
"text"
],
"type": "object"
},
"type": "array"
},
"timerMin": {
"type": "number"
},
"title": {
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"reason": {
"minLength": 1,
"type": "string"
},
"requestId": {
"minLength": 1,
"type": "string"
},
"stepId": {
"type": "string"
},
"type": {
"const": "replace-step"
}
},
"required": [
"type",
"requestId",
"editId",
"reason",
"stepId",
"newValue"
],
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"afterStepId": {
"type": "string"
},
"editId": {
"minLength": 1,
"type": "string"
},
"newValue": {
"additionalProperties": false,
"properties": {
"body": {
"type": "string"
},
"id": {
"type": "string"
},
"ingredientIds": {
"items": {
"type": "string"
},
"type": "array"
},
"section": {
"type": "string"
},
"substeps": {
"items": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"text": {
"type": "string"
},
"timerLabel": {
"type": "string"
},
"timerMin": {
"type": "number"
}
},
"required": [
"id",
"text"
],
"type": "object"
},
"type": "array"
},
"timerMin": {
"type": "number"
},
"title": {
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"reason": {
"minLength": 1,
"type": "string"
},
"requestId": {
"minLength": 1,
"type": "string"
},
"type": {
"const": "insert-step"
}
},
"required": [
"type",
"requestId",
"editId",
"reason",
"newValue"
],
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"editId": {
"minLength": 1,
"type": "string"
},
"oldValue": {
"additionalProperties": false,
"properties": {
"body": {
"type": "string"
},
"id": {
"type": "string"
},
"ingredientIds": {
"items": {
"type": "string"
},
"type": "array"
},
"section": {
"type": "string"
},
"substeps": {
"items": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"text": {
"type": "string"
},
"timerLabel": {
"type": "string"
},
"timerMin": {
"type": "number"
}
},
"required": [
"id",
"text"
],
"type": "object"
},
"type": "array"
},
"timerMin": {
"type": "number"
},
"title": {
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"reason": {
"minLength": 1,
"type": "string"
},
"requestId": {
"minLength": 1,
"type": "string"
},
"stepId": {
"type": "string"
},
"type": {
"const": "remove-step"
}
},
"required": [
"type",
"requestId",
"editId",
"reason",
"stepId"
],
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"editId": {
"minLength": 1,
"type": "string"
},
"field": {
"enum": [
"title",
"subtitle",
"description",
"summary",
"cuisine",
"course",
"meal",
"yieldText",
"prepTimeMin",
"cookTimeMin",
"totalTimeMin"
],
"type": "string"
},
"newValue": {},
"oldValue": {},
"reason": {
"minLength": 1,
"type": "string"
},
"requestId": {
"minLength": 1,
"type": "string"
},
"type": {
"const": "update-meta"
}
},
"required": [
"type",
"requestId",
"editId",
"reason",
"field",
"newValue"
],
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"editId": {
"minLength": 1,
"type": "string"
},
"newValue": {
"items": {
"type": "string"
},
"type": "array"
},
"oldValue": {
"items": {
"type": "string"
},
"type": "array"
},
"reason": {
"minLength": 1,
"type": "string"
},
"requestId": {
"minLength": 1,
"type": "string"
},
"type": {
"const": "replace-images"
}
},
"required": [
"type",
"requestId",
"editId",
"reason",
"newValue"
],
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"editId": {
"minLength": 1,
"type": "string"
},
"note": {
"type": "string"
},
"reason": {
"minLength": 1,
"type": "string"
},
"requestId": {
"minLength": 1,
"type": "string"
},
"type": {
"const": "add-note"
}
},
"required": [
"type",
"requestId",
"editId",
"reason",
"note"
],
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"editId": {
"minLength": 1,
"type": "string"
},
"noteIndex": {
"minimum": 0,
"type": "integer"
},
"oldValue": {
"type": "string"
},
"reason": {
"minLength": 1,
"type": "string"
},
"requestId": {
"minLength": 1,
"type": "string"
},
"type": {
"const": "remove-note"
}
},
"required": [
"type",
"requestId",
"editId",
"reason",
"noteIndex"
],
"type": "object"
}
]
},
"minItems": 1,
"type": "array"
},
"recipeId": {
"minLength": 1,
"type": "string"
},
"sessionId": {
"type": "string"
},
"targetRequestId": {
"minLength": 1,
"type": "string"
}
},
"required": [
"targetRequestId"
],
"type": "object"
},
"name": "revert_recipe_edit"
},
{
"description": "Set measurements without ingredient patches. Pass recipeId for saved session state, or pass the full recipe payload from display_recipe to update an unsaved card without persistence.",
"inputSchema": {
"additionalProperties": false,
"anyOf": [
{
"required": [
"recipeId"
]
},
{
"required": [
"recipe"
]
}
],
"properties": {
"measurementSystem": {
"enum": [
"source",
"metric",
"imperial"
],
"type": "string"
},
"recipe": {
"additionalProperties": false,
"properties": {
"description": {
"type": "string"
},
"id": {
"type": "string"
},
"images": {
"items": {
"type": "string"
},
"type": "array"
},
"ingredients": {
"items": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"note": {
"type": "string"
},
"preparation": {
"type": "string"
},
"quantity": {
"type": "number"
},
"quantityText": {
"type": "string"
},
"section": {
"type": "string"
},
"unit": {
"type": "string"
},
"unitSystem": {
"enum": [
"metric",
"imperial",
"count",
"other"
],
"type": "string"
}
},
"required": [
"id",
"name"
],
"type": "object"
},
"type": "array"
},
"meta": {
"additionalProperties": false,
"properties": {
"cookTimeMin": {
"type": "number"
},
"course": {
"type": "string"
},
"cuisine": {
"type": "string"
},
"meal": {
"type": "string"
},
"prepTimeMin": {
"type": "number"
},
"totalTimeMin": {
"type": "number"
},
"yieldText": {
"type": "string"
}
},
"type": "object"
},
"notes": {
"items": {
"type": "string"
},
"type": "array"
},
"steps": {
"items": {
"additionalProperties": false,
"properties": {
"body": {
"type": "string"
},
"id": {
"type": "string"
},
"ingredientIds": {
"items": {
"type": "string"
},
"type": "array"
},
"section": {
"type": "string"
},
"substeps": {
"items": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"text": {
"type": "string"
},
"timerLabel": {
"type": "string"
},
"timerMin": {
"type": "number"
}
},
"required": [
"id",
"text"
],
"type": "object"
},
"type": "array"
},
"timerMin": {
"type": "number"
},
"title": {
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"type": "array"
},
"subtitle": {
"type": "string"
},
"summary": {
"type": "string"
},
"tags": {
"items": {
"type": "string"
},
"type": "array"
},
"title": {
"type": "string"
}
},
"required": [
"id",
"title",
"meta",
"ingredients",
"steps",
"notes"
],
"type": "object"
},
"recipeId": {
"minLength": 1,
"type": "string"
},
"sessionId": {
"type": "string"
}
},
"required": [
"measurementSystem"
],
"type": "object"
},
"name": "set_measurement_system"
},
{
"description": "Creates (or refreshes) a public Sous Chef link for a recipe and returns the URL. Only call when the user explicitly asks to share a recipe. The page is public, anyone with the link can view it, and it is indexed by search engines; the link shows the recipe as it currently looks, including Sous Chef edits, and sharing again updates the same link. Requires a signed-in Sous Chef account.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"recipeId": {
"minLength": 1,
"type": "string"
}
},
"required": [
"recipeId"
],
"type": "object"
},
"name": "share_recipe"
},
{
"description": "Deliberately updates allowed fields on a saved recipe in your library. Supports title, subtitle, summary, description, images, meta, and notes only; images and notes replace the whole array. Does not change ingredients or steps — use apply_recipe_patches for cooking-time edits in a session snapshot.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"patch": {
"additionalProperties": false,
"minProperties": 1,
"properties": {
"description": {
"type": "string"
},
"images": {
"items": {
"type": "string"
},
"type": "array"
},
"meta": {
"additionalProperties": false,
"properties": {
"cookTimeMin": {
"type": "number"
},
"course": {
"type": "string"
},
"cuisine": {
"type": "string"
},
"meal": {
"type": "string"
},
"prepTimeMin": {
"type": "number"
},
"totalTimeMin": {
"type": "number"
},
"yieldText": {
"type": "string"
}
},
"type": "object"
},
"notes": {
"items": {
"type": "string"
},
"type": "array"
},
"subtitle": {
"type": "string"
},
"summary": {
"type": "string"
},
"title": {
"minLength": 1,
"type": "string"
}
},
"type": "object"
},
"recipeId": {
"minLength": 1,
"type": "string"
}
},
"required": [
"recipeId",
"patch"
],
"type": "object"
},
"name": "update_recipe"
}
]
}What the leaf hashes
{"body":"726c2e1d96746123369bbbf75a4df6dd7d5c1f8b09ab01e02b8a5ee74accc351","id":3453331,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793910478589412,"prev":null,"subject":"bb65ca39-6ade-4d3d-b717-720a619e23ed","subject_kind":"endpoint"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (322504 rows).
- 0xa63a4c82997781bd34482ec286f296ccde2dc5a4b99fcc49e0fd91d37989ebe8
- 0x4c895a491a177a23ecd45eece6c381addd5069bd5dee950a52310bc11a57633b
- 0x869a97d60b15d03c790ba312b17322b4875ba902cdc495f895d898e84b2fc8a1
- 0xd1dc13b449c04ba20eb3fcfbab2b396dbbb62641c4468d33e5332ba731e8ce7a
- 0xb4887976207453b1c8627c719348eaeba8bc9d9a1fb0afd55301b79141a46426
- 0x860a6a714562c33df3994c08b93e781a9bd681ce9217a07bd74d984faf3d1cbe
- 0x4ae8b2ef06228166d581485752a57f69db37ab99838eab4d4b295408cc0d8ddb
- 0xca8f8f49d814bb13b6e51fdd9d0532e8f298346a937d99d8af19db80e0ec769b
- 0x0608c9b4632d6ad0971cea384207c1b576be74f61bed631209afa7a3cbc00ee2
- 0xa0e2325bb906ecf7cc99208e20fbca7acbb577aa9fb8a93c685ff2fff8b26c0d
- 0x81a491e12a30c52810a6fc59bfa59431aeed925cad68293dcdcd331e6d194f3f
- 0x39dffa2dfe5eff287629750e25f8660b3206fca0fdeda719be73ff213af84cfd
- 0x57cf19d44d9e81bc14fc4685e033394f8b05fbd0eb27f3965637ef52d2d4b40b
- 0x9b9fcbddc5e61cd56d284bbf85f74d7b6024baa4338a1e4f6406e8c01db66d25
- 0x1c65721edf79939e1513441d5a9e3be301d6801a492ba436ec3148b4e982f044
- 0x94ca8b6a95491be1f3ac6de55d756552e3d7dcdd3a530f60ac239342f2227667
- 0x25f3843b1f8d3ded906cf440101c0137d8f897b0b72f946f0d5bc12c3da6b136
- 0xfb4e1f4d701ae273fb0cd57757f659e327608e5561a752b2099b436618493c84
- 0xf72fe7c4860b9addb17aac4a00b8afc2f8085836173f10f31697c3d192df119b
- Day root
- 0x9f0215efb0252701dc86d5600ce95f276cccc716759bf112525ae863f698d128
- Chained
- 0xc54ddff800630c6cd9656f99e7d6a61adce99bf1cea37121600598b0a9a720d2
- Published
- On Arc Testnet, block 70942081: 0x88f612ad94ca63af4e4e9faab9f34b665b41f03828afac1571ad013cc62bba94