From IMFreedom Wiki

This page is a draft, an attempt to document the MSN protocol used by the MSN Messenger and Windows Live Messenger products from Microsoft.


The protocol behind the MSN products is called MSNP and is implemented in multiple versions. The latest version is MSNP18 used in Windows Live Messenger 2009 Beta (14.0.5027).

In this document, we will try to document this protocol as much as possible, using multiple sources and reverse engineering made so far on this protocol.

MSNP Versions

Since October 13th 2003, The Microsoft servers will only accept versions of the protocol equal to or newer than MSNP8.

For a history on the MSNP protocol version, read this page :

The latest protocol version of MSNP uses multiple subprotocols for doing different tasks. Mainly, it heavily depends on SOAP for most of its transactions. It also depends on SIP and other proprietary protocols, like MSNP2P.


  1. Protocol basics
  2. Login
  3. Notification server
    1. Challenges
  4. SOAP
    1. Authentication
    2. Contact List Management
    3. Offline Messaging
    4. Roaming
    5. Spaces
  5. Switchboard server
  6. P2P Protocol
    1. TLP
    2. SLP
    3. Transport requests
    4. Msnobj based transfers
      1. MSNObject Description
    5. File transfers
  7. Audio/video
    1. Audio Video conference
    2. Video Call
    3. Webcam
    4. Computer call
    5. Voice clips
  8. Other features
    1. HTTP Method
    2. Ping
    3. Hotmail
    4. Privacy options
    5. Notifications
    6. Multiple Points of Presence
  9. Reference

Useful Links