DOKK / manpages / debian 12 / maildir-utils / mu-server.1.en
MU-SERVER(1) General Commands Manual MU-SERVER(1)

mu_server - the mu backend for the mu4e e-mail client

mu server [options]

mu server starts a simple shell in which one can query and manipulate the mu database. The output uses s-expressions. mu server is not meant for use by humans, except for debugging purposes. Instead, it is designed specifically for the mu4e e-mail client.

In this man-page, we document the commands mu server accepts, as well as their responses. In general, the commands sent to the server are s-expressions of the form:


(<command-name> :param1 value1 :param2 value2)

For example, to view a certain message, the command would be:


(view :docid 12345)

Parameters can be sent in any order; they must be of the correct type though. See lib/utils/mu-sexp-parser.hh and lib/utils/mu-sexp-parser.cc in source-tree for the details.

mu server accepts a number of commands, and delivers its results in the form:


\376<length>\377<s-expr>

\376 (one byte 0xfe), followed by the length of the s-expression expressed as an hexadecimal number, followed by another \377 (one byte 0xff), followed by the actual s-expression.

By prefixing the expression with its length, it can be processed more efficiently. The \376 and \377 were chosen since they never occur in valid UTF-8 (in which the s-expressions are encoded).

Dirk-Jan C. Binnema <djcb@djcbsoftware.nl>

mu(1)

January 2020 User Manuals