Skip to main content
Glama
roclee2692

email-firewall

by roclee2692

Email Triage Agent

Deterministic email triage for Hermes Agent. It classifies messages into P0–P3 or REVIEW, emits the shared pif.event.v1 contract, and lets Hermes deliver the result through its existing Feishu gateway.

确定性的 Hermes 邮件分诊 MCP:不确定就保留,V1 永不删除、永不发信,飞书凭证继续由 Hermes 管理。

Why / 设计理念

  • Reduce information, do not create more of it.

  • P0 is immediate; P1 waits for a digest; P2/P3 are audit-only.

  • Sender-auth conflicts and low confidence become REVIEW/HOLD.

  • Human feedback updates an external JSONL rule trail, never model weights.

  • The optional adapter connects to real mailboxes with read-only IMAP. It never executes Delete, Send, Move, or Seen changes.

Related MCP server: lilith-gmail

Local run

npm ci
npm test
npm run demo

Real mailbox adapter commands:

node src/adapter-cli.js test --account qq-main
node src/adapter-cli.js poll --accounts qq-main

Credentials are references to macOS Keychain items or environment variables; literal passwords and tokens are rejected by config validation. See the read-only mailbox adapter guide.

One-off classification:

node src/cli.js --json '{"sender":"no-reply@accounts.google.com","subject":"New login detected","auth":{"spf":"pass","dkim":"pass","dmarc":"pass"},"protectedSender":true}'

Add to Hermes on macOS

Hermes discovers stdio MCP tools from ~/.hermes/config.yaml. Clone and install, then use an absolute path:

git clone https://github.com/roclee2692/email-triage-agent.git ~/Projects/email-triage-agent
cd ~/Projects/email-triage-agent && npm ci
hermes mcp add email-firewall --command node --args "$HOME/Projects/email-triage-agent/src/mcp.js"
hermes mcp test email-firewall

Hermes registers tools with names such as mcp_email_firewall_triage_email. The server never needs Feishu secrets: Hermes already owns the Feishu channel and presents or schedules the returned message.

Tools

  • triage_email

  • render_feishu_email

  • record_email_feedback

  • get_email_policy

  • poll_email_accounts

  • test_email_account

  • acknowledge_email_events

The companion repository is crypto-market-sentinel. Both return the same event envelope, so one Hermes prompt can apply the same urgent/digest/audit policy.

See Hermes macOS setup and the shared PIF event contract.

License

MIT. See LICENSE.

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    One-pass agentic inbox triage as an MCP server: fetch unread Gmail → classify (action_needed/fyi/newsletter/noise) → summarize → extract tasks → draft replies as Gmail DRAFTS (never sends) → flag calendar → write a triage report. Four stdio tools (fetch_emails, save_gmail_draft, append_tasks, write_report); the host is the LLM, so it runs keyless in Claude Code. Gmail scopes: readonly + compose
    4
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables AI-powered Gmail triage: fetches unread emails, classifies them, drafts replies for important ones, and sends only after user approval via conversational review. Exposes tools for checking unread emails and submitting review feedback from Claude Desktop or any MCP client.

View all related MCP servers

Related MCP Connectors

  • Authenticated email gateway for AI agents — per-agent inboxes, HITL approval, SPF/DKIM verified.

  • Authenticated email gateway for AI agents — per-agent inboxes, HITL approval, SPF/DKIM verified.

  • Email OS for agents - real-inbox search, triage, commitments, and a verifiable BEC hard-stop.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/roclee2692/email-triage-agent'

If you have feedback or need assistance with the MCP directory API, please join our Discord server