Skip to main content

Scraping a guest's Airbnb bio into the Notes field of their Hospitable reservation

  • June 4, 2026
  • 14 replies
  • 689 views

Tom Beerley
Hospitable Hero
Forum|alt.badge.img+3

This prompt (in the attached file) automates the tedious task of researching your Airbnb guests before they arrive. I developed it using the “Claude for Chrome” extension that lets Claude interact with a live web browser. It could probably be adapted to work with other AI agents or other agentic browser automation tools.

The prompt instructs Claude to pull your recent Airbnb reservations from Hospitable, visit each guest's Airbnb profile, and save whatever personal bio they've written about themselves directly into the Notes field of their Hospitable reservation — all without any manual effort on your part. The updating of the reservation is done via the Hospitable MCP. 

The result is a growing library of guest context that makes every interaction more personal and more effective. You'll know before check-in that one guest is a pediatric nurse who loves fly-fishing, another is a retired couple living on a sailboat, and another is a Marine on his first vacation. But beyond just informing how you personally engage with guests, this is where it gets really powerful for AI-assisted hosting: Claude can reference these Notes when drafting messages to guests, writing post-stay reviews, or personalizing welcome instructions. Instead of generic outreach, Claude can acknowledge a guest's interests, reflect their background, or tailor recommendations — because the context is already sitting right there in Hospitable where Claude can see it.

The prompt is designed to be run periodically — you simply tell it the last date you ran it, and it picks up from there, skipping any reservations it's already processed. Over time it builds a richer and richer picture of your guest base, including past guests who may return someday.

14 replies

Tom Beerley
Hospitable Hero
Forum|alt.badge.img+3
  • Author
  • Hospitable Hero
  • June 4, 2026

The community forum doesn’t seem to like TXT files that contain Markdown syntax. ​@Petra is this a known issue? The file attachment above give me an error when I try to open it. And it wouldn’t let me attached a *.md file either… I had to rename it to *.txt first and even then it looks like something choked on it. 

So see below for the prompt itself. 


Tom Beerley
Hospitable Hero
Forum|alt.badge.img+3
  • Author
  • Hospitable Hero
  • June 4, 2026

# Airbnb Guest Bio Scraper — Hospitable Notes Updater

## Task Overview

Go through guest reservations in our Hospitable account, open the Airbnb profile for each guest,
and copy-paste their bio from their Airbnb profile into the "Notes" field of their reservation
in Hospitable. This involves working across 2 browser tabs (Hospitable + Airbnb).

---

## Step 1 — Get the Reservation IDs

Ask me: **"What is the start date? (This should be the date you last ran this process.)"**

Once I provide a date, use the **Hospitable MCP** to pull all Airbnb reservations whose
**booking creation date** is on or after that date. This process only applies to
**Airbnb reservations** — not VRBO, direct bookings, or any other platform. The MCP should
return the reservation IDs for these bookings.

---

## Step 2 — Process Each Reservation

Work through each reservation ID one at a time using the following workflow.

### Finding the Reservation

- Navigate directly to `https://my.hospitable.com/inbox/segments/default;query=[RESERVATION_ID]`
  (substituting the actual ID into the URL)
- Wait ~3 seconds for the search results to load
- Click the result card to open the reservation thread
- Wait ~4 seconds for the page to fully load

### Extracting the Airbnb URL and Checking Existing Notes

Run this JavaScript to get both at once:

```javascript
const links = document.querySelectorAll('a[href*="airbnb.com"]');
const userLinks = Array.from(links).filter(l=>l.href.includes('/users/')).map(l=>l.href);
const airbnbUrl = userLinks.length > 0 ? userLinks[0] : 'NOT FOUND';
const textareas = document.querySelectorAll('textarea');
const notesValue = textareas.length > 0 ? textareas[0].value : 'NO TEXTAREA';
airbnbUrl + ' ||| ' + notesValue;
```

### Skip Rules for Notes Field

- If Notes already starts with `"Bio:"` → skip this reservation entirely (user manually added)
- If Notes already starts with `"Airbnb bio:"` or `"Airbnb Bio:"` → skip (already processed)

### Checking the Airbnb Profile

- Navigate the Airbnb tab to the guest's profile URL
- Use `get_page_text` to read the profile
- Look for a **freeform biographical paragraph** — this is the only thing that counts as a bio
- **Ignore all structured fields** — these are NOT a bio:
  - "My work:", "Born in the X0s", "I'm obsessed with:", "Ask X about:",
    "Where I went to school:", "Fun fact:", "Pets:", "Speaks [language]:",
    "Where I've always wanted to go:", "I spend too much time:",
    "Favorite song in high school:", "Where I've been", trip history, review counts, etc.
- If there is no freeform bio, or only a single trivial word/phrase → skip this reservation

### Adding the Bio to Notes

- Use `scroll_to` on the Notes label ref to bring the Notes section into view
- If Notes is empty, click the **"+ Add"** button to reveal the textarea
- If Notes has existing content (that doesn't start with `"Bio:"` or `"Airbnb bio:"`),
  click in the textarea, press **Ctrl+End** to go to the end, then add a newline before
  the new content
- Click in the textarea and type: `Airbnb bio: [bio text]`
- Click the **"Upsells"** label/section to defocus and trigger auto-save —
  **do NOT use the Tab key** (it can trigger unwanted dialogs)
- Wait 3 seconds for auto-save
- Verify via JS: `document.querySelectorAll('textarea')[0].value`

### Important Rules

- **Do NOT skip cancelled reservations** — process them the same as active ones
- **Do NOT skip guests who are also Airbnb hosts** — check for their personal bio regardless
- **Never overwrite** existing Notes content — always append
- Keep the Airbnb tab open and reuse it across all reservations
- If a reservation ID appears more than once in the list, process it only once

---

## Step 3 — Summarize

At the end, provide a summary table showing:

- Each reservation ID and guest name
- Whether a bio was added, skipped (already done), or had no bio found
- The bio text for any bios that were added


Petra Podobnik
Hospitable Team Member
Forum|alt.badge.img+4
  • Hospitable Team Member
  • June 4, 2026

Hi ​@Tom Beerley, thanks for sharing this with the fellow hosts. 💜

I just downloaded and opened the file, and everything appears to be working correctly. :)


Tom Beerley
Hospitable Hero
Forum|alt.badge.img+3
  • Author
  • Hospitable Hero
  • June 4, 2026

@Petra Podobnik it's working for me now as well. I guess there are a few minutes after posting where it is still “processing” in some way. Thanks for checking on it! 


KellyK
New Participant
Forum|alt.badge.img
  • New Participant
  • June 5, 2026

So where do I put this? in claude?


Tom Beerley
Hospitable Hero
Forum|alt.badge.img+3
  • Author
  • Hospitable Hero
  • June 5, 2026

So where do I put this? in claude?

It's for the "Claude in Chrome" Chrome extension. If you open Claude and ask it how to install it, it should walk you through it.


JenofLions
Participating Frequently
Forum|alt.badge.img
  • Participating Frequently
  • June 5, 2026

Awesome, Tom! 👏🏽 Thanks for sharing!


Double Rainbow Suites
Known Participant
Forum|alt.badge.img

Tom,

Thanks for posting this, I am not a computer wiz by any means, does this only work in Chrome? I typically use Firefox for all my browsing is Chrome that much more functional?

 

Bill 

Double Rainbow Suites


anthonyrallo
Top Contributor
Forum|alt.badge.img+4
  • Top Contributor
  • June 6, 2026

@Tom Beerley cant wait to try it! Thinking it might be a next level idea to blend the AirReview info (guest reviews of hosts) into this too. We use this all the time to classify the guests that are inquiring (or have booked). 


Tom Beerley
Hospitable Hero
Forum|alt.badge.img+3
  • Author
  • Hospitable Hero
  • June 7, 2026

@Double Rainbow Suites the “Claude in Chrome” extension should work on any Chromium-based browser. Off the top of my head, that means Microsoft Edge and Google Chrome. Firefox won't work.

Here’s the install link for the Claude Chrome extension. I guess a good rule of thumb is that if it lets you install it, it'll work. 

https://chromewebstore.google.com/detail/fcoeoabgfenejglbffodgkkbkcdhcgfn?utm_source=item-share-cb


Tom Beerley
Hospitable Hero
Forum|alt.badge.img+3
  • Author
  • Hospitable Hero
  • June 7, 2026

Here’s an enhanced version that scrapes more than just the “bio” itself… it also scrapes the other fields that the guest may have filled out (favorite song in high school, places I’ve been, etc.).The prior version was explicitly skipping those things, but I ended up thinking it was helpful to have “fun facts” about the guest. 


Tom Beerley
Hospitable Hero
Forum|alt.badge.img+3
  • Author
  • Hospitable Hero
  • June 7, 2026

@anthonyrallo I had the same idea! I’ve actually completely reverse-engineered the AirReview extension so that Claude in Chrome now knows how to make the same API calls that the AirReview extension uses. I started to share it but I thought better of it because technically even AirReview is violating Airbnb’s TOS with the type of scraping it does. It took about an hour but with a few iterations I was able to build a Claude in Chrome “Task” that lets me just say “pull reviews left by the guest for reservation HMXXXXXX”. 


Homelike.ca
Known Participant
Forum|alt.badge.img+1
  • Known Participant
  • June 7, 2026

Thanks for sharing


Tom Beerley
Hospitable Hero
Forum|alt.badge.img+3
  • Author
  • Hospitable Hero
  • June 7, 2026

Ugh, I wish the forum here could let me edit previous posts to fix mistakes. But since it doesn’t, here’s an update to fix the fact that the prior version was trying to use the MCP to gather reservation IDs. The Chrome extension for Claude actually can't use MCPs, so this version will prompt you to paste a prompt into a regular Claude session for that first step of identifying new reservations to process. (You heard that right… it’s a prompt that generates a prompt LOL.)

The contents of this file can be pasted into a Task / Shortcut that you create inside the extension. Give it a name like “Bio-Scraper” and invoke it in a chat (inside the Chrome extension) by typing “/Bio-Scraper”