Dashboard MCP#

Panel zarządzania serwerem MCP dostępny jest w menu bocznym vCLU > MCP.

Status#

Karta statusu pokazuje bieżące metryki serwera:

  • Total Requests - łączna liczba żądań od uruchomienia
  • Errors - liczba błędów (nieautoryzowane, readonly, nieznane urządzenia)
  • In-flight - aktywne sesje w danym momencie
  • Status - badge Enabled / Disabled

Konfiguracja#

Włączanie / wyłączanie#

Checkbox Enable MCP Server włącza i wyłącza serwer w runtime - bez restartu vCLU. Gdy wyłączony, endpoint /mcp zwraca 503 Service Unavailable.

Boty MCP#

Każdy klient AI (Claude, Codex, Gemini) to osobny bot z własnym kluczem API i profilami dostępu.

Tworzenie bota#

  1. Add Bot - podaj nazwę (np. “Claude Code”)
  2. Przypisz profile dostępu - jakie obiekty bot widzi i steruje
  3. Klucz API wyświetla się jednorazowo - skopiuj go od razu

Zarządzanie#

  • Edit - zmień nazwę lub przypisane profile
  • Regenerate key - wygeneruj nowy klucz (stary przestaje działać natychmiast)
  • Delete - usuń bota (klucz natychmiast traci ważność)

Klucz jest wyświetlany jednorazowo. Jeśli go nie skopiujesz, musisz zregenerować.

Connection Guide#

Trzy zakładki z gotową konfiguracją do skopiowania:

Claude Code#

{
  "mcpServers": {
    "vclu": {
      "type": "http",
      "url": "http://<vclu-adres>/mcp",
      "headers": {
        "Authorization": "Bearer <klucz-api>"
      }
    }
  }
}

Codex CLI#

[mcp_servers.vclu]
url = "http://<vclu-adres>/mcp"
bearer_token_env_var = "VCLU_MCP_KEY"

Gemini CLI#

{
  "mcpServers": {
    "vclu": {
      "httpUrl": "http://<vclu-adres>/mcp",
      "headers": {
        "Authorization": "Bearer <klucz-api>"
      }
    }
  }
}

URL w konfiguracji jest automatycznie uzupełniany adresem bieżącej instancji vCLU.

Activity Log#

Tabela z ostatnimi 50 wywołaniami narzędzi MCP:

KolumnaOpis
TimeData i godzina wywołania
ToolNazwa narzędzia (vclu_devices, vclu_device_set, …)
PathŚcieżka urządzenia (jeśli dotyczy)
StatusOK (zielony) / ERR (czerwony)
LatencyCzas wykonania w milisekundach
Remote IPAdres IP klienta AI

Lista odświeża się automatycznie co 10 sekund. Przycisk Refresh wymusza natychmiastowe odświeżenie.

Latency Distribution#

Histogram rozkładu czasów odpowiedzi:

BucketZakres
< 10msBardzo szybkie (odczyty z cache)
< 50msTypowe odczyty
< 100msTypowe sterowanie
< 500msWolniejsze operacje
< 1sTimeout-graniczne
> 1sProblematyczne - warto zbadać

Większość operacji powinna mieścić się w przedziale < 100ms.

REST API dashboardu#

Dashboard korzysta z endpointów REST, które można też odpytywać bezpośrednio:

EndpointMetodaOpis
/api/mcp/statusGETStan serwera, liczniki
/api/mcp/savePOSTWłącz/wyłącz MCP {enabled: true/false}
/api/mcp/statsGETMetryki: requesty, błędy, sesje, latency buckets
/api/mcp/activityGETOstatnie wywołania ?limit=50
/api/mcp/botsGETLista botów
/api/mcp/botsPOSTUtwórz bota
/api/mcp/bots/:idPUTEdytuj bota (nazwa, profile)
/api/mcp/bots/:idDELETEUsuń bota
/api/mcp/bots/:id/regeneratePOSTRegeneruj klucz API bota