Уральский мастер-камнерез Данила мечтает создать малахитовую чашу невиданной красоты, воплотить в камне прелесть живого цветка.
В деревне празднуют помолвку Данилы и Катерины. Появляется незваный гость – барский приказчик Северьян: он требует заказанную Даниле малахитовую чашу. Неудовлетворенный своей работой мастер отказывается ее отдать. Взбешенный неповиновением приказчик замахивается плеткой, но между ним и Данилой встает Катерина. Забыв о чаше, Северьян пытается обнять приглянувшуюся ему девушку.
Все расходятся. Данила остается наедине со своими думами. От старых мастеров он знает: тайной камня владеет Хозяйка Медной горы, хранительница подземных сокровищ, и пока Данила не проникнет в эту тайну, не будет ему покоя. Являясь Даниле то ящерицей, то «малахитовой девкой», Хозяйка Медной горы заводит его в свое царство, и камни оживают перед глазами мастера: переливаясь огнями, сверкают самоцветы, распускается каменный цветок – мечта Данилы.
Хозяйка Медной горы открывает перед Данилой все новые и новые секреты своих владений. Она полюбила талантливого творца и не хочет расставаться с ним. Чтобы удержать гостя навсегда, Хозяйка решает сделать его своим горным мастером.
Тем временем Катерина тоскует в ожидании суженого, которого нет уже несколько дней. Северьян издевается над ней – «ни невеста, ни замужница», и пытается силой добиться ее любви. Катерина прогоняет приказчика и решает идти на поиски Данилы.
Разыскивая любимого, Катерина попадает на ярмарку и вновь сталкивается с Северьяном и его обережными, кутящими среди цыган. Приказчик пытается увести Катерину с собой, но народ заступается за нее. Катерина убегает, а перед Северьяном возникает незнакомка, которая пристально на него смотрит. Под ее взглядом Северьян не может оторвать ног от земли. Собрав все свои силы, приказчик срывается с места и бежит за незнакомкой, а она манит его за собой все дальше и дальше. Лишь оказавшись на Змеиной горке, Северьян понимает, что перед ним Хозяйка Медной горы. Он молит ее о пощаде, но она непреклонна – Северьян проваливается под землю.
На Змеиную горку приводят поиски и Катерину: сердце подсказывает ей, что Данила где-то близко. Она зовет его. На зов откликается Хозяйка. Девушка бросается к ней и молит вернуть суженого. Любовь, верность и бесстрашие девушки трогают Хозяйку – она отпускает Данилу. Катерина и Данила возвращаются к людям.