Skip to main content
Glama
cv3inx

guerrillamail-mcp

by cv3inx

guerrillamail-mcp

npm version npm downloads license Node

MCP server for the Guerrilla Mail temporary/disposable email API. Spin up throwaway inboxes, poll for mail, and read messages from any MCP client — Claude Desktop, Claude Code, Cursor, or any other.

Zero config. No API key. One command.

npx -y guerrillamail-mcp

Why

Need a throwaway email inside an AI workflow — signup testing, OTP capture, scratch inbox — without leaving the agent? This wires Guerrilla Mail's disposable inboxes straight into the Model Context Protocol so your agent can create an address, watch for mail, and read it, all on its own.

Related MCP server: protonmail-mcp-server

Install & usage

Run directly with npx — no install needed:

npx -y guerrillamail-mcp

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "guerrillamail": {
      "command": "npx",
      "args": ["-y", "guerrillamail-mcp"]
    }
  }
}

Claude Code CLI

claude mcp add guerrillamail -- npx -y guerrillamail-mcp

Tools

Tool

Description

Inputs

get_email_address

Get a new disposable address and start a session.

lang (optional, default "en")

set_email_user

Set the local part of the address for the session.

email_user (required)

check_inbox

Check the inbox; poll only newer mail with seq.

seq (optional, default "0")

fetch_email

Fetch the full body of one email (HTML stripped).

email_id (required)

delete_emails

Delete one or more emails.

email_ids (required, string[])

forget_me

Forget the session and clear local state.

none

Notes

  • Session state (sid_token + PHPSESSID cookie) is held in memory for the life of the process.

  • No API key required. Uses the public Guerrilla Mail AJAX endpoint.

License

MIT

Available Tools

6 tools
check_inboxA

Check the inbox. Pass seq to poll only emails newer than that id.

ParametersJSON Schema
NameRequiredDescriptionDefault
seqNoSequence id to poll from (default '0').

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; description states read operation ('Check the inbox') and polling mechanism, but lacks details on return format, pagination, or side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no fluff, action first, then clarification. Efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema; description lacks return format or integration hints. Adequate for a simple poll but could be more complete given sibling tools like fetch_email.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 100% coverage with one parameter. Description adds meaning: 'Pass seq to poll only emails newer than that id', which clarifies purpose beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clear verb+resource: 'Check the inbox'. Distinguishes from siblings like fetch_email by implying listing vs. fetching, but not explicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implies polling behavior with seq parameter, but no explicit when-to-use or alternatives compared to siblings like fetch_email.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_emailsB

Delete one or more emails by id.

ParametersJSON Schema
NameRequiredDescriptionDefault
email_idsYesList of email ids to delete.

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; description only states deletion without mentioning permanence, undo, or required permissions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence front-loaded with key action and scope; no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Lacks details on permanence, side effects, and return value; falls short for a deletion tool without annotations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the description adds no extra meaning beyond the schema's parameter description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool deletes emails by ID, distinguishing it from siblings like fetch_email and check_inbox.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool vs alternatives or prerequisites like needing email IDs.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

fetch_emailB

Fetch the full body of a single email by id.

ParametersJSON Schema
NameRequiredDescriptionDefault
email_idYesThe email id to fetch.

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It only states the action without disclosing side effects, error behavior, permissions, or size limits. Minimal transparency beyond the basic operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence with no redundant words. Ideal conciseness for a simple retrieval tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool is simple with one parameter. Description is adequate but could mention return format or error handling. No output schema, but not required for minimal context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with a clear parameter description. The description adds no new meaning beyond 'by id'. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'fetch', the resource 'full body of a single email', and the unique parameter 'by id'. It differentiates from sibling tools like check_inbox (list) and delete_emails (delete).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like check_inbox for listing emails. No mention of prerequisites or exclusion criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

forget_meA

Forget the current session and clear local session state.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears full responsibility. It states it clears local session state, which indicates a destructive action. However, it does not detail side effects (e.g., whether it impacts other services or requires re-authentication). The transparency is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no wasted words. It is front-loaded and efficient, conveying the essential information immediately.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no parameters, no output schema, and low complexity, the description is fully adequate. It explains the tool's purpose without leaving gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, and schema description coverage is 100%. The description does not need to add parameter information. It adds value by explaining the tool's effect. Baseline for 0 parameters is 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action ('Forget the current session and clear local session state') using a specific verb and resource. It distinguishes itself from sibling email tools (check_inbox, delete_emails, etc.) which focus on email operations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is used when needing to clear session state, but there are no explicit guidelines on when to use it versus alternative tools, nor any when-not-to-use guidance. The sibling tools are all email-related, so differentiation is clear by domain, but usage context is not elaborated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_email_addressB

Get a new disposable Guerrilla Mail address and start a session.

ParametersJSON Schema
NameRequiredDescriptionDefault
langNoLanguage code (default 'en').

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, description must disclose behavioral traits. It states it 'starts a session' but does not explain side effects (e.g., whether it invalidates an existing session, requires authentication, or has rate limits). Lack of detail on destructive or read-only nature.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence with no filler words. Front-loaded with key action and outcome. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has 1 optional param, no output schema, and no annotations. Description omits critical context: what does 'start a session' mean? Can multiple sessions coexist? What is returned? Given complexity, description is incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and already describes the 'lang' parameter. Description adds no extra meaning beyond 'Language code (default 'en')'. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description uses specific verb 'Get' and resource 'disposable Guerrilla Mail address' with outcome 'start a session'. Clearly differentiates from sibling tools like check_inbox, delete_emails, or forget_me which operate on existing emails or sessions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. Does not mention prerequisites (e.g., whether a prior session exists) or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_email_userA

Set the local part of the email address for the current session.

ParametersJSON Schema
NameRequiredDescriptionDefault
email_userYesDesired local part (before the @).

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description must carry the burden of transparency. It mentions 'for the current session,' hinting at session-scoped persistence, but does not disclose whether the operation is idempotent, requires authentication, or has side effects on existing email data.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with no redundant words. It is appropriately front-loaded and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple single-parameter tool, the description gives the core purpose and scope (session). However, it lacks any context on how this relates to sibling tools (e.g., whether 'get_email_address' will reflect this change) or what happens after setting. No output schema is provided, so the description should at least hint at the result or side effects.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the description adds minimal extra meaning beyond the parameter's own description ('Desired local part (before the @)'). The tool description restates 'local part' but does not provide new semantic details like format constraints or examples.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the specific verb 'Set' and clearly identifies the resource as 'the local part of the email address for the current session.' It effectively distinguishes from sibling tools like 'check_inbox' and 'get_email_address' which handle different aspects of email.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is used to configure the email local part for the session but provides no explicit guidance on when to use it versus alternatives, nor does it mention prerequisites or exclusions. Usage is implied but lacks clarity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 6 tool updatesv1.0.2
    • First observedcheck_inbox
    • First observeddelete_emails
    • First observedfetch_email
    • First observedforget_me
    • First observedget_email_address
    • First observedset_email_user

TDQS

A3.9/5.0
Disambiguation5/5

Each tool has a distinct purpose: checking inbox, deleting emails, fetching full emails, clearing session, getting an address, and setting user. No overlap or ambiguity.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern in snake_case (e.g., check_inbox, delete_emails, fetch_email). No mixing of styles.

Tool Count5/5

6 tools is well-scoped for a disposable email service. It covers core operations without being too few or too many.

Completeness5/5

The set covers the full lifecycle: address acquisition, inbox polling, email retrieval, deletion, and session management. No critical gaps for the domain.

Maintenance

ActivityStale
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    MCP server for disposable email — create inboxes, receive emails, and extract OTP codes. Let your AI agent sign up for services, wait for verification emails, and extract codes autonomously.
    7
    61
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    A minimal MCP server for reading, searching, managing, and sending email over IMAP and SMTP.
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Disposable email for humans and AI agents. Enables AI agents to create mailboxes and receive verification emails through an MCP server.
    33
    MIT

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/cv3inx/guerrillamail-mcp'

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