email-mcp: Cursor rule for Windsurf

.windsurfrules

windsurfrules is a cursor rule for Windsurf from sandraschi/email-mcp. It costs 629 tokens per session, scanned A, a copy of cursorrules, MIT.

A set of rules for an email connection that can send, receive, search, and manage messages through common mail services and local test servers. It also describes checking inbox activity and handling messages at the end of a task.

In plain words
What is it for?
Use it to inspect recent mail, search or manage messages, send requested emails, and mark relevant messages as read or starred.
Why use it?
It gives an agent a consistent process for checking and completing email work instead of leaving messages or status updates unhandled.

Cursor rule for Windsurf

Written for Windsurf: a Windsurf rule. Also seen: mentions AGENTS.md.

This is sandraschi/email-mcp's own configuration. It tells Windsurf how to work on email-mcp itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything email-mcp configures →

Reuse

Borrowing it

Nothing to install: this file belongs to sandraschi/email-mcp. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/sandraschi/email-mcp/master/.windsurfrules
Clone the repo
git clone --depth 1 https://github.com/sandraschi/email-mcp

Made for: Windsurf.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for windsurfrules

README.md
[![agentmods](https://agentmods.dev/badge/rules/sandraschi/email-mcp/windsurfrules/github.svg)](https://agentmods.dev/rules/sandraschi/email-mcp/windsurfrules)
Your own site
<a href="https://agentmods.dev/rules/sandraschi/email-mcp/windsurfrules"><img src="https://agentmods.dev/badge/rules/sandraschi/email-mcp/windsurfrules/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for windsurfrules

Your own site · 80×15
<a href="https://agentmods.dev/rules/sandraschi/email-mcp/windsurfrules"><img src="https://agentmods.dev/badge/rules/sandraschi/email-mcp/windsurfrules.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 629 This file is loaded in full into every session.
When invoked 629 The same file — it is already loaded in full.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin 100% copy Near-identical to another mod in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00629 $0.00629
Opus 5.5 $0.00252 $0.00252
Sonnet 5.5 $0.00126 $0.00126
Haiku 4.5 $0.00063 $0.00063

Measured 23d ago against content hash 40d2c21f1ffd, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

windsurfrules scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 23d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

This is a copy

100% identical to cursorrules — 0 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

.windsurfrules · 46 lines

How it starts

The opening of the file, as written. The whole thing — 46 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Session Context (Email MCP)

You have access to an email server with 32+ tools for sending, receiving, searching, and managing email across SMTP/IMAP, SendGrid, Mailgun, Resend, and local test servers.

Before starting work:

  1. Check connected services: list_services() or email_status()
  2. Check recent inbox activity: check_inbox(service="default", unread_only=True, limit=10)

At end of work:

  • Send any drafted emails the user requested
  • Mark relevant messages as read/starred
  • Use mailing_list_latest() to stay current on subscribed newsletters

Fleet context — required reading

Before any task in this fleet, read mcp-central-docs/standards/AGENT_READING_ORDER.md. It carries the AGENTS.md chain, the 13-file Primary Read List, the domain read list, the pitfalls docs and the bug depot. There are 124 files under standards/; that file is the index that makes them usable.

Search mcp-central-docs/troubleshooting/BUGS_DEPOT.md by symptom before debugging anything — a bug the fleet has already paid for is a lookup, not an investigation.

These few are repeated here rather than linked, because a rule whose violation produces no error cannot depend on anyone following a link:

  • Never author multi-line file content with a Bash heredoc (cat > file <<'EOF') — it intermittently writes nothing on this Windows/Git-Bash setup. Use the Write tool. (BUG-031)
  • Never patch files with inline Python (python - <<'PY', python -c) — Python's string parser silently converts backslash escapes, so "D:\Dev\repos\x" becomes D: + \D + ev + CR + epos + CR + x. One observed case deleted dict entries while staying valid Python with a clean lint. Use Edit and Write. (BUG-039)
  • Never hardcode a port. Claim one with mcp-central-docs/fleet-gate/claim_ports.py, which checks operations/WEBAPP_PORTS.md and every fleet-start.config.ps1.
  • Max 5 files per commit and per script invocation; 3+ file edits need a timestamped .bak per file written first.
  • Never restart an NSSM service by killing its child — sc.exe stop/start, then verify a NEW PID owns the port.
  • Never invent a date or location; read the clock or write UNKNOWN-DATE.
  • Prove changes by running them. A gate that reports success having examined nothing is this fleet's most common failure mode.

Read the full file on GitHub · 46 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 23d ago Changed · +33 lines · +501 tokens per session 40d2c21f1ffd
  2. 2mo ago First seen · 13 lines · 128 tokens per session scan A 766d6bd641ec

Subscribe to this mod's changes

windsurfrules is a cursor rule published in the GitHub repository sandraschi/email-mcp (4 stars, last pushed 6d ago), licensed MIT. It adds 629 tokens to every session, about $0.0025 per session on Opus 5.5. A static security scan graded it A with 0 findings. It is 100% identical to cursorrules, differing in 0 lines, and is treated as a copy.

Related

windsurfrules compared with cursor rules from other repositories

windsurfrules next to 6 cursor rules from other repositories
ModTypeStarsLast pushLicenceScanTokensWorks with
windsurfrulessandraschi/email-mcpCursor rule46d agoMITA629Windsurf
e2e-testingelie222/inbox-zeroCursor rule13kyesterdaynoneA0Cursor
knowledgeelie222/inbox-zeroCursor rule13kyesterdaynoneA0Cursor
reactDataCovey/nornweaveCursor rule3010d agoApache-2.0A0Cursor
mode-transition-optimizationalkoleft/mcp-bsl-platform-contextCursor rule2078mo agoMITA0Cursor
ponytailDietrichGebert/ponytailCursor rule185k8d agoMITA604Cursor
angular-20angular/angularCursor rule101kyesterdayMITA0Cursor