Nata a Laviano (Perugia) nel 1247, diciottenne va a convivere con un giovane nobile di Montepulciano, che non la sposa neppure quando nasce un figlio, e che muore assassinato nove anni dopo. Allontanata dai parenti dell’uomo e dalla propria famiglia trova accoglienza a Cortona.
Lavora come infermiera per le partorienti, educa il figlio, che si farà poi francescano, e si dedica agli ammalati poveri. Prende con sé alcune volontarie che si chiameranno «Poverelle», promuove l’assistenza gratuita a domicilio, si fa aiutare da famiglie importanti e nel 1278 fonda l’ospedale della Misericordia.
A Cortona spesso la gente va da lei, nella cella presso la Rocca dove risiede dal 1288: chiede il suo intervento nelle contese cittadine e nelle lotte con altre città.
Nel 1289 Margherita è tra coloro che danno vita alla Confraternita delle Laudi. Morì a Cortona nel 1297.