Skip to main content

Email Validator MCP

An MCP server for checking email syntax and DNS mail routes without sending a message. Optional SMTP probing provides a recipient acceptance signal; it does not prove ownership or guarantee delivery.

Install a published release

Requires uv:

uvx --python 3.13 mcp-email-validator@0.2.0

Published versions are listed on PyPI. If the version is not available yet, use the GitHub command below. Publishing is managed through GitHub Actions.

Run from GitHub without cloning

Requires uv and Git. uv downloads the selected package and manages Python 3.13 and its dependencies:

uvx --python 3.13 --from "git+https://github.com/jayanth-mkv/agent-mcp-registry.git@main#subdirectory=mcp-email-validator" mcp-email-validator

Only this MCP and its runtime dependencies are installed. uv fetches the repository internally; you do not need a local checkout. To pin the source, replace main with a release tag or full commit SHA.

Install from source

From this directory, with Python 3.13+ and uv:

uv sync --locked --no-dev
uv run --locked --no-dev mcp-email-validator

The default transport is stdio. Configure your MCP client using the repository example. No API key is required; DNS checks need network access.

For Streamable HTTP:

uv run --locked --no-dev mcp-email-validator --transport http --host 127.0.0.1 --port 8003

Endpoint: http://127.0.0.1:8003/mcp. Legacy SSE is available with --transport sse at /sse. HTTP and SSE have no authentication; keep them on loopback unless protected separately.

Tools

Tool Required argument Optional arguments
validate_email address: string check_smtp=false, timeout_seconds=10
validate_email_batch addresses: string[] (up to 50) check_smtp=false, timeout_seconds=10

Both tools check conventional unquoted mailbox syntax and normalize the domain, then look up MX records. Domains without MX records may use A/AAAA fallback; a null MX means the domain does not accept mail. Invalid syntax skips DNS and SMTP.

Example tool arguments:

{ "address": "user@example.com", "check_smtp": false }

Results contain normalized_address, syntax_valid, mail_route_status, mail_hosts, smtp_status, and explanatory notes.

Field Possible values
mail_route_status not_checked, found, fallback, not_found, lookup_error
smtp_status not_requested, accepted, rejected, unavailable, error

SMTP boundaries

SMTP probing is disabled unless check_smtp=true. It tries at most three mail hosts, connects to one public IP per host on port 25, and uses SMTP greeting, sender, and recipient commands. It never sends DATA or authenticates. DNS lookups and socket operations use a timeout clamped to 1–15 seconds; this is not a total request deadline, and batches run sequentially.

Use probing only for infrastructure and addresses you are authorized to assess. Catch-all domains, greylisting, sender policy, and anti-abuse controls can produce misleading results. Private and loopback IP addresses are not contacted. Address data is not written to an application database; DNS queries and optional SMTP probes are visible to the contacted infrastructure.

Development

uv sync --locked
uv run --locked pytest -q
uv build

Tests mock DNS/SMTP network operations and exercise the installed stdio server. Live recipient acceptance and delivery are separate checks.

Version 0.2.0. Licensed under the MIT License.

Metadata

Release files for mcp-email-validator 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mcp-email-validator 0.2.0
File Size Uploaded Provenance Actions
mcp_email_validator-0.2.0.tar.gz 7.2 kB With provenance Details for mcp_email_validator-0.2.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for mcp-email-validator 0.2.0
File Interpreter ABI Platform Actions
mcp_email_validator-0.2.0-py3-none-any.whl Python 3 none any Details for mcp_email_validator-0.2.0-py3-none-any.whl

Total release size: 16.5 kB

Release files / mcp_email_validator-0.2.0.tar.gz

Download URL mcp_email_validator-0.2.0.tar.gz
Size 7.2 kB
Tags Source
SHA-256 checksum
How to use checksums
162fe8c6aad701de2a9fe6b1f6e2428e6829e71d03ff2b81be0ec28f547e4dc3
BLAKE2b-256 checksum
How to use checksums
f36f72314736847e53a11ec1e7fc4067f41065824fba99f224f3031247a6d9be
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.

Transparency log

Release files / mcp_email_validator-0.2.0-py3-none-any.whl

Download URL mcp_email_validator-0.2.0-py3-none-any.whl
Size 9.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
34c6f13b20a6045413b3140ef01a8a0371506eae86b5a9c28de186a3a074c11a
BLAKE2b-256 checksum
How to use checksums
4a7c29e785aa59449c1680b50ee85dfff233c8ccd0059fbbefe2e9adacf5e14a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.

Transparency log

Security for mcp-email-validator 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for mcp_email_validator-0.2.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page