booking links

Let someone's AI assistant book a meeting with you — what a booking link needs, and how Meetful's does it

By Jack Jay · 9 November 2026 · 3 min read

More and more, the person booking a meeting with you never sees your booking page. They told an assistant "find me half an hour with Jack next week" and pasted your link. Whether that ends in a booking or in "I couldn't do that, here's the link" depends on your booking page, not on the assistant.

Four kinds of assistant, four different needs

An assistant reaches a booking link in one of four ways, and the link has to work for all of them:

  1. It reads the page. Many chat assistants fetch a page as text without running its scripts. A booking page that draws its calendar with JavaScript looks empty to them: a title, a logo, nothing to book.
  2. It opens an address. Some can open an address they write themselves. That's one request, with no form to fill in.
  3. It sends a request. Assistants with tools (an HTTP tool, a GPT action, MCP) can send data to an API, if they can find it and it doesn't ask for a key they don't have.
  4. It drives a browser. Agent modes and personal agents click through the page like a person. They need buttons that say what they are.

Sometimes the assistant can't finish by itself, or its person wants to look first. Then the best it can do is hand back something that's one press from done.

Every Meetful booking link (meetful.com/your-name) already does all of this. There's nothing to switch on.

  • Reading. The page carries the next open times as plain text in its own HTML, in your time zone with the offset, so a time read off the page can be sent straight back. The same page as Markdown is at meetful.com/book/your-name.md, and an assistant that asks for Markdown gets it from the link itself.
  • Opening an address. One request books it: /api/book/your-name/confirm?at=…&name=…&email=…. The answer is the meeting room, a calendar file and a private link to move or cancel.
  • Sending a request. POST /api/book/your-name takes JSON, and Meetful's MCP server has find_times and book_time. No key, because the person booking has no account here and shouldn't need one. The developer page and the OpenAPI document describe them.
  • Driving a browser. Every time on the page is a button whose label is the whole date and time, not just "10:00".
  • Handing it back. An assistant can give its person the page filled in: the time, their name, their email, what they want to cover. It opens on the last step with one button left, Book it.

What stays safe when an assistant books

  • The time is checked again when it's booked, against the live list and your own calendar if you connected one. An assistant that read the page an hour ago can't book a time somebody took since. It's told so, along with the three nearest open times.
  • You're told which assistant booked. Your email, the event in your calendar and your list of bookings say "booked by Grok" (or ChatGPT, Claude…). The person it was booked for is told too.
  • Link previews and crawlers don't book. A chat app drawing a preview of the link, a search engine following it, a browser loading it ahead of a click, or another website sending its visitors through it books nothing. Neither does a template copied as it stands, with {name} still in it.
  • A loop is stopped. One address can only make so many bookings on one page in an hour.
  • Asking twice books once. An assistant that retries is told the time is already booked, and nobody is handed the room or the private link a second time.

Share it the way you already do. To make it even easier for assistants, put the Markdown address in your email signature next to the normal one: meetful.com/book/your-name.md has your open times and every way to book on one page.

No booking link yet? Make one. It's free on every plan.

Sources

  • Model Context Protocol, specification: how assistants call tools like find_times and book_time
  • schema.org, ReserveAction: how the page describes its booking to machines