anonsec-mcp-server
Provides anonymous email management through Firefox Relay, enabling sending, receiving, and OTP extraction while maintaining privacy and security.
README
<p align="center"> <picture> <source media="(prefers-color-scheme: dark)" srcset="assets/anonsec-header.svg"> <img alt="AnonSec MCP Server - Anonymous Email Management Header" src="assets/anonsec-header.svg" width="100%"> </picture> </p>
<h1 align="left">Firefox Relay MCP Server - Anonymous Email Management</h1> <p align="left"> <a href="https://scorecard.dev/viewer/?uri=github.com/VRIL-LABS/anonsec-mcp-server"><img alt="OpenSSF Scorecard" src="https://api.scorecard.dev/projects/github.com/VRIL-LABS/anonsec-mcp-server/badge"></a> </p> <p align="left"> <strong>Production-Ready MCP Server for Firefox Relay Anonymous Email Operations</strong> </p>
<sub>// crafted for the security community — funding keeps it maintained</sub>
Overview
Firefox Relay MCP Server (anonsec-mcp-server) is a production-grade Model Context Protocol server that provides comprehensive anonymous email management capabilities through Firefox Relay addresses. Built with privacy, security, and operational excellence as core principles, this server enables AI agents and applications to send, receive, and process emails while maintaining complete anonymity.
Core Value Proposition
- Privacy-First: All email operations maintain sender anonymity through Firefox Relay infrastructure
- PQC-Ready: Post-Quantum Cryptography ready encryption architecture for data at rest
- Production-Grade: Built with golden-standard programming practices for reliability and security
- MCP Native: Full Model Context Protocol 2.0 compliance with tools and resources
Quick Start
Prerequisites
- Node.js >= 18.0.0
- npm or yarn
- Firefox Relay account and API access
Installation
# Clone the repository
git clone https://github.com/VRIL-LABS/anonsec-mcp-server.git
cd anonsec-mcp-server
# Install dependencies
npm install
# Build the project
npm run build
# Start the server
npm run dev
Configuration
Create a .env file with your Firefox Relay credentials:
FIREFOX_RELAY_API_KEY=your_api_key_here
ENCRYPTION_KEY=your_32_byte_hex_key_here
DATABASE_PATH=./data/anonsec.sqlite
PORT=3000
The encryption key must be exactly 32 bytes (64 hex characters). Generate one with:
node -e "console.log(require('crypto').randomBytes(32).toString('hex'))"
Capabilities
Email Management
- List new/unread emails from Firefox Relay addresses
- Read full email content with decryption
- Retrieve all emails with filtering
- Get latest email from any relay address
OTP Handling
- Extract OTP codes from emails
- Validate OTP format and confidence
- Check OTP expiration
- Re-extract OTP from email body
Email Sending
- Send anonymous emails through relay addresses
- Support for plain text and HTML content
- Custom headers and metadata
- OTP email simulation
Project Structure
.
├── src/
│ ├── index.ts # Server entry point and configuration
│ ├── api/
│ │ └── index.ts # Firefox Relay API client
│ ├── config/
│ │ └── index.ts # Configuration management
│ ├── db/
│ │ └── index.ts # SQLite database service
│ ├── tools/
│ │ ├── all_emails.ts
│ │ ├── latest_email.ts
│ │ ├── latest_email_otp.ts
│ │ ├── new_emails.ts
│ │ ├── read_emails.ts
│ │ └── send_anon_email.ts
│ ├── types/
│ │ └── index.ts # Type definitions
│ └── utils/
│ ├── crypto.ts # Encryption utilities
│ └── otp.ts # OTP extraction utilities
├── package.json
├── tsconfig.json
├── LICENSE
└── README.md
Tools
The server provides 6 MCP tools:
- new_emails - Retrieve new/unread emails
- read_emails - Read full email content
- all_emails - List all emails with filtering
- latest_email - Get the latest email
- latest_email_otp - Extract OTP from latest email
- send_anon_email - Send anonymous emails
Resources
urn:anonsec:relay/addresses- Firefox Relay address managementurn:anonsec:email/collection- Email collection accessurn:anonsec:otp/emails- OTP emails collectionurn:anonsec:server/info- Server informationurn:anonsec:audit/logs- Audit logsurn:anonsec:email/{emailId}- Individual email access
Security Features
- AES-256-GCM Encryption for data at rest
- Immutable audit logs for all operations
- Request ID tracking for traceability
- Security validation for sensitive operations
- OTP code masking in responses (never exposed)
- Sensitive data redaction in audit logs
Architecture
The server follows a clean, production-ready architecture:
- MCP Server Layer - Server initialization, tool registration, request handling
- Tools Layer - Individual tool implementations
- Core Services Layer - Database, API client, configuration, types, utilities
- Data Layer - SQLite database with PQC-ready encryption
Contributing
Contributions are welcome! See CONTRIBUTING.md for guidelines.
Security
See SECURITY.md for vulnerability reporting and security practices.
License
This project is licensed under the MIT License - see LICENSE for details.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.