PHPackages                             librarymarket/msadiag - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Testing &amp; Quality](/categories/testing)
4. /
5. librarymarket/msadiag

ActiveProject[Testing &amp; Quality](/categories/testing)

librarymarket/msadiag
=====================

The Message Submission Agent Diagnostics tool (msadiag) facilitates testing the compatibility of third party message submission agents.

2.0.0(7mo ago)11.5kMITPHPPHP &gt;=8.4CI passing

Since May 13Pushed 7mo ago2 watchersCompare

[ Source](https://github.com/librarymarket/msadiag)[ Packagist](https://packagist.org/packages/librarymarket/msadiag)[ Docs](https://github.com/librarymarket/msadiag)[ RSS](/packages/librarymarket-msadiag/feed)WikiDiscussions 2.1.x Synced 4w ago

READMEChangelogDependencies (4)Versions (19)Used By (0)

msadiag
=======

[](#msadiag)

[![PHPStan](https://github.com/librarymarket/msadiag/workflows/PHPStan/badge.svg)](https://github.com/librarymarket/msadiag/workflows/PHPStan/badge.svg)[![Maintainability](https://camo.githubusercontent.com/10e5a64e98285873f98ada7ed70e43b443671ea30214f044e7884ba11ff6008c/68747470733a2f2f6170692e636f6465636c696d6174652e636f6d2f76312f6261646765732f30633161623936653134633339393932313936632f6d61696e7461696e6162696c697479)](https://codeclimate.com/github/librarymarket/msadiag/maintainability)

The Message Submission Agent Diagnostics tool (msadiag) facilitates testing the compatibility of third party message submission agents.

This tool implements several tests via SMTP to ensure the target MSA is properly and securely configured. The following tests are ran with `msadiag validate`:

- The server must not allow authentication via plain-text connection (only with `--strict`).
- The server must support a modern TLS encryption protocol (TLSv1.2 or TLSv1.3).
- The server must use a valid certificate, verifiable using the Mozilla CA bundle.
- The server must support the SMTP AUTH extension.
- The server must support SASL authentication via CRAM-MD5, LOGIN, or PLAIN.
- The server must require authentication to submit messages.
- The server must reject invalid credentials.
- The server must not require authentication to submit messages after successful authentication.

Installation
------------

[](#installation)

To install this package using Composer, run the following command.

```
composer global require librarymarket/msadiag
```

`~/.config/composer/vendor/bin` must be in `PATH` to use the `msadiag` command.

Usage
-----

[](#usage)

Run `msadiag` for a command listing, or `msadiag COMMAND --help` for usage information about a specific command.

License
=======

[](#license)

This project is subject to the terms of The MIT License. Please refer to `LICENSE.txt` for more information, or visit the following URL to get a copy of the license:

###  Health Score

46

—

FairBetter than 93% of packages

Maintenance69

Regular maintenance activity

Popularity18

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity74

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~69 days

Recently: every ~93 days

Total

19

Last Release

211d ago

Major Versions

1.3.x-dev → 2.0.02025-10-09

PHP version history (2 changes)1.0.0-alpha1PHP &gt;=8.1

2.0.0PHP &gt;=8.4

### Community

Maintainers

![](https://www.gravatar.com/avatar/23ac013c9e01441cfb5d67ed6cacc41a7d155f24f41bec16eb04ac10f8423d9f?d=identicon)[clayfreeman](/maintainers/clayfreeman)

![](https://www.gravatar.com/avatar/c0588512a8c579e4c6af0bc9a32b1651cd5477ce032b744bc54fc4ff85c5e314?d=identicon)[jeremylibrarymarket](/maintainers/jeremylibrarymarket)

---

Top Contributors

[![clayfreeman](https://avatars.githubusercontent.com/u/182658?v=4)](https://github.com/clayfreeman "clayfreeman (114 commits)")

---

Tags

messagetestmailtoolAgentsmtpdiagnosticssubmissionesmtp

###  Code Quality

Static AnalysisPHPStan

Type Coverage Yes

### Embed Badge

![Health badge](/badges/librarymarket-msadiag/health.svg)

```
[![Health](https://phpackages.com/badges/librarymarket-msadiag/health.svg)](https://phpackages.com/packages/librarymarket-msadiag)
```

###  Alternatives

[vimeo/psalm

A static analysis tool for finding errors in PHP applications

5.8k77.5M6.7k](/packages/vimeo-psalm)[behat/behat

Scenario-oriented BDD framework for PHP

4.0k96.8M1.9k](/packages/behat-behat)[infection/infection

Infection is a Mutation Testing framework for PHP. The mutation adequacy score can be used to measure the effectiveness of a test set in terms of its ability to detect faults.

2.2k26.2M1.8k](/packages/infection-infection)[maglnet/composer-require-checker

CLI tool to analyze composer dependencies and verify that no unknown symbols are used in the sources of a package

99810.9M670](/packages/maglnet-composer-require-checker)[php-coveralls/php-coveralls

PHP client library for Coveralls API

51413.7M3.4k](/packages/php-coveralls-php-coveralls)[laminas/laminas-diagnostics

A set of components for performing diagnostic tests in PHP applications

836.9M14](/packages/laminas-laminas-diagnostics)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
