diff --git a/proto/extensions/manager_service.proto b/proto/extensions/manager_service.proto
index a85bde685fc633051564d36dcace24088a683e1f..6f4f6751adaa10e0b760a212d08119d18980c9a5 100644
--- a/proto/extensions/manager_service.proto
+++ b/proto/extensions/manager_service.proto
@@ -50,23 +50,33 @@ service ExtensionManagerService {
   rpc UnregisterExtensions(UnregisterExtensionsRequest) returns (UnregisterExtensionsResponse) {}
 
   // Получить список зарегистрированных сервисов
-  rpc ListExtensions(ListExtensionsRequest) returns (ListExtensionsResponse) {} // Получить список сервисов
+  rpc ListRegisteredExtensions(ListRegisteredExtensionsRequest) returns (ListRegisteredExtensionsResponse) {} // Получить список сервисов
 
-  // GetInstalledExtensions - получить статус расширения
-  rpc GetInstalledExtensions(GetInstalledExtensionsRequest) returns (GetInstalledExtensionsResponse) {} // Получить описание сервиса
+  // ListExtensions - получить статус расширения
+  rpc ListExtensions(ListExtensionsRequest) returns (ListExtensionsResponse) {} // Получить описание сервиса
 }
 
-// GetInstalledExtensionsRequest - запрос на получение статуса расширений в пространстве и окружении.
+// ListExtensionsRequest - запрос на получение статуса расширений в пространстве и окружении.
 // Если список расширений в запросе не передан, возвращаются все установленные расширения
-message GetInstalledExtensionsRequest {
-  repeated string extensions = 1; // Имя расширения
+//
+// Использование флагов `installed`/`uninstalled`:
+// - если в ListExtensionsRequest.extensions передан список расширений, то флаги игнорируются
+//   и возвращается информация о переданных в запросе расширениях
+// - `installed:false, uninstalled:false` (равноценно `installed:true, uninstalled:false`) -
+//   возвращается информация об установленных расширениях
+// - `installed:false, uninstalled:true` - вернуть только зарегистрированные, но не установленные расширения
+// - `installed:true, uninstalled:true` - вернуть информацию о всех зарегистрированных расширениях
+message ListExtensionsRequest {
+  repeated string extensions = 1; // Имя расширения (опционально), regexp
   string space_id = 2; // Пространство имен расширения
   string env_id = 3; // Идентификатор окружения
+  bool installed = 4; // Вернуть установленные расширения (по умолчанию)
+  bool uninstalled = 5; // Вернуть неустановленные расширения
 }
 
 // GetExtensionResponse - описание расширения
-message GetInstalledExtensionsResponse {
-  message Status {
+message ListExtensionsResponse {
+  message ExtensionInfo {
     string extension = 10100; // Имя расширения
     string title = 10110;
     State state = 10120;
@@ -78,7 +88,7 @@ message GetInstalledExtensionsResponse {
     string installed_version = 10510; // Установленная версия расширения
     string available_version = 10520; // Доступная версия расширения
   }
-  repeated Status status = 1;
+  repeated ExtensionInfo extensions = 1;
 }
 
 // ExtensionDescriptor описание расширения (возвращается сервисом при регистрации)
@@ -111,11 +121,11 @@ message ListExtensionsFilter {
 //  repeated string action = 2; // Список действий обрабатываемых сервисами. Список может содержать регулярные выражения.
 }
 
-message ListExtensionsRequest {
+message ListRegisteredExtensionsRequest {
   ListExtensionsFilter filter = 1;
 }
 
-message ListExtensionsResponse {
+message ListRegisteredExtensionsResponse {
   repeated ExtensionDescriptor extensions = 1;
 }