---
title: "Serwer MCP Nodea — endpoint, uwierzytelnianie, discovery OAuth, narzędzia | Nodea"
description: "Serwer MCP Nodea: endpoint /mcp (JSON-RPC 2.0), token Passport ze scope'em mcp:use, discovery OAuth i DCR dla Claude, ~110 narzędzi w modułach oraz adnotacje read-only/destructive."
url: "https://nodea.pl/pl/dokumentacja-api/mcp"
lang: "pl"
updated: "2026-07-16"
---

# Serwer MCP Nodea — endpoint, uwierzytelnianie, discovery OAuth, narzędzia | Nodea

> Serwer MCP Nodea pozwala asystentom AI, takim jak Claude, zarządzać monitoringiem, alertami i infrastrukturą. Poznaj endpoint /mcp, uwierzytelnianie, discovery OAuth, narzędzia i potwierdzenia akcji.

Nodea udostępnia serwer **MCP** (Model Context Protocol) — standardowy interfejs, przez który asystenci AI (np. Claude) i inne narzędzia MCP łączą się z Twoim kontem i wykonują akcje: sprawdzają status monitoringu, tworzą monitory, zarządzają alertami, serwerami, DNS-em czy hostingiem. Pod spodem MCP korzysta z tego samego uwierzytelniania i tych samych [scope'ów](https://nodea.pl/pl/dokumentacja-api) co REST API v1 — narzędzie dostaje dokładnie tyle uprawnień, ile ma token.

Ten wpis opisuje endpoint MCP, uwierzytelnianie, discovery OAuth dla klientów takich jak Claude, sposób, w jaki narzędzia respektują scope'y i polityki, listę modułów oraz adnotacje bezpieczeństwa. Jeśli dopiero zaczynasz, zacznij od [wprowadzenia do API](https://nodea.pl/pl/dokumentacja-api/overview).

## Endpoint

Serwer MCP działa pod jednym adresem, w transporcie **Streamable HTTP** (JSON-RPC 2.0 po HTTP POST):

POST https://app.nodea.io/mcp

Klient MCP wysyła tam żądania JSON-RPC 2.0 (initialize, tools/list, tools/call itd.). Endpoint jest chroniony tym samym guardem Passport co API v1, więc każde żądanie musi nieść ważny token Bearer.

## Uwierzytelnianie

MCP używa tego samego **Personal Access Tokenu** co REST API — generujesz go w panelu w sekcji Tokeny API (/app/account/api-tokens) i dołączasz w nagłówku:

Authorization: Bearer 1|AbCdEf0123456789...

Aby połączyć się z transportem MCP, token musi mieć scope mcp:use. **Ważne:** mcp:use daje wyłącznie dostęp do transportu — sam nie odblokowuje żadnych danych. Każde narzędzie dodatkowo wymaga właściwego scope'a modułowego (np. monitoring:read, żeby wylistować strony). Token z samym mcp:use połączy się z serwerem, ale każda próba użycia narzędzia bez odpowiedniego scope'a zostanie odrzucona.

## Discovery OAuth dla klientów AI (Claude)

Klienci tacy jak Claude nie wymagają ręcznego wklejania tokenu — potrafią **same się onboardować** przez OAuth. Serwer publikuje metadane discovery zgodne z RFC 9728 / RFC 8414:

- GET /.well-known/oauth-protected-resource — metadane chronionego zasobu (wskazuje serwer autoryzacji).
- GET /.well-known/oauth-authorization-server — metadane serwera autoryzacji (endpointy authorize/token).

Gdy niezalogowany klient trafi na /mcp, dostaje 401 z nagłówkiem WWW-Authenticate: Bearer … resource\_metadata="…", który kieruje go do dokumentu discovery — dzięki temu klient wie, gdzie się autoryzować.

Nowi klienci rejestrują się przez **Dynamic Client Registration** (RFC 7591):

POST https://app.nodea.io/oauth/register

Rejestracja tworzy publicznego klienta OAuth typu authorization-code z PKCE. Dozwolone są tylko zaufane adresy przekierowań (callbacki oficjalnych konektorów Claude — https://claude.ai i https://claude.com); endpoint rejestracji jest ograniczony limitem zapytań, żeby zapobiec spamowaniu rejestracji. Po autoryzacji klient otrzymuje token, który — dla dostępu do danych — musi nieść odpowiednie scope'y modułowe obok mcp:use.

## Jak narzędzia respektują scope'y i polityki

Każde narzędzie MCP przed wykonaniem akcji sprawdza scope, polityki i — dla zasobów handlowych — uprawnienia konta:

1. **Scope tokenu** — narzędzie odczytujące monitoring wymaga monitoring:read, tworzące/edytujące — monitoring:write, usuwające — monitoring:delete. Brak scope'a = odmowa (bez wykonania akcji).
2. **Polityki własności (Policies)** — dokładnie te same, co w panelu i REST API. Narzędzie widzi i modyfikuje wyłącznie zasoby należące do właściciela tokenu (a zasoby handlowe — do bieżącego konta klienta); cudzych zasobów nie dotknie, nawet z poprawnym scope'em.
3. **Uprawnienia konta klienta** — narzędzia zgłoszeń, rozliczeń, domen, DNS, hostingu i serwerów z VM wymagają dodatkowo uprawnienia członka w bieżącym koncie (patrz niżej).

Dodatkowo obowiązują te same flagi funkcji (Pennant) co w panelu — jeśli moduł jest wyłączony dla Twojego konta, powiązane narzędzia są niedostępne.

## Konta klientów

Zasoby handlowe (zgłoszenia, rozliczenia, domeny, DNS, hosting, serwery z maszyną wirtualną) należą do **kont klientów**. Każda sesja MCP działa w **jednym bieżącym koncie**, ustalanym tak samo jak w REST API: konto, do którego przypięty jest token → nagłówek X-Account-Id **połączenia MCP** (ustaw go w konfiguracji klienta obok Authorization) → konto domyślne użytkownika → jedyne członkostwo. Odpowiedzi HTTP niosą nagłówek X-Account-Id z bieżącym kontem.

- Narzędzie whoami zwraca m.in. default\_account\_id, account (bieżące konto lub null) i accounts\[\]; narzędzie accounts-list (scope account:read) wypisuje konta, w których token może działać.
- Dostęp = scope tokenu **ORAZ** uprawnienie członka w koncie (tickets, invoices, domains/managedomains, products/manageproducts); właściciel ma wszystkie. Terminacja hostingu i usunięcie serwera z VM są tylko dla właściciela.
- Niepoprawne konto jest odrzucane już na poziomie połączenia: HTTP 403 z JSON {message, code} i kodem account\_forbidden lub account\_mismatch.
- Odmowy w narzędziach wracają z isError: true i sufiksem: (code: account\_permission\_denied, permission: \<flaga\>), (code: account\_owner\_required), (code: no\_account\_context), (code: termination\_locked), (code: managed\_by\_whmcs) (usunięcie serwera, którego VM zarządza WHMCS), (code: already\_terminated), (code: service\_suspended) (start/reboot VM usługi zawieszonej w WHMCS lub serwera zawieszonego przez administratora), (code: vm\_migrating) (start/stop/reboot VM lub usunięcie serwera, gdy administrator przenosi VM na inny węzeł). Zasób spoza bieżącego konta zwraca komunikat „… not found or not accessible with your permissions.”.

Pełny opis — z tabelą uprawnień per grupa narzędzi — znajdziesz we wpisie [Konta klientów — API v1 i MCP](https://nodea.pl/pl/dokumentacja-api/accounts).

## Moduły narzędzi

Serwer MCP wystawia około **110 narzędzi**, pogrupowanych w moduły odpowiadające obszarom panelu:

- **Monitoring** — websites, heartbeats, reports, status-pages.
- **Alerting** — integrations, notification-groups, escalation-policies, shares.
- **Infrastruktura** — servers, ssh-keys, dns, vault-devices, ssl-certificates (ssl-certificates-list, ssl-certificate-get — certyfikaty SSL, tylko odczyt).
- **Konto** — accounts (accounts-list), profile, tickets, billing (faktury Nodea albo — dla kont rozliczanych w WHMCS — lustro proform; każdy wiersz ma pole source: nodea|whmcs; konta w nowych rozliczeniach mają też billing-proformas i billing-payments; darmowe kredyty — billing-credits, tylko odczyt), services (service-upgrade-options, service-upgrade — zmiana planu tylko na wyższy), domains, hosting, migrations, work-log (work-log-summary, work-log-entries — czas pracy administratorów, tylko odczyt).

Każde narzędzie niesie własny opis i schemat argumentów, które klient MCP odczytuje przez tools/list. Mapowanie na scope'y jest identyczne jak w REST API: moduł monitoringu → grupa monitoring, alertów → alerting, infrastruktury → infra, konta → account.

## Adnotacje: read-only i destructive

Narzędzia są oznaczone adnotacjami, żeby klient (i człowiek zatwierdzający) wiedział, co dana akcja robi:

- **read-only** — narzędzie tylko odczytuje dane (listy, szczegóły, statusy). Bezpieczne do wywołania bez dodatkowego potwierdzenia.
- **destructive** — narzędzie wykonuje akcję nieodwracalną (usunięcie monitora, zatrzymanie VM, terminacja hostingu, przywrócenie backupu). Takie narzędzia **wymagają jawnego potwierdzenia**: argument confirm: true. Bez niego wywołanie zostaje odrzucone z czytelnym komunikatem — dzięki temu asystent nie skasuje zasobu „przy okazji", bez świadomej zgody. Przywrócenie kopii hostingu (hosting-backup-restore) wymaga ponadto potwierdzenia e-mailem: narzędzie zwraca status: "pending\_confirmation", a przywrócenie rusza dopiero po kliknięciu linku przez właściciela konta klienta (szczegóły we wpisie [Hosting](https://nodea.pl/pl/dokumentacja-api/hosting)).

## Jak podłączyć Claude

W Claude dodajesz konektor MCP, wskazując URL serwera:

https://app.nodea.io/mcp

Claude sam wykryje discovery OAuth (/.well-known/oauth-protected-resource), przeprowadzi rejestrację klienta i flow autoryzacji, a Ty w oknie zgody zatwierdzisz zakres uprawnień. Po połączeniu Claude widzi listę narzędzi (tools/list) i może wykonywać akcje w granicach przyznanych scope'ów — z zachowaniem potwierdzenia confirm: true dla akcji nieodwracalnych. Alternatywnie możesz podać gotowy Personal Access Token (z mcp:use plus potrzebnymi scope'ami modułowymi), jeśli klient obsługuje ręczne wklejenie tokenu Bearer.

### Jaki jest endpoint serwera MCP?

Serwer MCP działa pod adresem https://app.nodea.io/mcp w transporcie Streamable HTTP (JSON-RPC 2.0 po HTTP POST). Chroni go ten sam guard Passport co API v1.

### Jak uwierzytelnić się w MCP?

Tym samym Personal Access Tokenem co w REST API, dołączonym w nagłówku Authorization: Bearer. Token musi mieć scope mcp:use, żeby połączyć się z transportem.

### Czy scope mcp:use wystarcza do wszystkiego?

Nie. mcp:use daje tylko dostęp do transportu. Każde narzędzie dodatkowo wymaga właściwego scope'a modułowego (np. monitoring:read), a dane widzi tylko w granicach polityk własności (Policies).

### Jak podłączyć Claude do MCP Nodea?

W Claude dodajesz konektor MCP, wskazując URL https://app.nodea.io/mcp. Claude sam wykryje discovery OAuth (/.well-known/oauth-protected-resource), zarejestruje klienta (Dynamic Client Registration) i przeprowadzi autoryzację, w której zatwierdzasz zakres uprawnień.

### Ile narzędzi ma serwer MCP?

Około 110 narzędzi w modułach odpowiadających panelowi: monitoring (websites, heartbeats, reports, status-pages), alerting, infrastruktura (servers, ssh-keys, dns, vault-devices) i konto (profile, tickets, billing, domains, hosting, migrations).

### Jak MCP chroni przed przypadkowym usunięciem zasobu?

Narzędzia niszczące są oznaczone jako destructive i wymagają jawnego argumentu confirm: true. Bez niego wywołanie zostaje odrzucone, więc asystent nie skasuje zasobu bez świadomego potwierdzenia.

## Powiązane

- [API Nodea v1 — wprowadzenie: base URL, tokeny, scope'y, limity | Nodea](https://nodea.pl/pl/dokumentacja-api/overview)
- [Konta klientów — API v1 i MCP | Dokumentacja Nodea](https://nodea.pl/pl/dokumentacja-api/accounts)

---

Wersje językowe: [en](https://nodea.io/en/api-docs/mcp.md)  
Spis treści witryny: [llms.txt](https://nodea.pl/pl/llms.txt)
