TOML skapades av Tom Preston-Werner, en av grundarna till GitHub, med avsikten att skapa ett enkelt konfigurationsspråk som skulle ha alla funktioner som behövdes för att konfigurera stora applikationer, men utan oönskad komplexitet. Syftet med TOML är att vara enkelt att läsa och skriva för människor, samtidigt som det enkelt kan parsas av maskiner.
TOML använder enkla dataformer som listor, tabeller och värden som är klart definierade. Dess syntax är mycket lik INI-konfigurationsfiler, men med extra funktioner och typer. Varje TOML-dokument består av en eller flera nyckel-värdepar, organiserade i tabeller. Värdena kan vara grundläggande datatyper som strängar, heltal, flyttal, Booleans och datum/tid. TOML är starkt typat, vilket betyder att varje värde har en bestämd typ och inte automatiskt kan omvandlas till en annan typ.
Till skillnad från JSON och YAML, ger TOML upphov till mycket läsbar konfigurationsdata. Det ger också stöd för komplexa datastrukturer, inklusive djupt nästlade data. TOML har breda användningsområden inom modern mjukvaruutveckling, från att konfigurera webbservrar och databaser, till att hantera applikationsinställningar och miljövariabler.