Skip to content
A client library for MPD, the Music Player Daemon
Haskell Shell TeX
Find file
Pull request Compare This branch is 83 commits behind vimus:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

libmpd-haskell: a client library for MPD


libmpd-haskell is a client library for MPD written in Haskell that aims to provide a safe and flexible yet consistent and intuitive interface to MPD's external API.


  • Latest release
  • git clone git://


The preferred method of building libmpd-haskell is using cabal-install, which takes care of dependency resolution and other minutiae.

To install libmpd-haskell, simply run:

cd libmpd-haskell && cabal install

Running tests

To run the libmpd testsuite, do:

cabal configure --enable-tests && cabal build && cabal test

Compiler support

We try to support the two last major versions of GHC, but only the latest version (provided by the haskell-platform) is actually tested for.

MPD API compliance

We try to comply with the latest version of the MPD protocol specification; any deviation from this is a bug.


With GHCi:

> :set -XOverloadedStrings
> import Network.MPD
> withMPD $ lsInfo ""
Right [LsDirectory "Tool", LsDirectory "Tom Waits",...]
> withMPD $ add "Tom Waits/Big Time"
Right ["Tom Waits/Big Time/01 - 16 Shells from a Thirty-Ought-Six.mp3",...]


Getting started

Create the clone thus:

git clone git:// master

To pull in new changes from upstream, use:

git pull origin master

To set up GIT hooks, see hooks/README in the source distribution.

Submitting patches

To submit a patch, use git format-patch and email the resulting file(s) to one of the developers or upload it to the bug tracker.

Alternatively you can create your own fork of the repository and send a pull request.

Well-formatted patches are appreciated. New features should have a test case.

Submitting bug reports

See our bug tracker. Test cases are highly appreciated.



libmpd-haskell is distributed under the MIT license.

Contributors (in order of appearance)

Ben Sinclair <>

Joachim Fasting <>

gwern0 <>

Daniel Schoepe <>

Andrzej Rybczak <>

Simon Hengel <>

Daniel Wagner <>

Niklas Haas <>

Something went wrong with that request. Please try again.