Message Transfer Agent (MTA)

Last Edited



Definition of Message Transfer Agent (MTA) in the Network Encyclopedia.

What is Message Transfer Agent (MTA)?

Message Transfer Agent, also known as MTA, is one of the four core components of Microsoft Exchange Server. The Message Transfer Agent (MTA) routes messages between servers, sites, and foreign mail systems.

The MTA is responsible only for delivering messages from one Exchange server to a different server. It is not responsible for delivering messages between users whose mailboxes are located on the same Exchange server.

MTA - Message Transfer Agent)
MTA – Message Transfer Agent)

An MTA works in the background, while the user usually interacts directly with a mail user agent. One may distinguish initial submission as first passing through an MSA – port 587 is used for communication between an MUA and an MSA, while port 25 is used for communication between MTAs, or from an MSA to an MTA

Transfer versus access

A relay or filtering server will typically store email only briefly, but other systems keep full mailboxes for email – in which case they usually support some means for end users to access their email via a Mail User Agent (MUA), or email client.

Common protocols for this are:

Submission of new email from a mail client is via SMTP, typically on port 587 or 465, and is now generally restricted to servers the user has an account with-such as their Internet Service Provider. This is for policy, not technical, reasons so that providers have some means of holding their users accountable for the generation of spam and other forms of email abuse.

The term “message transfer agent”

The term “message transfer agent” is also used more generally to describe any mail system software that can move messages from one message store location to another. For example, the External program for the legacy Microsoft Mail version 3 could move messages from one Microsoft Mail postoffice to another. MTAs also form a core component of any X.400 messaging system.


MTACHECK is a command-line troubleshooting utility included with Microsoft Exchange Server (available in Exchange 5.5/2000). You can use mtacheck to check data stored by the Message Transfer Agent (MTA) in data (.dat) files.

These data files are related to problems with connectors that involve unprocessed messages. If mtacheck finds any problems, it tries to fix them. In a typical scenario, when an object in the MTA is damaged and blocks the messaging queue, mtacheck finds the object and removes it, placing it in a file so that you can examine it later.

You can also use mtacheck to try to restart the MTA if it stops and you can’t start it using the Services utility in Control Panel.

The MTACHECK command takes the following optional switches:

Mtacheck.exe /v /f Mtacheck.log /rd /rp /rl
/v Log verbose details
/f Log to a file. The filename follows this switch after a space.
/rd Remove directory replication messages
/rp Remove public folder replication messages
/rl Remove link monitor messages

You should run the Mtacheck command at least twice until you see the message: Database clean, no errors detected.

External references: