School communication is too much, so my AI does it

Our daughter started Grade R this year. With that came many, many WhatsApp groups: the whole-school one (700-odd parents), the grade group, choir, sports, and a direct line to the office, two different groups with parents, to name a few. Between them they send maybe 30 messages a week. Most of it isn’t about her. The bits that are about her are mixed in with Grade 4 netball fixtures, fundraiser tickets, and PDFs I hate opening.

Twice this term I found out about something the morning it was due. Once I was listed on a volunteer roster and only found out because I scrolled back through an image someone had posted three days earlier.

So I set up an assistant to read the groups for me. This is what it does now, and how to set it up yourself. No coding. About half an hour.

What it does

Twice a day on school days, it reads all seven groups and posts a short message in a private chat my wife and I share. Something like:

🏫 School β€” Wed 16 Sep

TO DO

Dad: you’re on the volunteer roster at cross country TOMORROW

Meet the sports teacher 08:00 at the field for the route walk-through.

House colours tomorrow β€” RED

Grade walk β€” Mon 21 Sep

Closed shoes, hat, sunscreen. Pack a labelled lunch box and water.

FYI

Holiday care offered over the break, paid extra.

It only posts when there’s something new, when something is due the next school day, or when something is overdue. A to-do gets mentioned when it arrives, again the evening before it’s due, and in the Friday “next week” section β€” not every day in between. If one of us replies “done” or “signed it” in the chat, that item disappears without comment. Something overdue that neither of us has ticked off keeps coming back until we do. On Fridays it adds the “next week” section: the standing timetable (which day is ball skills, which day is tennis) plus anything dated.

It reads the PDFs and images too, which turned out to matter most. The volunteer roster was an image. The walk details were a PDF.

What you need

  • Beeper β€” a free app that puts WhatsApp, Telegram, iMessage, etc. in one place. It’s the bridge that lets the AI read your chats. beeper.com/download; and you’re in great company. Automattic, our parent company, owns Beeper.
  • Claude (the desktop app) β€” this is what I use, because it can run things on a schedule while the app is open. ChatGPT can also connect to Beeper, but I’ll come back to the catch with that.
  • A chat where the summaries go. We use a Telegram group with just the two of us. A “note to self” chat works fine if it’s only for you. The advantage of Telegram is the option to set up a “bot” to deliver the messages (see “Bonus” below).

What about privacy? Everything here runs on your own laptop. Beeper’s connection to the AI only works from the same machine, and it needs Beeper to be open. The AI reads the groups, but nothing gets posted back into the school groups β€” it only ever writes to your private chat. So the information doesn’t leave the laptop, and I have strict privacy settings configured with Claude.

Step 1: Set up Beeper

Install Beeper, sign in, and connect the messaging app your school uses. Connect a different app too if that’s where you want the summaries to land.

Then create the private chat the summaries will go to, if you don’t have one already.

So many different groups

Step 2: Turn on Beeper’s AI connection

In Beeper Desktop: Settings β†’ Developers β†’ MCP. Follow the steps on that screen β€” it walks you through connecting to Claude Desktop with a couple of clicks. You do this once; the connection stays after that. The full instructions are at developers.beeper.com/desktop-api/mcp.

“MCP” is the name of the plug that lets an AI talk to an app. You don’t need to know more than that.

Beeper MCP settings

Step 3: Check it works

Open Claude and ask: “Can you see my Beeper chats? List the ones with ‘school’ in the name.” It should come back with your groups.

If it says it can’t reach Beeper, check two things before anything else: is Beeper open, and did it just restart? The link drops for a few minutes whenever Beeper restarts and comes back on its own. Once Beeper is open, tell Claude “reconnect to Beeper” or start a new chat, and it’s there again. Don’t let it send you hunting for tokens or settings. Mine did that to me once β€” it confidently diagnosed an authentication problem that didn’t exist, while the connection had already come back on its own.

Step 4: Tell it what to do

This is the part that matters. Paste this in, filling in the bits in square brackets. It’s what I use, minus our names.

I want you to read my school WhatsApp groups and tell me what actually concerns my child.

Sources (read only, never reply in these): [list your groups by name β€” e.g. “Grade R 2026”, “School parents”, “Junior choir”, “Prep sports”, the class parents’ group, and the direct chat with the school office].

Post to: [name of your private chat]. That is the only chat you may ever send to.

About my child: [first name], Grade [X], class teacher [name]. Activities: [choir / which sports on which days / aftercare]. House: [colour]. Parents’ names to watch for on rosters and sign-up lists: [your names].

Relevant = addressed to their grade, their class, an activity they do, or all parents. Not relevant = other grades, other classes, chit-chat. If you’re unsure, include it and say so.

For every relevant message, sort it into:

  • TO DO β€” someone has to bring, sign, pay, wear, drive, attend, or reply. Say what and by when. Convert “tomorrow” into an actual date.
  • FYI β€” good to know, no action.

If a message names one of the parents on a list or roster, that goes first, with the duty spelled out.

Read attachments where you can. If you can’t read one, tell me the filename and which group it’s in.

Post one message, short lines, blank lines between items, written for reading on a phone. Only post if there’s something new, something due the next school day, or something overdue. Mention a to-do when it arrives, the evening before it’s due, and in the Friday “next week” section β€” not every day in between. If it’s overdue and we haven’t said it’s done, keep it in every post until we do. When one of us replies “done” or similar, drop the item β€” don’t confirm it back to us. Keep a running list of what’s open.

On Fridays, add a “next week” section: the standing timetable plus anything dated in the coming week.

Never send anything to the school groups. Never use emoji beyond a 🏫 at the top. If you can’t reach Beeper, say so in one line and stop β€” don’t guess at fixes.

Run it once by hand and read the output. Mine was too dense the first time, and was vague on the volunteer roster for an event even though my name was in the screenshot (“only if one of you signed up”) because it hadn’t looked at the image. Say what you’d change and it will remember for next time.

First run of my script, I gave several bits of feedback since

Step 5: Make it run on its own

In the Claude desktop app you can turn a prompt into a scheduled task β€” ask it: “Run this every weekday at 08:30 and 16:30.” It creates the schedule and runs while the app is open on your laptop. If the laptop’s asleep at 08:30, it runs when you open it. I also asked for a backup run mid-morning that only does anything if the morning one didn’t happen.

The ChatGPT catch. ChatGPT can connect to Beeper too (Beeper’s site lists it), so the “ask it by hand each morning” version works there. What I couldn’t get is the scheduled part: ChatGPT’s scheduled tasks run on their servers, and Beeper only talks to things running on your own machine. If you’ve found a way round that, tell me.


Bonus: get notified too

Beeper sends the summary from your own account, and Telegram doesn’t notify you about your own messages. My wife got pinged; I didn’t. The fix is a Telegram bot that does the posting. Ten minutes, still no coding.

  1. In Telegram, open a chat with @BotFather and send /newbot. Give it a name and a username ending in “bot”. It replies with a token. Ours is called Ms Informed.
  2. Add the bot to your private group and send any message there.
  3. Tell Claude: “Post the school updates through this Telegram bot instead of Beeper” and give it the token. Put the token in a file on your laptop rather than pasting it into the chat if you can. If you did paste it, /revoke in BotFather gives you a fresh one.
  4. Back in BotFather: /setjoingroups β†’ Disable, so nobody else can add the bot to a group. /setprivacy should say Enabled β€” the bot can’t read the group, it only writes to it.

Reading still happens through Beeper; the bot only posts. Both of you get a notification now, and the message shows who it’s from.

Can you do this on WhatsApp? Not for a personal group. Bots on WhatsApp go through the WhatsApp Business Platform, which needs a business account, a separate phone number and pre-approved message templates β€” built for companies sending order confirmations, not for two parents. If your private chat has to be on WhatsApp, keep the Beeper way and accept that only the other parent gets pinged. Or put that one chat on Telegram.


Things I learned in the first week

  • Tell it your names. The single most useful thing it caught was my name on a roster image. It only looked because I’d told it to.
  • PDFs are only readable once someone has opened them. Beeper keeps a copy on your laptop after you tap a file. So if the summary says “couldn’t read the parent memo”, tap the memo in Beeper once and the next run will summarise it.
  • Tell it to stay quiet. The default is to post every run. “Only post if there’s something new or still open” cut the noise by more than half.
  • Don’t let it nag. Mine repeated a Monday walk every day from the Wednesday before. Now a to-do shows up when it arrives, the evening before, and in the Friday preview β€” and only comes back daily once it’s overdue.
  • Reply in the chat. “Done”, “signed it”, “she’s not doing tennis this term” β€” it reads those and adjusts. No special format needed, and it doesn’t need to confirm back.
  • Connection drops are usually nothing. If a run says it couldn’t reach Beeper, open Beeper (or wait a few minutes if it just restarted) and tell Claude to reconnect. That’s the whole fix.
  • Reconfirm the timetable each term. Sports days change. I put a note in the instructions to ask me at the start of each term.

That’s it. If you set this up and it catches something you’d have missed, I’d like to hear about it. And if your school’s groups are worse than ours β€” seven groups, 700 parents β€” I’d like to hear about that too.

Comments

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Discover more from job.blog

Subscribe now to keep reading and get access to the full archive.

Continue reading