diff --git a/depends.txt b/depends.txt
index 671375a..5861976 100644
--- a/depends.txt
+++ b/depends.txt
@@ -1,3 +1,3 @@
-default
+mcl_player
 wordedit?
 intllib?
diff --git a/init.lua b/init.lua
index d20dcec..199319e 100644
--- a/init.lua
+++ b/init.lua
@@ -6,6 +6,10 @@ end
 
 dofile(minetest.get_modpath(minetest.get_current_modname()).."/api.lua")
 
+default = {}
+default.player_attached = mcl_player.player_attached
+default.player_set_animation = mcl_player.player_set_animation
+
 local ctrl_groups = {choppy=2, oddly_breakable_by_hand=2}
 local has_worldedit = minetest.global_exists("worldedit")
 local is_singleplayer = minetest.is_singleplayer()
@@ -58,6 +62,14 @@ local function has_privilege(name)
 	return minetest.check_player_privs(name, {meshnode=true})
 end
 
+local function get_hotbar_bg(x,y)
+	local out = ""
+	for i=0,7,1 do
+		out = out .."image["..x+i..","..y..";1,1;gui_hb_bg.png]"
+	end
+	return out
+end
+
 local function show_meshnode_formspec(pos, player)
 	local name = player:get_player_name()
 	if not has_privilege(name) then
@@ -69,10 +81,10 @@ local function show_meshnode_formspec(pos, player)
 	local entity = meshnode.get_luaentity(id)
 	local spos = pos.x..","..pos.y..","..pos.z
 	local formspec = "size[8,8]"..
-		default.gui_bg..
-		default.gui_bg_img..
-		default.gui_slots..
-		default.get_hotbar_bg(0,4)..
+		""..
+		""..
+		""..
+		get_hotbar_bg(0,4)..
 		"list[current_player;main;0,4;8,1;]"..
 		"list[current_player;main;0,5.25;8,3;8]"..
 		"list[nodemeta:"..spos..";tool;0.5,1.5;1,1;]"
@@ -356,6 +368,9 @@ minetest.register_node("meshnode:controller", {
 		show_meshnode_formspec(pos, clicker)
 	end,
 	allow_metadata_inventory_put = function(pos, listname, index, stack, player)
+		if stack:get_name() ~= "meshnode:glue" then
+			return 0
+		end
 		local meta = stack:get_metadata()
 		if meta then
 			if vector.equals(minetest.string_to_pos(meta), pos) then
@@ -474,7 +489,7 @@ minetest.register_on_player_receive_fields(function(player, formname, fields)
 			meshnode.restore_all(entity)
 			entity.nodes = {}
 		elseif fields.attach and entity.player == nil then
-			player:set_attach(entity.object, "", {x=0, y=15, z=0}, {x=0, y=0, z=0})
+			player:set_attach(entity.object, "", {x=0, y=5, z=0}, {x=0, y=0, z=0})  -- stand on top of node
 			entity.player = player
 			entity.object:set_animation({x=0, y=0}, 15)
 			default.player_attached[name] = true
