Authenticatie
De axe MCP Server ondersteunt twee authenticatiemethoden. Beiden zijn beschikbaar voor alle gebruikers — kies degene die het beste bij uw workflow past:
- API-sleutel — een langlevende sleutel die gegenereerd is in het axe Account Portal. Het eenvoudigst om op te zetten.
- OAuth 2.0 — browser-gebaseerde login via de
@deque/axe-authCLI, met tokens die zijn opgeslagen in de sleutelhanger van je besturingssysteem en automatisch worden vernieuwd.
Je configureert de gekozen referentie in je client setup-gids. Elke setuppagina toont zowel de API-sleutel- als de OAuth-configuraties naast elkaar.
Stel ofwel AXE_API_KEY of AXE_ACCESS_TOKEN in — niet beide. De server zal bij het opstarten falen als beide variabelen zijn ingesteld.
API-sleutel
- Log in op de axe Accountportaal
- Navigeer naar de API-sleutels pagina
- Klik op NIEUWE API-SLEUTEL TOEVOEGEN
- Selecteer axe MCP Server als het product
- Voer een beschrijvende naam voor uw API-sleutel in
- Klik op Opslaan
- Kopieer de gegenereerde API-sleutel — je geeft deze door aan de server als de
AXE_API_KEY-omgevingsvariabele
OAuth 2.0
OAuth 2.0 maakt gebruik van de Autorisatiecode Flow met PKCE en slaat tokens veilig op in uw OS-sleutelhanger, zodat u één keer authenticeert en de CLI de tokenvernieuwing automatisch uitvoert.
Authenticatie wordt beheerd door @deque/axe-auth, een zelfstandige CLI die je apart op je hostmachine installeert.
Vereisten
- Node.js 22.13.0 of nieuwer, wat
@deque/axe-authvereist (de npm-distributie van de server zelf heeft 22.19.0 of nieuwer nodig) - Jouw gekozen axe MCP Server-distributie geïnstalleerd — zie Een Distributie Kiezen
Stap 1: Authenticeren
Voer het login-commando uit:
npx @deque/axe-auth loginDe CLI zal:
- Uw standaardbrowser openen naar de loginpagina
- U vragen zich aan te melden met uw axe Account-inloggegevens
- De resulterende tokens veilig opslaan in uw systeemsleutelhanger
Uw besturingssysteem kan u vragen toegang tot de sleutelhanger te verlenen de eerste keer dat tokens worden opgeslagen.
Wanneer voltooid, bevestigt de terminal:
✓ Authenticated.Je hoeft login slechts één keer per machine uit te voeren. Bij volgende oproepen vernieuwt npx @deque/axe-auth token je toegangstoken stilzwijgend met behulp van het opgeslagen vernieuwings-token.
Private cloud, niet-VS regio's, of lokale installaties
Als je organisatie een privécloud of een lokale axe-instantie gebruikt, geef dan de URL van je instantie door met --server (of stel de AXE_SERVER_URL-omgevingsvariabele in):
npx @deque/axe-auth login --server https://your-axe-instance.example.comStap 2: Uw cliënt configureren
Gebruik @deque/axe-auth token in je MCP-clientconfiguratie om een geldig toegangstoken in te voeren telkens wanneer de server start. Kies je client voor specifieke installatie-instructies:
Elke installatiepagina bevat een OAuth-configuratiesectie naast de API-sleutelinstructies.
Sessies beheren
Token levensduur
OAuth-toegangstokens hebben een korte levensduur. Een configuratie die een token met @deque/axe-auth token injecteert, vangt het slechts één keer op, bij het opstarten van de server — dus een agent-sessie die langer duurt dan de levensduur van het token, zal authenticatiefouten gaan teruggeven.
Er zijn twee manieren om dit probleem aan te pakken:
- Aanbevolen — draai de server onder
@deque/axe-auth run, wat ervoor zorgt dat het token automatisch voor de gehele sessie vers blijft. - Anders — herstart de MCP-serververbinding in uw client. De configuratie voert
@deque/axe-auth tokenopnieuw uit bij elke serverstart, wat een vers token ophaalt.
Een lange sessie in leven houden
@deque/axe-auth run start en superviseert de axe MCP Server, waarbij het toegangstoken wordt vernieuwd voordat het verloopt — zodat een sessie die uren duurt nooit het einde van het token bereikt, zonder herstart of handmatige stap.
Wijs uw MCP-client naar run als de serveropdracht in plaats van naar de server zelf, en geef de startopdracht door na --. Het beheert de levensduur van het serverproces zoals elke andere stdio-server.
npm-distributie:
{
"command": "npx",
"args": ["-y", "@deque/axe-auth", "run", "--", "npx", "axe-mcp-server"],
"env": {
"AXE_TOKEN_REFRESH_PORT": "9223"
}
}Docker-distributie — publiceer de vernieuwingspoort op host-loopback, stuur de auth-variabelen door naar de container en verbind de luisteraar aan 0.0.0.0 erin:
{
"command": "npx",
"args": [
"-y",
"@deque/axe-auth",
"run",
"--",
"docker",
"run",
"-i",
"--rm",
"-p",
"127.0.0.1:9223:9223",
"-e",
"AXE_ACCESS_TOKEN",
"-e",
"AXE_TOKEN_REFRESH_PORT",
"-e",
"AXE_TOKEN_REFRESH_SECRET",
"-e",
"AXE_TOKEN_REFRESH_HOST=0.0.0.0",
"dequesystems/axe-mcp-server:latest"
],
"env": {
"AXE_TOKEN_REFRESH_PORT": "9223"
}
}AXE_TOKEN_REFRESH_HOST=0.0.0.0 is vereist onder Docker. Een gepubliceerde poort stuurt door naar de netwerkinterface van de container, niet naar zijn loopback, dus de standaard loopback-bind zou onbereikbaar zijn. Publiceren als 127.0.0.1:9223:9223 houdt het eindpunt van de externe interfaces van uw host af, en het gedeelde geheim — niet de containerisolatie — is datgene wat het eindpunt zelf beschermt.
Uw vernieuwings-token verlaat nooit uw machine. Alleen kortdurende toegangstokens worden naar de server gestuurd, via een loopback-verbinding geauthenticeerd door een gedeeld geheim dat run genereert voor de sessie. Dit is dezelfde isolatie-eigenschap die zorgt dat het vernieuwings-token buiten de container blijft.
Zie Token vernieuwen variabelen voor de server-side omgevingsvariabelen die betrokken zijn.
Uitloggen
Om uw tokens aan de serverkant in te trekken en ze uit de systeemsleutelhanger te verwijderen:
npx @deque/axe-auth logoutAls intrekking aan de serverzijde mislukt (bijvoorbeeld door een netwerkfout), worden lokale tokens nog steeds gewist en wordt een waarschuwing afgedrukt.
Opnieuw authenticeren
Als je vernieuwings-token is verlopen of is ingetrokken, beëindigt @deque/axe-auth token met code 1 en stuurt het je aan om opnieuw in te loggen. Voer npx @deque/axe-auth login opnieuw uit. Geef --force door om de bevestigingsprompt voor herauthenticatie over te slaan:
npx @deque/axe-auth login --forceOpdrachtreferentie
login
Opent een browser, voltooit de OAuth 2.0 Authorization Code + PKCE-procedure en slaat tokens op in de OS-sleutelhanger.
npx @deque/axe-auth login [options]| Vlag | Beschrijving |
|---|---|
--server <url> |
Basis-URL van je axe-instantie. Standaard ingesteld op https://axe.deque.com. Alleen vereist voor privéclouds, niet-VS-regio's, of lokale installaties. |
--force |
Sla herauthenticatiebevestiging over wanneer al ingelogd. |
--allow-insecure-issuer |
Sta niet-loopback http-URL's toe (standaard is alleen https toegestaan; loopback http is altijd toegestaan). Geldt alleen voor login; token en logout gebruiken het beleid dat bij login is vastgelegd. |
--no-allow-insecure-issuer |
Forceer allowInsecureIssuer=false voor de nieuwe login (en de vermelding die het vasthoudt). Wederzijds exclusief met --allow-insecure-issuer. token en logout negeren deze vlag. |
token
Drukt een momenteel geldig toegangstoken af naar stdout. Vernieuwt stilzwijgend als het opgeslagen token is verlopen. Beëindigt met code 1 als niet geauthenticeerd.
npx @deque/axe-auth tokenlogout
Trekt het opgeslagen vernieuwingtokens aan de serverzijde in en wist het lokale sleutelhangeritem.
npx @deque/axe-auth logoutrun
Start en superviseert de axe MCP Server, houdt zijn toegangstoken vers voor de duur van de sessie. Configureer het als de serveropdracht van uw MCP-client in plaats van het handmatig aan te roepen. Zie Een lange sessie in leven houden.
npx @deque/axe-auth run [options] -- <server launch command>| Vlag | Beschrijving |
|---|---|
--port <port> |
Loopback-poort gebruikt om vernieuwde tokens naar de server te sturen. Equivalent aan AXE_TOKEN_REFRESH_PORT. Optioneel onder npm: zonder eentje kiest run een vrije poort voor de sessie. Vereist wanneer de omhulde opdracht een container runtime is (docker, podman, of nerdctl), die alleen een door u gepubliceerde poort kan bereiken — run weigert die zonder een vastgezette poort. |
--secret <secret> |
Gedeeld geheim dat elke push authenticiteit geeft. Equivalent aan AXE_TOKEN_REFRESH_SECRET. Automatisch gegenereerd tenzij u een waarde vastzet. |
Werkt met zowel de npm- als Docker-distributies, op macOS, Windows en Linux.
--help
Toont hulpinformatie voor @deque/axe-auth en zijn commando's.
npx @deque/axe-auth --help
npx @deque/axe-auth <command> --helpPlatformondersteuning
| Platform | Tokenopslag |
|---|---|
| macOS | macOS-sleutelhanger |
| Windows | Windows Credential Manager |
| Linux | D-Bus Secret Service (GNOME Keyring, KWallet, enz.) |
Linux: @deque/axe-auth vereist een werkende D-Bus Secret Service. Omgevingen zonder GUI of minimale desktopomgevingen hebben er mogelijk geen beschikbaar. Als je een foutmelding ziet zoals:
System keychain load failed: <details>. On Linux this usually means no D-Bus Secret Service is running (e.g. GNOME Keyring or KWallet).vraag dan uw systeembeheerder om GNOME Keyring of een compatibele Secret Service-provider te configureren.
Probleemoplossing met OAuth
Browser opent niet automatisch
Als login geen browser kan openen, drukt het de autorisatie-URL af naar de terminal. Kopieer de URL en open deze handmatig om de authenticatie te voltooien.
Token verloopt tijdens lange sessies
Draai de server onder @deque/axe-auth run, wat het token voor u ververst en het probleem volledig oplost. Zonder dit, herstart de MCP-serververbinding in uw client om een vers token te verkrijgen. Zie Token levensduur hierboven.
„Niet geauthenticeerd“ fout van token
Je sessie is verlopen of tokens zijn gewist. Voer npx @deque/axe-auth login opnieuw uit om opnieuw te authenticeren.
Fouten bij MCP-serverauthenticatie
- Bevestig dat alleen
AXE_ACCESS_TOKENis ingesteld (nietAXE_API_KEY) - Bevestig dat
AXE_SERVER_URLovereenkomt met je axe-instantie-URL — dit moet dezelfde URL zijn die bij--servertijdens het inloggen is gebruikt (ofhttps://axe.deque.comals je de standaard gebruikte) - Voer
npx @deque/axe-auth tokendirect uit in je terminal om te bevestigen dat je een geldig token hebt - Als het beëindigt met code
1, herauthenticeer metnpx @deque/axe-auth login
Linux-sleutelhanger niet beschikbaar
Zie de Platformondersteuning roeptekst hierboven.
