Madama Butterfly is a tragic opera in three acts by the Italian composer Giacomo Puccini (see Puccini, Giacomo). It uses a libretto (text) in Italian by Giuseppe Giacosa and Luigi Illica, based on the American play Madame Butterfly by David Belasco, from a story by John Luther Long. Long's story was apparently partly based on real events. The opera received its first performance in a two-act version at La Scala, Milan, Italy, on Feb. 17, 1904. The three-act version was first given in Brescia, Italy, on May 28, 1904.