← Connections
Beeper

Beeper

iMessage, WhatsApp, Signal, and more in one place.

What it does

Beeper bridges all your messaging apps into a single interface that Claude can read. Instead of connecting each messaging service individually, you connect Beeper once and get access to iMessage, WhatsApp, Signal, Discord, Slack DMs, and anything else you've linked. Morning briefings surface messages that need replies. Digests summarize conversations. People syncs extract relationship context from chat history.

Beeper is also where Patina delivers output. Morning briefings, end-of-day digests, and weekly summaries are sent to your "Note to Self" channel in Beeper, so you can read them from any device without opening your terminal.

Used by

/morning /digest /weekly /sync-people /sync-clients /sync-identity

Supported platforms

WhatsApp WhatsApp
iMessage iMessage
Instagram Instagram
Telegram Telegram
Messenger Messenger
Signal Signal
Discord Discord
Slack Slack
Google Messages Google Messages
Google Chat Google Chat
LinkedIn LinkedIn
X X

Setup

1

Install Beeper Desktop

Download Beeper for Mac and create an account. Beeper is free.

2

Connect your messaging apps

Inside Beeper, link the messaging services you want Patina to read. Each platform has its own linking flow. The more you connect, the more complete your briefings and digests will be.

iMessage: Connects through your Mac's local Messages database. Beeper handles this automatically when you sign in with your Apple ID.
3

Enable the Beeper MCP server in Claude Code

Beeper ships with a built-in MCP server that Claude Code can connect to. You need to enable it in your Claude Code settings.

  1. Open Claude Code in your Patina repo
  2. Run /permissions or open .claude/settings.local.json
  3. Add the Beeper MCP tools to your allowed list. The tools you need are:
mcp__beeper__search_chats
mcp__beeper__list_messages
mcp__beeper__search_messages
mcp__beeper__send_message
mcp__beeper__get_chat
mcp__beeper__get_accounts
mcp__beeper__search
mcp__beeper__focus_app
mcp__beeper__archive_chat
mcp__beeper__set_chat_reminder
mcp__beeper__clear_chat_reminder
mcp__beeper__search_docs

The easiest way: when Claude Code first tries to use a Beeper tool, it will ask for permission. Just approve each one and select "Always allow" so it doesn't ask again.

4

Keep Beeper running

Beeper Desktop needs to be running on your Mac for Patina to access messages. It sits in the background and uses minimal resources. If Beeper isn't running when a skill tries to read messages, that source is skipped gracefully.

5

Test it

Run /morning in Claude Code. Your briefing should include recent messages from your connected platforms. You can also test directly by asking Claude "search my Beeper messages for [topic]".

Delivering output

Patina uses Beeper's "Note to Self" channel to deliver morning briefings, digests, and weekly summaries. This means you can read them from any device (phone, tablet, desktop) without opening your terminal. The send_message tool handles this automatically.

How it works

Beeper runs an MCP server locally on your Mac. Claude Code communicates with it to search chats, list messages, and read conversation history. Messages are paginated (20 per request) and accessed in real time. Nothing is stored outside your Beeper app and your Patina repo.

The main tools Patina uses:

For scheduled automations (menu bar app), iMessage data is pre-fetched from your local Messages database to avoid macOS permission dialogs. Other platforms are read through Beeper's MCP server directly.