diff --git a/modules/cellframe-sdk/net/src/wrapping_dap_app_cli_server.c b/modules/cellframe-sdk/net/src/wrapping_dap_app_cli_server.c
index b98191cd5750cd4af5263a810a79330dd4926376..d8ebafb661d3a09412b6e0f156abf55619f5db83 100644
--- a/modules/cellframe-sdk/net/src/wrapping_dap_app_cli_server.c
+++ b/modules/cellframe-sdk/net/src/wrapping_dap_app_cli_server.c
@@ -100,6 +100,7 @@ void element_py_func_del_all(){
 }
 
 static int wrapping_cmdfunc(int argc, char **argv, char **str_reply){
+    PyGILState_STATE state = PyGILState_Ensure();
     size_t id_str_replay = elements_str_reply_add(str_reply);
     PyObject *obj_argv = stringToPyList(argc, argv);
     PyObject *obj_id_str_replay = PyLong_FromSize_t(id_str_replay);
@@ -114,6 +115,7 @@ static int wrapping_cmdfunc(int argc, char **argv, char **str_reply){
     Py_XDECREF(arglist);
     Py_XDECREF(obj_argv);
     elements_str_reply_delete(id_str_replay);
+    PyGILState_Release(state);
     return 0;
 }