Labsco
MCP SERVER

MCP Hey

by Sealjay

Read, send and triage a Hey.com inbox from your assistant, with everything running on your own machine.

Email: Mailboxes & Delivery
Summary
Hey's triage vocabulary, exposed as tools instead of buttons.

The value here is that Set Aside, Reply Later, the Screener and Bubble Up all became callable, so an assistant can work the inbox the way Hey expects rather than treating it as a generic mailbox. Two things to weigh before you commit: it rides an API Hey does not publish, so a frontend change can break it, and it parses English-language strings out of Hey's HTML, so a non-English locale will not work.

What it is

A local server for the Hey.com inbox, built as a Bun/TypeScript stdio server plus a small Python helper that captures your session through the system webview at login. Hey does not publish a public API, so this reverse-engineers its web endpoints.

What you get
  • `hey_list_emails` reads Imbox, Feed, Paper Trail, Trash, Spam and Drafts; `hey_imbox_summary` returns screener count, bubbled-up mail and new mail in one call
  • `hey_read_email` returns the body plus attachment metadata and parsed calendar invites; `hey_download_attachment` writes bytes to disk and `hey_get_calendar_invite` parses an .ics
  • `hey_send_email`, `hey_reply` and `hey_forward` write back
  • Triage is the whole Hey vocabulary: `hey_set_aside`, `hey_reply_later`, `hey_screen`, `hey_move_to`, `hey_mark_seen`, `hey_thread_mute`
  • `hey_bubble_up`, `hey_bubble_up_if_no_reply` and `hey_pop_bubble` cover the resurface-later stack
  • `hey_search` hits a local full-text cache first, then the network; `hey_cache_status` reports what is cached
Requirements

Bun 1.1 or later and Python 3.10 or later, run from a clone over stdio. The first run opens Hey's own login page in a system webview and writes session cookies to data/hey-cookies.json with 600 permissions — no password is stored. Developed and tested on macOS and Linux.