satchel.email Get it

satchel.email › MCP

Connect an agent over MCP.

Claude Desktop, web chat apps and any other MCP client can read your mail, calendars and contacts through satchel mcp, and propose replies, filing and events. Everything they propose waits for you in AI Proposals.

If your agent can read files, like Claude Code, you may not need this: the AI folder at ~/Satchel gives it the same reads and proposals with no setup.

Set it up

  1. Create a token. In satchel.email, open Settings › AI agents › Connect an agent. Each agent gets its own token, its own accounts and history window, and its own entry in the log.
  2. Add the server. The app shows the exact command, with the full path to its bundled satchel. For Claude Code:
    claude mcp add satchel --env SATCHEL_AGENT_TOKEN=stk_… -- satchel mcp
    For Claude Desktop and other MCP clients, add it to the client's config:
    { "mcpServers": { "satchel": {
      "command": "satchel", "args": ["mcp"],
      "env": { "SATCHEL_AGENT_TOKEN": "stk_…" }
    } } }
  3. Ask it something. "What do I need to answer today?" or "Find a time next week for lunch with Carol and draft the invite." Proposals show up in AI Proposals right away.

satchel mcp works whether or not the app is open. It reads your mail from the local database and writes proposals the app picks up as soon as it runs.

The tools

Read

search_threads get_thread get_message get_attachment list_accounts list_mailboxes list_calendars list_events get_event find_free_time search_contacts get_contact whoami

Propose

propose_reply propose_draft propose_archive propose_move propose_labels propose_mark_read propose_flag propose_event propose_event_change propose_cancel_event propose_invite_response propose_contact propose_merge_contacts

Follow up

get_proposal_status list_my_proposals

So an agent can see what you approved, edited or rejected, and read your note.

Search takes the same operators as the app: from: to: with: subject: has:attachment is:unread is:flagged before: after: in:.

What stops a bad proposal

  • No tool sends, deletes or changes settings. There's nothing to call. Agents read and propose; you decide.
  • Risks are flagged in Review: new recipients, Bcc, forwarded attachments, invitations that will go out, moves to Trash.
  • Stale proposals are blocked. If the message or event changed after the agent proposed, you look again before it can go.
  • Every agent has limits: its own accounts, history window and proposals per hour, and everything it does is in Settings › Activity.

Email is written by strangers, and a message can try to give your agent instructions. satchel.email tells agents to treat mail as data, but the real protection is structural: whatever an agent is talked into, it can only propose.