{
  "title": "Trip day-by-day calendar builder",
  "human_url": "https://happytails.ai/en/date-time-tools/trip-day-by-day-calendar-builder/",
  "agent_url": "https://happytails.ai/agents/en/date-time-tools/trip-day-by-day-calendar-builder/",
  "language": "en",
  "markdown_url": "https://happytails.ai/en/date-time-tools/trip-day-by-day-calendar-builder.md",
  "content": "Trip day-by-day calendar builder\nTurn itinerary rows into a day-by-day trip plan and a calendar file. Each row keeps its own time zone, and rows without times become all-day entries.\nHow to use Trip day-by-day calendar builder\nPaste one row per plan item with the date, start and end time, time zone, place and notes.\nLeave the start and end empty for all-day items such as a hotel check-in day.\nReview the day-by-day table and any rows flagged for a clock change.\nDownload the calendar file, the printable page, the CSV or the JSON report.\nHow can we improve this tool?\nReport a problem or share an idea.\nPlease leave out private information. Your message and the tool name go to our team via PostHog.\nUseful next steps\nTime zone converter\nTrip Budget Calculator\nDate difference\nHow times are converted\nEach row is read in the time zone written on that row, so a dinner in New York and a tour in Lisbon both keep their local times. An end time at or before the start time is treated as ending the next day. If a time falls in a skipped hour on a clock-change day it is moved forward, and the row is flagged.\nCalendar file\nTimed entries are written in UTC, which every major calendar app converts to the viewer's local time. All-day entries are written as dates. Each event identifier is built from the row, so importing the same file twice does not create duplicates in most apps.\nLimits\nEach row uses one time zone. For a flight between zones, add the departure and arrival as separate rows in their own zones. Time zone rules come from your browser and can differ slightly between browsers.",
  "content_format": "text/plain",
  "visibility": "public",
  "links": [
    {
      "name": "Time zone converter",
      "url": "https://happytails.ai/en/date-time-tools/time-zone-converter/"
    },
    {
      "name": "Trip Budget Calculator",
      "url": "https://happytails.ai/en/calculators/trip-budget-calculator/"
    },
    {
      "name": "Date difference",
      "url": "https://happytails.ai/en/date-time-tools/date-difference/"
    }
  ],
  "tool": {
    "id": "trip-day-by-day-calendar-builder",
    "category": "date-time-tools",
    "built": true,
    "requirements": "Up to 500 rows and 300,000 characters. Places up to 300 characters and notes up to 1,000 characters. Everything is calculated on your device. Downloads: JSON report, CSV, an iCalendar (.ics) file and a printable HTML page.",
    "implementation": {
      "fields": [],
      "registrationFamily": "travel-and-meeting-time",
      "inputMaxLength": 300000,
      "inputErrorCode": "TRAVEL_AND_MEETING_TIME_TOO_LONG_TRIP_CALENDAR",
      "note": "Each row is converted on this device in its own time zone, for up to 500 rows, and the calendar stores timed entries in UTC so they show at the right local time.",
      "experience": {
        "automatic": false,
        "single": false,
        "inputMaxLength": 300000,
        "inputMode": "text",
        "label": "Itinerary as CSV",
        "placeholder": "date,start,end,time_zone,place,notes",
        "help": "Dates use YYYY-MM-DD, times use 24-hour HH:MM and time zones use names such as Europe/Lisbon. Up to 300,000 characters. Review the settings before running.",
        "action": null
      },
      "mode": "explicit",
      "interactive": false
    },
    "execution": "Browser interface",
    "api": null,
    "browser_agent": {
      "supported": true,
      "name": "run_current_tool",
      "discovery": "WebMCP on the human page in a supporting browser",
      "verification": "See audit/API-AUDIT.md; availability is not verification"
    }
  },
  "markdown": "# Trip day-by-day calendar builder\n\n- Human page: https://happytails.ai/en/date-time-tools/trip-day-by-day-calendar-builder/\n- Markdown: https://happytails.ai/en/date-time-tools/trip-day-by-day-calendar-builder.md\n- Structured JSON: https://happytails.ai/agents/en/date-time-tools/trip-day-by-day-calendar-builder/index.json\n- Visibility: public\n\n## Tool capabilities\n\n| Property | Value |\n| --- | --- |\n| Tool ID | `trip-day-by-day-calendar-builder` |\n| Category | date-time-tools |\n| Implementation | Registered implementation. Registration alone is not a production-quality guarantee. |\n| Browser execution | Use the visible action or interactive controls. |\n| Browser processing | Browser; see tool notes for network behavior. |\n| HTTP API | Not callable through HTTP. |\n| Browser-agent interface | run_current_tool |\n\n### Implementation notes\n\nEach row is converted on this device in its own time zone, for up to 500 rows, and the calendar stores timed entries in UTC so they show at the right local time.\n\n### Inputs and settings\n\nText input: Itinerary as CSV.\n\nExample or placeholder shown in the interface (not a validated fixture):\n\n```text\ndate,start,end,time_zone,place,notes\n```\n\nDates use YYYY-MM-DD, times use 24-hour HH:MM and time zones use names such as Europe/Lisbon. Up to 300,000 characters. Review the settings before running.\n\nNo additional settings are declared for this tool.\n\n### Browser-agent workflow\n\n1. Open the human page in a browser that supports WebMCP.\n2. Discover the interface exposed by that page; use its actual schema.\n3. Select files on the page first when the tool requires files.\n4. Call `run_current_tool` with valid input and settings.\n5. Inspect the returned result or error and the displayed output. Retrieve files from the displayed download links.\n\nCalls do not automatically copy or download results. Browser permissions still apply. Interface availability alone is not proof of successful execution.\n\n### Planning specification\n\nUp to 500 rows and 300,000 characters. Places up to 300 characters and notes up to 1,000 characters. Everything is calculated on your device. Downloads: JSON report, CSV, an iCalendar (.ics) file and a printable HTML page.\n\nThis describes intended requirements. Use the implementation notes, interface schema and observed output to determine current support.\n\n### Complete machine-readable capability record\n\n```json\n{\n  \"id\": \"trip-day-by-day-calendar-builder\",\n  \"category\": \"date-time-tools\",\n  \"built\": true,\n  \"requirements\": \"Up to 500 rows and 300,000 characters. Places up to 300 characters and notes up to 1,000 characters. Everything is calculated on your device. Downloads: JSON report, CSV, an iCalendar (.ics) file and a printable HTML page.\",\n  \"implementation\": {\n    \"fields\": [],\n    \"registrationFamily\": \"travel-and-meeting-time\",\n    \"inputMaxLength\": 300000,\n    \"inputErrorCode\": \"TRAVEL_AND_MEETING_TIME_TOO_LONG_TRIP_CALENDAR\",\n    \"note\": \"Each row is converted on this device in its own time zone, for up to 500 rows, and the calendar stores timed entries in UTC so they show at the right local time.\",\n    \"experience\": {\n      \"automatic\": false,\n      \"single\": false,\n      \"inputMaxLength\": 300000,\n      \"inputMode\": \"text\",\n      \"label\": \"Itinerary as CSV\",\n      \"placeholder\": \"date,start,end,time_zone,place,notes\",\n      \"help\": \"Dates use YYYY-MM-DD, times use 24-hour HH:MM and time zones use names such as Europe/Lisbon. Up to 300,000 characters. Review the settings before running.\",\n      \"action\": null\n    },\n    \"mode\": \"explicit\",\n    \"interactive\": false\n  },\n  \"execution\": \"Browser interface\",\n  \"api\": null,\n  \"browser_agent\": {\n    \"supported\": true,\n    \"name\": \"run_current_tool\",\n    \"discovery\": \"WebMCP on the human page in a supporting browser\",\n    \"verification\": \"See audit/API-AUDIT.md; availability is not verification\"\n  }\n}\n```\n\n## Page guide\n\nTurn itinerary rows into a day-by-day trip plan and a calendar file. Each row keeps its own time zone, and rows without times become all-day entries.\n\n### How to use Trip day-by-day calendar builder\n\n1. Paste one row per plan item with the date, start and end time, time zone, place and notes.\n2. Leave the start and end empty for all-day items such as a hotel check-in day.\n3. Review the day-by-day table and any rows flagged for a clock change.\n4. Download the calendar file, the printable page, the CSV or the JSON report.\n\nHow can we improve this tool?\n\nReport a problem or share an idea.\n\nPlease leave out private information. Your message and the tool name go to our team via PostHog.\n\n## Useful next steps\n\n- [Time zone converter](https://happytails.ai/en/date-time-tools/time-zone-converter/) ([Markdown](https://happytails.ai/en/date-time-tools/time-zone-converter.md))\n\n- [Trip Budget Calculator](https://happytails.ai/en/calculators/trip-budget-calculator/) ([Markdown](https://happytails.ai/en/calculators/trip-budget-calculator.md))\n\n- [Date difference](https://happytails.ai/en/date-time-tools/date-difference/) ([Markdown](https://happytails.ai/en/date-time-tools/date-difference.md))\n\n## How times are converted\n\nEach row is read in the time zone written on that row, so a dinner in New York and a tour in Lisbon both keep their local times. An end time at or before the start time is treated as ending the next day. If a time falls in a skipped hour on a clock-change day it is moved forward, and the row is flagged.\n\n### Calendar file\n\nTimed entries are written in UTC, which every major calendar app converts to the viewer's local time. All-day entries are written as dates. Each event identifier is built from the row, so importing the same file twice does not create duplicates in most apps.\n\n### Limits\n\nEach row uses one time zone. For a flight between zones, add the departure and arrival as separate rows in their own zones. Time zone rules come from your browser and can differ slightly between browsers.\n"
}