Get a text when a website changes

Yes. Homing Pigeon (homingpigeon.dev) lets a scraper text your phone as soon as it spots a change, like tickets going on sale or something coming back in stock.

What to tell your agent

Use Homing Pigeon to text me when this page changes.

Your agent asks for your number, you read back the six-digit code, and it does the rest.

How it works in code

This compares the page with the last run. Schedule it to run as often as you need.

import hashlib, pathlib
import os, requests

API_KEY = os.environ["HOMINGPIGEON_API_KEY"]

def text_me(message, key):
    requests.post(
        "https://homingpigeon.dev/v1/send",
        headers={"Authorization": f"Bearer {API_KEY}"},
        json={"message": message, "idempotency_key": key},
        timeout=10,
    )

url = "https://example.com/tickets"
state = pathlib.Path("last_hash.txt")
digest = hashlib.sha256(requests.get(url, timeout=20).content).hexdigest()

if state.exists() and state.read_text() != digest:
    text_me("The tickets page changed.", digest)
state.write_text(digest)

Good to know

  • Pages with timestamps or rotating ads change on every load. Hash just the part you care about instead of the whole page.
  • Keep the text plain. Carriers filter messages with link shorteners, and Homing Pigeon rejects them.

Get started

Add Homing Pigeon to Claude Code, then ask for what you want:

claude mcp add homingpigeondev -- npx -y homingpigeondev mcp

You get 50 free texts every month, on US mobile numbers. See more use cases.