Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsBlogPro
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges
  • Chrome Extension
  • Skill Manager

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Apple Mail Moltbot Skill

ASecurity

"Read and interact with Apple Mail via osascript on macOS. Use when

14 stars
0 votes
0 copies
2 views
Added 9/7/2026
businesspythonbashperformance

Works with

cli

Security Analysis

A100/100

Pro scans all 6 files and shows the line behind each finding

Scanned 9/7/2026

$npx -y skills add modbender/skill-library-mcp --skill apple-mail-moltbot-skill --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Apple Mail Moltbot Skill?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Apple Mail Moltbot Skill
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/modbender-apple-mail-moltbot-skill/badge)](https://www.skillsdirectory.com/skills/modbender-apple-mail-moltbot-skill)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
Files
SKILL.md
---
name: apple-mail
description: "Read and interact with Apple Mail via osascript on macOS. Use when
  you need to: (1) List mail accounts, (2) List mailboxes/folders for an
  account, (3) Get messages from a specific mailbox, (4) Read message content.
  Works with Apple Mail app on macOS only."
---


# Apple Mail Skill

## Overview

This skill enables interaction with Apple Mail on macOS through AppleScript (osascript). It provides capabilities to list accounts, browse mailboxes, retrieve message lists, and read full message content.

## Prerequisites

- macOS system
- Apple Mail app installed and configured
- At least one mail account set up in Apple Mail
- Apple Mail must be running when using this skill

## Quick Start

### List Available Accounts

```bash
python3 {baseDir}/scripts/list_accounts.py
```

### List Mailboxes for an Account

```bash
python3 {baseDir}/scripts/list_mailboxes.py "Account Name"
```

### Get Messages from a Mailbox

```bash
# Get 10 most recent messages (default)
python3 {baseDir}/scripts/get_messages.py "Account Name" "INBOX"

# Get specific number of messages
python3 {baseDir}/scripts/get_messages.py "Account Name" "INBOX" --limit 20
```

### Read Full Message Content

```bash
python3 {baseDir}/scripts/get_message_content.py "MESSAGE_ID"
```

## Typical Workflows

### Workflow 1: Browse Mail

1. List accounts to see what's available
2. Choose an account and list its mailboxes
3. Get messages from desired mailbox
4. Read full content of specific messages

### Workflow 2: Search for Specific Messages

1. Get messages from target mailbox with appropriate limit
2. Review subjects and senders from the list
3. Identify message IDs of interest
4. Read full content of relevant messages

## Script Reference

### `list_accounts.py`

Lists all configured mail accounts in Apple Mail.

**Output format:** JSON array of account names
```json
{
  "accounts": ["iCloud", "Gmail", "Work"],
  "count": 3
}
```

### `list_mailboxes.py <account_name>`

Lists all mailboxes (folders) for a specific account.

**Arguments:**
- `account_name`: Name of the mail account (from list_accounts.py)

**Output format:** JSON array of mailbox names
```json
{
  "account": "iCloud",
  "mailboxes": ["INBOX", "Sent", "Drafts", "Trash", "Archive"],
  "count": 5
}
```

### `get_messages.py <account_name> <mailbox_name> [--limit N]`

Retrieves message list from a specific mailbox.

**Arguments:**
- `account_name`: Name of the mail account
- `mailbox_name`: Name of the mailbox (e.g., "INBOX", "Sent")
- `--limit N`: Optional, max number of messages to retrieve (default: 10)

**Output format:** JSON array with message metadata
```json
{
  "account": "iCloud",
  "mailbox": "INBOX",
  "messages": [
    {
      "id": "123456",
      "subject": "Meeting Tomorrow",
      "sender": "colleague@example.com",
      "date_sent": "Monday, January 27, 2026 at 10:30:00 AM",
      "date_received": "Monday, January 27, 2026 at 10:30:05 AM",
      "read_status": false,
      "message_size": 2048
    }
  ],
  "count": 1
}
```

### `get_message_content.py <message_id>`

Retrieves full content of a specific message.

**Arguments:**
- `message_id`: Message ID from get_messages.py output

**Output format:** JSON with full message details
```json
{
  "subject": "Meeting Tomorrow",
  "sender": "colleague@example.com",
  "content": "Hi, let's meet tomorrow at 2 PM...",
  "date_sent": "Monday, January 27, 2026 at 10:30:00 AM"
}
```

## Common Patterns

### Pattern: Find Unread Messages

1. Get messages from INBOX
2. Filter results where `read_status` is `false`
3. Read content of unread messages

### Pattern: Check Sent Messages

1. List mailboxes to find "Sent" or "Sent Messages"
2. Get messages from sent mailbox
3. Review what was sent recently

### Pattern: Search Multiple Mailboxes

1. List all mailboxes for account
2. Iterate through mailboxes of interest
3. Get messages from each
4. Aggregate and present results

## Error Handling

All scripts output errors in a consistent format:

```json
{
  "error": "Error description",
  "details": "Additional context if available"
}
```

Common errors:
- **Apple Mail not running**: Start the Mail app
- **Invalid account name**: Check spelling, account names are case-sensitive
- **Invalid mailbox name**: Use exact name from list_mailboxes.py
- **Message not found**: Message may have been deleted or moved

## Important Notes

- **Case sensitivity**: Account and mailbox names are case-sensitive
- **Mail app must be running**: All scripts require Apple Mail to be open
- **Permissions**: First use may prompt for automation permissions in System Preferences
- **Performance**: Large mailboxes may take longer to query; use --limit to constrain results
- **Message IDs**: Message IDs are persistent unless the message is deleted

## Limitations

- Only works on macOS
- Requires Apple Mail (doesn't work with other mail clients)
- Cannot send or delete messages (read-only operations)
- Cannot modify message properties (flags, folders, etc.)
- Limited to mailboxes directly under accounts (nested folders may not be accessible)

Attribution

modbendermodbender
View sourceSee grades on GitHubMore from modbender →
SSkills Directory ProSkills Directory

Get any skill into Claude in one click.

Download any skill as a ZIP for Claude.ai, Claude Desktop, or .claude/skills. $9/mo.

See Pro

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills Directory ProSkills Directory

Get any skill into Claude in one click.

Download any skill as a ZIP for Claude.ai, Claude Desktop, or .claude/skills. $9/mo.

See Pro

Related Skills

Solution Architect

Designs system architecture, component specifications, and technical integration strategy. Use when: designing solutions, system architecture, technology stack, or integration approaches.

192 votes

Akorchak:Venture Assessment

Generate a comprehensive VC investment assessment report for a company

72 votes

Just Fucking Cancel

Find and cancel unwanted subscriptions by analyzing bank transactions. Detects recurring charges, calculates annual waste, and helps you cancel with direct URLs and browser automation. Use when: 'cancel subscriptions', 'audit subscriptions', 'find recurring charges', 'what am I paying for', 'save money', 'subscription cleanup', 'stop wasting money'. Supports CSV import (Apple Card, Chase, Amex, Citi, Bank of America, Capital One, Mint, Copilot) OR Plaid API for automatic transaction pull. Out...

6511 votes

Stock Analysis

Analyze stocks and cryptocurrencies using Yahoo Finance data. Supports portfolio management (create, add, remove assets), crypto analysis (Top 20 by market cap), and periodic performance reports (daily/weekly/monthly/quarterly/yearly). 8 analysis dimensions for stocks, 3 for crypto. Use for stock analysis, portfolio tracking, earnings reactions, or crypto monitoring.

6511 votes

Telegram Compose

Compose rich, readable Telegram messages using HTML formatting via direct Telegram API. Use when: (1) Sending any Telegram message beyond a simple one-line reply, (2) Creating structured messages with sections, lists, or status updates, (3) Need formatting unavailable via Clawdbot's Markdown conversion (underline, spoilers, expandable blockquotes, user mentions by ID), (4) Sending alerts, reports, summaries, or notifications to Telegram, (5) Want professional, scannable message formatting wit...

6511 votes
View all in business →