← WebMCP Directory

Tool tree

openreceipt.phreshplastic.com

Productivity & BusinessTools verified
Website
Design receipts by hand or with an AI agent, preview every printer dot, and print locally on an Epson TM-L90 with OpenReceipt.
Explore capabilities
    get_app_statusAnswer

    Reports the editor URL, whether setup is done, whether the printer bridge is reachable, the current print policy, and the last print result. Call this first when you are not sure the app is ready.

    View tool JSON
    {
      "name": "get_app_status",
      "kind": "answer",
      "impl": "imperative",
      "description": "Reports the editor URL, whether setup is done, whether the printer bridge is reachable, the current print policy, and the last print result. Call this first when you are not sure the app is ready.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "page": "/"
    }
    get_receiptAnswer

    Returns what is on the paper right now and its revision. Defaults to a compact outline with one line per block; pass detail=text for a plain-text stand-in of the print, or detail=json for the raw document. Read this before editing.

    View tool JSON
    {
      "name": "get_receipt",
      "kind": "answer",
      "impl": "imperative",
      "description": "Returns what is on the paper right now and its revision. Defaults to a compact outline with one line per block; pass detail=text for a plain-text stand-in of the print, or detail=json for the raw document. Read this before editing.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "detail": {
            "type": "string",
            "enum": [
              "outline",
              "text",
              "json"
            ]
          }
        },
        "additionalProperties": false
      },
      "page": "/"
    }
    list_receipt_blocksAnswer

    The vocabulary you can put on a receipt, with a note on when each one earns its place and what it needs. Blocks marked live fetch real data when you add them.

    View tool JSON
    {
      "name": "list_receipt_blocks",
      "kind": "answer",
      "impl": "imperative",
      "description": "The vocabulary you can put on a receipt, with a note on when each one earns its place and what it needs. Blocks marked live fetch real data when you add them.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "page": "/"
    }
    list_receipt_recipesAnswer

    Call this whenever someone describes a situation rather than naming blocks — travelling, a morning routine, a shopping trip, a meeting. Returns the blocks that belong on that receipt and the details worth confirming before you draft.

    View tool JSON
    {
      "name": "list_receipt_recipes",
      "kind": "answer",
      "impl": "imperative",
      "description": "Call this whenever someone describes a situation rather than naming blocks — travelling, a morning routine, a shopping trip, a meeting. Returns the blocks that belong on that receipt and the details worth confirming before you draft.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "situation": {
            "type": "string",
            "maxLength": 400
          }
        },
        "additionalProperties": false
      },
      "page": "/"
    }
    list_receipt_templatesAnswer

    The built-in templates and any the person has saved from a receipt. Use the id or name with load_receipt_template. A saved template is a starting point, not a trusted print path.

    View tool JSON
    {
      "name": "list_receipt_templates",
      "kind": "answer",
      "impl": "imperative",
      "description": "The built-in templates and any the person has saved from a receipt. Use the id or name with load_receipt_template. A saved template is a starting point, not a trusted print path.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "page": "/"
    }
    draft_receiptAction

    Replaces the whole receipt with a new one, composed from the block vocabulary. This is the main tool: one call turns a described situation into finished paper. Give it a short distinctive title — that name is how the person finds it on the drafts shelf, and it is not the heading printed on the paper. It never prints. Pass dryRun to see the result and its paper length without changing anything.

    View tool JSON
    {
      "name": "draft_receipt",
      "kind": "act",
      "impl": "imperative",
      "description": "Replaces the whole receipt with a new one, composed from the block vocabulary. This is the main tool: one call turns a described situation into finished paper. Give it a short distinctive title — that name is how the person finds it on the drafts shelf, and it is not the heading printed on the paper. It never prints. Pass dryRun to see the result and its paper length without changing anything.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "minLength": 1,
            "maxLength": 160
          },
          "blocks": {
            "minItems": 1,
            "maxItems": 60,
            "type": "array",
            "items": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "heading"
                    },
                    "text": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 240
                    },
                    "size": {
                      "type": "string",
                      "enum": [
                        "display",
                        "heading",
                        "section"
                      ]
                    },
                    "align": {
                      "type": "string",
                      "enum": [
                        "left",
                        "center",
                        "right"
                      ]
                    }
                  },
                  "required": [
                    "type",
                    "text"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "text"
                    },
                    "text": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 4000
                    },
                    "size": {
                      "type": "string",
                      "enum": [
                        "small",
                        "body",
                        "large"
                      ]
                    },
                    "align": {
                      "type": "string",
                      "enum": [
                        "left",
                        "center",
                        "right"
                      ]
                    },
                    "emphasis": {
                      "type": "boolean"
                    }
                  },
                  "required": [
                    "type",
                    "text"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "list"
                    },
                    "items": {
                      "minItems": 1,
                      "maxItems": 40,
                      "type": "array",
                      "items": {
                        "anyOf": [
                          {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 160
                          },
                          {
                            "type": "object",
                            "properties": {
                              "text": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 160
                              },
                              "checked": {
                                "type": "boolean"
                              }
                            },
                            "required": [
                              "text"
                            ],
                            "additionalProperties": false
                          }
                        ]
                      }
                    }
                  },
                  "required": [
                    "type",
                    "items"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "facts"
                    },
                    "rows": {
                      "minItems": 1,
                      "maxItems": 40,
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "label": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 160
                          },
                          "value": {
                            "type": "string",
                            "maxLength": 300
                          },
                          "emphasis": {
                            "type": "boolean"
                          }
                        },
                        "required": [
                          "label",
                          "value"
                        ],
                        "additionalProperties": false
                      }
                    },
                    "dividers": {
                      "type": "boolean"
                    }
                  },
                  "required": [
                    "type",
                    "rows"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "table"
                    },
                    "header": {
                      "minItems": 2,
                      "maxItems": 3,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 300
                      }
                    },
                    "rows": {
                      "minItems": 1,
                      "maxItems": 40,
                      "type": "array",
                      "items": {
                        "minItems": 2,
                        "maxItems": 3,
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 300
                        }
                      }
                    }
                  },
                  "required": [
                    "type",
                    "rows"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "rule"
                    },
                    "style": {
                      "type": "string",
                      "enum": [
                        "solid",
                        "dashed"
                      ]
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "groups"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 120
                    },
                    "note": {
                      "type": "string",
                      "maxLength": 60
                    },
                    "groups": {
                      "minItems": 1,
                      "maxItems": 6,
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "name": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 40
                          },
                          "items": {
                            "minItems": 1,
                            "maxItems": 20,
                            "type": "array",
                            "items": {
                              "anyOf": [
                                {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 160
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "text": {
                                      "type": "string",
                                      "minLength": 1,
                                      "maxLength": 160
                                    },
                                    "checked": {
                                      "type": "boolean"
                                    }
                                  },
                                  "required": [
                                    "text"
                                  ],
                                  "additionalProperties": false
                                }
                              ]
                            }
                          }
                        },
                        "required": [
                          "name",
                          "items"
                        ],
                        "additionalProperties": false
                      }
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "groups"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "countdown"
                    },
                    "event": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 60
                    },
                    "date": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 60
                    },
                    "days": {
                      "type": "integer",
                      "minimum": 0,
                      "maximum": 9999
                    },
                    "label": {
                      "type": "string",
                      "maxLength": 40
                    },
                    "milestones": {
                      "maxItems": 5,
                      "type": "array",
                      "items": {
                        "anyOf": [
                          {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 20
                          },
                          {
                            "type": "object",
                            "properties": {
                              "label": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 20
                              },
                              "complete": {
                                "type": "boolean"
                              }
                            },
                            "required": [
                              "label"
                            ],
                            "additionalProperties": false
                          }
                        ]
                      }
                    }
                  },
                  "required": [
                    "type",
                    "event",
                    "date",
                    "days"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "weather"
                    },
                    "city": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 160
                    },
                    "unit": {
                      "type": "string",
                      "enum": [
                        "fahrenheit",
                        "celsius"
                      ]
                    }
                  },
                  "required": [
                    "type",
                    "city"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "air"
                    },
                    "city": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 160
                    }
                  },
                  "required": [
                    "type",
                    "city"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "news"
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "markets"
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "surf"
                    },
                    "city": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 160
                    }
                  },
                  "required": [
                    "type",
                    "city"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "games"
                    },
                    "league": {
                      "type": "string",
                      "maxLength": 40
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "quakes"
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "agenda"
                    },
                    "date": {
                      "type": "string",
                      "maxLength": 100
                    },
                    "events": {
                      "minItems": 1,
                      "maxItems": 16,
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "start": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 40
                          },
                          "end": {
                            "type": "string",
                            "maxLength": 40
                          },
                          "title": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 300
                          },
                          "detail": {
                            "type": "string",
                            "maxLength": 300
                          }
                        },
                        "required": [
                          "start",
                          "title"
                        ],
                        "additionalProperties": false
                      }
                    }
                  },
                  "required": [
                    "type",
                    "events"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "habits"
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 120
                    },
                    "period": {
                      "type": "string",
                      "maxLength": 120
                    },
                    "habits": {
                      "minItems": 1,
                      "maxItems": 10,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 80
                      }
                    }
                  },
                  "required": [
                    "type",
                    "habits"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "form"
                    },
                    "form": {
                      "type": "string",
                      "enum": [
                        "dailyPlan",
                        "packingList",
                        "weatherJournal",
                        "mealPlan",
                        "meetingNotes",
                        "workoutLog"
                      ]
                    }
                  },
                  "required": [
                    "type",
                    "form"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "logo"
                    },
                    "name": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 40
                    },
                    "tagline": {
                      "type": "string",
                      "maxLength": 40
                    }
                  },
                  "required": [
                    "type",
                    "name"
                  ],
                  "additionalProperties": false
                }
              ]
            }
          },
          "expectedRevision": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          },
          "dryRun": {
            "type": "boolean"
          }
        },
        "required": [
          "title",
          "blocks"
        ],
        "additionalProperties": false
      },
      "page": "/"
    }
    edit_receiptAction

    Changes part of the receipt without rewriting it. Blocks are 1-based from get_receipt. setCopy changes the words on a heading, text, logo, countdown or groups block and keeps its style. Item ops touch one line on lists, facts, tables, agendas, habits, countdowns, groups, meals, meetings and workouts; group picks a section and fields sets owner, due, sets or value. Pass dryRun to preview.

    View tool JSON
    {
      "name": "edit_receipt",
      "kind": "act",
      "impl": "imperative",
      "description": "Changes part of the receipt without rewriting it. Blocks are 1-based from get_receipt. setCopy changes the words on a heading, text, logo, countdown or groups block and keeps its style. Item ops touch one line on lists, facts, tables, agendas, habits, countdowns, groups, meals, meetings and workouts; group picks a section and fields sets owner, due, sets or value. Pass dryRun to preview.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "operations": {
            "minItems": 1,
            "maxItems": 40,
            "type": "array",
            "items": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "op": {
                      "type": "string",
                      "const": "setTitle"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 160
                    }
                  },
                  "required": [
                    "op",
                    "title"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "op": {
                      "type": "string",
                      "const": "add"
                    },
                    "block": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "heading"
                            },
                            "text": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 240
                            },
                            "size": {
                              "type": "string",
                              "enum": [
                                "display",
                                "heading",
                                "section"
                              ]
                            },
                            "align": {
                              "type": "string",
                              "enum": [
                                "left",
                                "center",
                                "right"
                              ]
                            }
                          },
                          "required": [
                            "type",
                            "text"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "text"
                            },
                            "text": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 4000
                            },
                            "size": {
                              "type": "string",
                              "enum": [
                                "small",
                                "body",
                                "large"
                              ]
                            },
                            "align": {
                              "type": "string",
                              "enum": [
                                "left",
                                "center",
                                "right"
                              ]
                            },
                            "emphasis": {
                              "type": "boolean"
                            }
                          },
                          "required": [
                            "type",
                            "text"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "list"
                            },
                            "items": {
                              "minItems": 1,
                              "maxItems": 40,
                              "type": "array",
                              "items": {
                                "anyOf": [
                                  {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 160
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "text": {
                                        "type": "string",
                                        "minLength": 1,
                                        "maxLength": 160
                                      },
                                      "checked": {
                                        "type": "boolean"
                                      }
                                    },
                                    "required": [
                                      "text"
                                    ],
                                    "additionalProperties": false
                                  }
                                ]
                              }
                            }
                          },
                          "required": [
                            "type",
                            "items"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "facts"
                            },
                            "rows": {
                              "minItems": 1,
                              "maxItems": 40,
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "label": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 160
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 300
                                  },
                                  "emphasis": {
                                    "type": "boolean"
                                  }
                                },
                                "required": [
                                  "label",
                                  "value"
                                ],
                                "additionalProperties": false
                              }
                            },
                            "dividers": {
                              "type": "boolean"
                            }
                          },
                          "required": [
                            "type",
                            "rows"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "table"
                            },
                            "header": {
                              "minItems": 2,
                              "maxItems": 3,
                              "type": "array",
                              "items": {
                                "type": "string",
                                "maxLength": 300
                              }
                            },
                            "rows": {
                              "minItems": 1,
                              "maxItems": 40,
                              "type": "array",
                              "items": {
                                "minItems": 2,
                                "maxItems": 3,
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 300
                                }
                              }
                            }
                          },
                          "required": [
                            "type",
                            "rows"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "rule"
                            },
                            "style": {
                              "type": "string",
                              "enum": [
                                "solid",
                                "dashed"
                              ]
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "groups"
                            },
                            "title": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 120
                            },
                            "note": {
                              "type": "string",
                              "maxLength": 60
                            },
                            "groups": {
                              "minItems": 1,
                              "maxItems": 6,
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "name": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 40
                                  },
                                  "items": {
                                    "minItems": 1,
                                    "maxItems": 20,
                                    "type": "array",
                                    "items": {
                                      "anyOf": [
                                        {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 160
                                        },
                                        {
                                          "type": "object",
                                          "properties": {
                                            "text": {
                                              "type": "string",
                                              "minLength": 1,
                                              "maxLength": 160
                                            },
                                            "checked": {
                                              "type": "boolean"
                                            }
                                          },
                                          "required": [
                                            "text"
                                          ],
                                          "additionalProperties": false
                                        }
                                      ]
                                    }
                                  }
                                },
                                "required": [
                                  "name",
                                  "items"
                                ],
                                "additionalProperties": false
                              }
                            }
                          },
                          "required": [
                            "type",
                            "title",
                            "groups"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "countdown"
                            },
                            "event": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 60
                            },
                            "date": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 60
                            },
                            "days": {
                              "type": "integer",
                              "minimum": 0,
                              "maximum": 9999
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 40
                            },
                            "milestones": {
                              "maxItems": 5,
                              "type": "array",
                              "items": {
                                "anyOf": [
                                  {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 20
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "label": {
                                        "type": "string",
                                        "minLength": 1,
                                        "maxLength": 20
                                      },
                                      "complete": {
                                        "type": "boolean"
                                      }
                                    },
                                    "required": [
                                      "label"
                                    ],
                                    "additionalProperties": false
                                  }
                                ]
                              }
                            }
                          },
                          "required": [
                            "type",
                            "event",
                            "date",
                            "days"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "weather"
                            },
                            "city": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 160
                            },
                            "unit": {
                              "type": "string",
                              "enum": [
                                "fahrenheit",
                                "celsius"
                              ]
                            }
                          },
                          "required": [
                            "type",
                            "city"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "air"
                            },
                            "city": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 160
                            }
                          },
                          "required": [
                            "type",
                            "city"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "news"
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "markets"
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "surf"
                            },
                            "city": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 160
                            }
                          },
                          "required": [
                            "type",
                            "city"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "games"
                            },
                            "league": {
                              "type": "string",
                              "maxLength": 40
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "quakes"
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "agenda"
                            },
                            "date": {
                              "type": "string",
                              "maxLength": 100
                            },
                            "events": {
                              "minItems": 1,
                              "maxItems": 16,
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "start": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 40
                                  },
                                  "end": {
                                    "type": "string",
                                    "maxLength": 40
                                  },
                                  "title": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 300
                                  },
                                  "detail": {
                                    "type": "string",
                                    "maxLength": 300
                                  }
                                },
                                "required": [
                                  "start",
                                  "title"
                                ],
                                "additionalProperties": false
                              }
                            }
                          },
                          "required": [
                            "type",
                            "events"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "habits"
                            },
                            "title": {
                              "type": "string",
                              "maxLength": 120
                            },
                            "period": {
                              "type": "string",
                              "maxLength": 120
                            },
                            "habits": {
                              "minItems": 1,
                              "maxItems": 10,
                              "type": "array",
                              "items": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 80
                              }
                            }
                          },
                          "required": [
                            "type",
                            "habits"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "form"
                            },
                            "form": {
                              "type": "string",
                              "enum": [
                                "dailyPlan",
                                "packingList",
                                "weatherJournal",
                                "mealPlan",
                                "meetingNotes",
                                "workoutLog"
                              ]
                            }
                          },
                          "required": [
                            "type",
                            "form"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "logo"
                            },
                            "name": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 40
                            },
                            "tagline": {
                              "type": "string",
                              "maxLength": 40
                            }
                          },
                          "required": [
                            "type",
                            "name"
                          ],
                          "additionalProperties": false
                        }
                      ]
                    },
                    "at": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 9007199254740991,
                      "description": "1-based position of a block, as shown by get_receipt"
                    }
                  },
                  "required": [
                    "op",
                    "block"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "op": {
                      "type": "string",
                      "const": "replace"
                    },
                    "at": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 9007199254740991,
                      "description": "1-based position of a block, as shown by get_receipt"
                    },
                    "block": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "heading"
                            },
                            "text": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 240
                            },
                            "size": {
                              "type": "string",
                              "enum": [
                                "display",
                                "heading",
                                "section"
                              ]
                            },
                            "align": {
                              "type": "string",
                              "enum": [
                                "left",
                                "center",
                                "right"
                              ]
                            }
                          },
                          "required": [
                            "type",
                            "text"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "text"
                            },
                            "text": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 4000
                            },
                            "size": {
                              "type": "string",
                              "enum": [
                                "small",
                                "body",
                                "large"
                              ]
                            },
                            "align": {
                              "type": "string",
                              "enum": [
                                "left",
                                "center",
                                "right"
                              ]
                            },
                            "emphasis": {
                              "type": "boolean"
                            }
                          },
                          "required": [
                            "type",
                            "text"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "list"
                            },
                            "items": {
                              "minItems": 1,
                              "maxItems": 40,
                              "type": "array",
                              "items": {
                                "anyOf": [
                                  {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 160
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "text": {
                                        "type": "string",
                                        "minLength": 1,
                                        "maxLength": 160
                                      },
                                      "checked": {
                                        "type": "boolean"
                                      }
                                    },
                                    "required": [
                                      "text"
                                    ],
                                    "additionalProperties": false
                                  }
                                ]
                              }
                            }
                          },
                          "required": [
                            "type",
                            "items"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "facts"
                            },
                            "rows": {
                              "minItems": 1,
                              "maxItems": 40,
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "label": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 160
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 300
                                  },
                                  "emphasis": {
                                    "type": "boolean"
                                  }
                                },
                                "required": [
                                  "label",
                                  "value"
                                ],
                                "additionalProperties": false
                              }
                            },
                            "dividers": {
                              "type": "boolean"
                            }
                          },
                          "required": [
                            "type",
                            "rows"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "table"
                            },
                            "header": {
                              "minItems": 2,
                              "maxItems": 3,
                              "type": "array",
                              "items": {
                                "type": "string",
                                "maxLength": 300
                              }
                            },
                            "rows": {
                              "minItems": 1,
                              "maxItems": 40,
                              "type": "array",
                              "items": {
                                "minItems": 2,
                                "maxItems": 3,
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 300
                                }
                              }
                            }
                          },
                          "required": [
                            "type",
                            "rows"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "rule"
                            },
                            "style": {
                              "type": "string",
                              "enum": [
                                "solid",
                                "dashed"
                              ]
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "groups"
                            },
                            "title": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 120
                            },
                            "note": {
                              "type": "string",
                              "maxLength": 60
                            },
                            "groups": {
                              "minItems": 1,
                              "maxItems": 6,
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "name": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 40
                                  },
                                  "items": {
                                    "minItems": 1,
                                    "maxItems": 20,
                                    "type": "array",
                                    "items": {
                                      "anyOf": [
                                        {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 160
                                        },
                                        {
                                          "type": "object",
                                          "properties": {
                                            "text": {
                                              "type": "string",
                                              "minLength": 1,
                                              "maxLength": 160
                                            },
                                            "checked": {
                                              "type": "boolean"
                                            }
                                          },
                                          "required": [
                                            "text"
                                          ],
                                          "additionalProperties": false
                                        }
                                      ]
                                    }
                                  }
                                },
                                "required": [
                                  "name",
                                  "items"
                                ],
                                "additionalProperties": false
                              }
                            }
                          },
                          "required": [
                            "type",
                            "title",
                            "groups"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "countdown"
                            },
                            "event": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 60
                            },
                            "date": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 60
                            },
                            "days": {
                              "type": "integer",
                              "minimum": 0,
                              "maximum": 9999
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 40
                            },
                            "milestones": {
                              "maxItems": 5,
                              "type": "array",
                              "items": {
                                "anyOf": [
                                  {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 20
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "label": {
                                        "type": "string",
                                        "minLength": 1,
                                        "maxLength": 20
                                      },
                                      "complete": {
                                        "type": "boolean"
                                      }
                                    },
                                    "required": [
                                      "label"
                                    ],
                                    "additionalProperties": false
                                  }
                                ]
                              }
                            }
                          },
                          "required": [
                            "type",
                            "event",
                            "date",
                            "days"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "weather"
                            },
                            "city": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 160
                            },
                            "unit": {
                              "type": "string",
                              "enum": [
                                "fahrenheit",
                                "celsius"
                              ]
                            }
                          },
                          "required": [
                            "type",
                            "city"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "air"
                            },
                            "city": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 160
                            }
                          },
                          "required": [
                            "type",
                            "city"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "news"
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "markets"
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "surf"
                            },
                            "city": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 160
                            }
                          },
                          "required": [
                            "type",
                            "city"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "games"
                            },
                            "league": {
                              "type": "string",
                              "maxLength": 40
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "quakes"
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "agenda"
                            },
                            "date": {
                              "type": "string",
                              "maxLength": 100
                            },
                            "events": {
                              "minItems": 1,
                              "maxItems": 16,
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "start": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 40
                                  },
                                  "end": {
                                    "type": "string",
                                    "maxLength": 40
                                  },
                                  "title": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 300
                                  },
                                  "detail": {
                                    "type": "string",
                                    "maxLength": 300
                                  }
                                },
                                "required": [
                                  "start",
                                  "title"
                                ],
                                "additionalProperties": false
                              }
                            }
                          },
                          "required": [
                            "type",
                            "events"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "habits"
                            },
                            "title": {
                              "type": "string",
                              "maxLength": 120
                            },
                            "period": {
                              "type": "string",
                              "maxLength": 120
                            },
                            "habits": {
                              "minItems": 1,
                              "maxItems": 10,
                              "type": "array",
                              "items": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 80
                              }
                            }
                          },
                          "required": [
                            "type",
                            "habits"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "form"
                            },
                            "form": {
                              "type": "string",
                              "enum": [
                                "dailyPlan",
                                "packingList",
                                "weatherJournal",
                                "mealPlan",
                                "meetingNotes",
                                "workoutLog"
                              ]
                            }
                          },
                          "required": [
                            "type",
                            "form"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "const": "logo"
                            },
                            "name": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 40
                            },
                            "tagline": {
                              "type": "string",
                              "maxLength": 40
                            }
                          },
                          "required": [
                            "type",
                            "name"
                          ],
                          "additionalProperties": false
                        }
                      ]
                    }
                  },
                  "required": [
                    "op",
                    "at",
                    "block"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "op": {
                      "type": "string",
                      "const": "remove"
                    },
                    "at": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 9007199254740991,
                      "description": "1-based position of a block, as shown by get_receipt"
                    }
                  },
                  "required": [
                    "op",
                    "at"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "op": {
                      "type": "string",
                      "const": "move"
                    },
                    "at": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 9007199254740991,
                      "description": "1-based position of a block, as shown by get_receipt"
                    },
                    "to": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 9007199254740991,
                      "description": "1-based position of a block, as shown by get_receipt"
                    }
                  },
                  "required": [
                    "op",
                    "at",
                    "to"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "op": {
                      "type": "string",
                      "const": "refresh"
                    },
                    "at": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 9007199254740991,
                      "description": "1-based position of a block, as shown by get_receipt"
                    }
                  },
                  "required": [
                    "op",
                    "at"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "op": {
                      "type": "string",
                      "const": "setCopy"
                    },
                    "at": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 9007199254740991,
                      "description": "1-based position of a block, as shown by get_receipt"
                    },
                    "text": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 4000
                    }
                  },
                  "required": [
                    "op",
                    "at",
                    "text"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "op": {
                      "type": "string",
                      "const": "addItem"
                    },
                    "at": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 9007199254740991,
                      "description": "1-based position of a block, as shown by get_receipt"
                    },
                    "group": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "minimum": 1,
                          "maximum": 9007199254740991
                        },
                        {
                          "type": "string",
                          "maxLength": 40
                        }
                      ],
                      "description": "Which group, section or meal — position or name"
                    },
                    "text": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 300
                    },
                    "checked": {
                      "type": "boolean"
                    },
                    "fields": {
                      "type": "object",
                      "propertyNames": {
                        "type": "string",
                        "maxLength": 24
                      },
                      "additionalProperties": {
                        "anyOf": [
                          {
                            "type": "string",
                            "maxLength": 300
                          },
                          {
                            "type": "number"
                          },
                          {
                            "type": "boolean"
                          }
                        ]
                      },
                      "description": "Other attributes on the line; list_receipt_blocks names them per block"
                    }
                  },
                  "required": [
                    "op",
                    "at",
                    "text"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "op": {
                      "type": "string",
                      "const": "setItem"
                    },
                    "at": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 9007199254740991,
                      "description": "1-based position of a block, as shown by get_receipt"
                    },
                    "item": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "minimum": 1,
                          "maximum": 9007199254740991
                        },
                        {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 160
                        }
                      ],
                      "description": "1-based position, or text to match"
                    },
                    "text": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 300
                    },
                    "checked": {
                      "type": "boolean"
                    },
                    "fields": {
                      "type": "object",
                      "propertyNames": {
                        "type": "string",
                        "maxLength": 24
                      },
                      "additionalProperties": {
                        "anyOf": [
                          {
                            "type": "string",
                            "maxLength": 300
                          },
                          {
                            "type": "number"
                          },
                          {
                            "type": "boolean"
                          }
                        ]
                      },
                      "description": "Other attributes on the line; list_receipt_blocks names them per block"
                    }
                  },
                  "required": [
                    "op",
                    "at",
                    "item"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "op": {
                      "type": "string",
                      "const": "checkItem"
                    },
                    "at": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 9007199254740991,
                      "description": "1-based position of a block, as shown by get_receipt"
                    },
                    "item": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "minimum": 1,
                          "maximum": 9007199254740991
                        },
                        {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 160
                        }
                      ],
                      "description": "1-based position, or text to match"
                    },
                    "checked": {
                      "type": "boolean"
                    }
                  },
                  "required": [
                    "op",
                    "at",
                    "item"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "op": {
                      "type": "string",
                      "const": "removeItem"
                    },
                    "at": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 9007199254740991,
                      "description": "1-based position of a block, as shown by get_receipt"
                    },
                    "item": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "minimum": 1,
                          "maximum": 9007199254740991
                        },
                        {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 160
                        }
                      ],
                      "description": "1-based position, or text to match"
                    }
                  },
                  "required": [
                    "op",
                    "at",
                    "item"
                  ],
                  "additionalProperties": false
                }
              ]
            }
          },
          "expectedRevision": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          },
          "dryRun": {
            "type": "boolean"
          }
        },
        "required": [
          "operations"
        ],
        "additionalProperties": false
      },
      "page": "/"
    }
    rename_receiptAction

    Sets the receipt's title — the name in the editor header and the drafts list, not the heading printed on the paper. Use this whenever you draft something new or the current name is generic (Morning brief, Untitled). A clear title is how a person tells receipts apart.

    View tool JSON
    {
      "name": "rename_receipt",
      "kind": "act",
      "impl": "imperative",
      "description": "Sets the receipt's title — the name in the editor header and the drafts list, not the heading printed on the paper. Use this whenever you draft something new or the current name is generic (Morning brief, Untitled). A clear title is how a person tells receipts apart.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "minLength": 1,
            "maxLength": 160
          },
          "expectedRevision": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          }
        },
        "required": [
          "title"
        ],
        "additionalProperties": false
      },
      "page": "/"
    }
    save_receipt_templateAction

    Saves the current receipt as a named template the person can reuse from Templates. If a saved template already has this name, it is updated rather than duplicated. Does not change the receipt on screen and does not print.

    View tool JSON
    {
      "name": "save_receipt_template",
      "kind": "act",
      "impl": "imperative",
      "description": "Saves the current receipt as a named template the person can reuse from Templates. If a saved template already has this name, it is updated rather than duplicated. Does not change the receipt on screen and does not print.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 80,
            "description": "Name on the Templates gallery; a matching saved template is updated"
          }
        },
        "required": [
          "name"
        ],
        "additionalProperties": false
      },
      "page": "/"
    }
    load_receipt_templateAction

    Replaces the current receipt with a template from list_receipt_templates. Built-in templates stamp a fresh copy; a saved template loads exactly as stored. It never prints. Pass dryRun to preview.

    View tool JSON
    {
      "name": "load_receipt_template",
      "kind": "act",
      "impl": "imperative",
      "description": "Replaces the current receipt with a template from list_receipt_templates. Built-in templates stamp a fresh copy; a saved template loads exactly as stored. It never prints. Pass dryRun to preview.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "template": {
            "type": "string",
            "minLength": 1,
            "maxLength": 80,
            "description": "Id or name from list_receipt_templates"
          },
          "expectedRevision": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          },
          "dryRun": {
            "type": "boolean"
          }
        },
        "required": [
          "template"
        ],
        "additionalProperties": false
      },
      "page": "/"
    }
    preview_receiptAction

    Shows what will actually come out of the printer as plain text, with the exact dot dimensions, the paper length in millimetres, and any warnings. In the browser this also scrolls the preview into view. Check this before asking to print.

    View tool JSON
    {
      "name": "preview_receipt",
      "kind": "act",
      "impl": "imperative",
      "description": "Shows what will actually come out of the printer as plain text, with the exact dot dimensions, the paper length in millimetres, and any warnings. In the browser this also scrolls the preview into view. Check this before asking to print.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "page": "/"
    }
    undo_agent_editAction

    Steps the receipt back to how it was before the last change. Use this when someone says that was not what they meant, instead of rebuilding the previous version by hand.

    View tool JSON
    {
      "name": "undo_agent_edit",
      "kind": "act",
      "impl": "imperative",
      "description": "Steps the receipt back to how it was before the last change. Use this when someone says that was not what they meant, instead of rebuilding the previous version by hand.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "page": "/"
    }
    request_receipt_printAction

    Prints the exact revision you name. On a connected printer this is irreversible and paper comes out. In the browser demo it opens a preview instead. May pause for approval. Preview first.

    View tool JSON
    {
      "name": "request_receipt_print",
      "kind": "act",
      "impl": "imperative",
      "description": "Prints the exact revision you name. On a connected printer this is irreversible and paper comes out. In the browser demo it opens a preview instead. May pause for approval. Preview first.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "expectedRevision": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          },
          "reason": {
            "type": "string",
            "minLength": 1,
            "maxLength": 240
          }
        },
        "required": [
          "expectedRevision"
        ],
        "additionalProperties": false
      },
      "page": "/"
    }
    open_receipt_editorAction

    Brings up the visible receipt editor so the person can see and adjust the draft before it prints. Use this after drafting whenever they should look before you print.

    View tool JSON
    {
      "name": "open_receipt_editor",
      "kind": "act",
      "impl": "imperative",
      "description": "Brings up the visible receipt editor so the person can see and adjust the draft before it prints. Use this after drafting whenever they should look before you print.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "highlight": {
            "maxItems": 20,
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false
      },
      "page": "/"
    }