---
title: AI-klient
url: 'https://groovy.simplo.dev/handbok/atkomst/ai-klient'
updated: '2026-10-30'
description: 'Koppla en AI-klient, till exempel Claude Code, till dokumentationen för att läsa och söka i sajterna som dig själv. Är du editor kan klienten också ändra sidor, är du site-admin sajtens inställningar, och är du system-admin sajterna och utseendet.'
---

# AI-klient

Koppla en AI-klient, till exempel Claude Code, till dokumentationen för att läsa och söka i sajterna som dig själv. Är du editor kan klienten också ändra sidor, är du site-admin sajtens inställningar, och är du system-admin sajterna och utseendet.

En AI-klient kan läsa och söka i sajterna åt dig. Den loggar in som du och ser samma sidor som du ser i webbläsaren, inget mer. Är du editor i en sajt kan den också ändra sidor och filer åt dig, med samma gränser som när du redigerar själv (se [Om du är editor](#om-du-ar-editor)). Är du site-admin kan den ändra sajtens inställningar (se [Om du är site-admin](#om-du-ar-site-admin)). Är du system-admin kan den också hjälpa dig med sajterna och utseendet (se [Om du är system-admin](#om-du-ar-system-admin)). Åtkomsten ändrar den aldrig själv: den föreslår, och du bekräftar i webbläsaren (se [Ändra åtkomsten](#andra-atkomsten)).

Det bygger på MCP (Model Context Protocol), ett vanligt sätt för AI-klienter att hämta information. Du kopplar in klienten en gång, och den når alla sajter du har tillgång till (se [Adressen](#adressen)).

Allt du behöver finns i panelen **AI-assistenter** (se [Panelen](#panelen)).

## Vad varje roll får

Alla roller utom public kan använda en AI-klient (se [Roller](https://groovy.simplo.dev/handbok/atkomst/roller)). Hur mycket klienten får göra följer vad du får göra i webbläsaren.

| Roll | Gäller | Vad klienten får |
|---|---|---|
| **Super-admin** | hela installationen | Allt nedan, i alla sajter, plus System-Admin → *Temainställningar*. |
| **System-admin** | hela installationen | Läsa och ändra sidor i alla sajter, registret (skapa och ändra sajter), presets, den gemensamma tagglistan och varje sajts *Inställningar* och *Site*. Inte *Temainställningar*. |
| **Site-admin** | en sajt | Läsa och ändra sidor i sin sajt, och sajtens *Inställningar* (preset, funktioner, identitet med logga) och *Site* (titel, beskrivning, taggar, lås). |
| **Editor** | en sajt | Läsa, söka, skapa, ändra, flytta och publicera sidor och bilagor i sin sajt, och lägga i och ta ur papperskorgen. |
| **Member** | sajter där läsregeln släpper in kontot | Bara läsa och söka i de sidor kontot får läsa. |
| **Public** | sajter öppna för alla | Inget. En AI-klient kräver ett konto. |

- **Två slags member:** ett konto från domänregistret läser som en vanlig member. Ett kundkonto, som loggar in från en produkt, får bara läsa, och bara i sajter där kunders AI-klienter är påslagna. Det har ingen panel och inga personliga nycklar (se [Om du är kund](#om-du-ar-kund)).
- **Åtkomsten bara som förslag:** läsregeln, medlemmarna, läsgrupperna och sidornas åtkomst ändras bara när du bekräftar klientens förslag i webbläsaren (se [Ändra åtkomsten](#andra-atkomsten)).
- **Det ingen roll får göra via klienten:** öppna en sajt eller sida för alla, gallra domänkonton, ta bort, byta namn på eller återställa en sajt, radera något för gott eller ta bort en preset. Det gör du i webbläsaren.
- **Panelen och personliga nycklar** har alla inloggade utom kundkonton. Ett demokonto ser panelen men kan inte skapa nycklar.

## Vad klienten kan

| Verktyg | Vad det gör |
|---|---|
| `whoami` | Vem du är inloggad som, och din högsta roll i någon sajt. |
| `list_sites` | Sajterna du får läsa, med din roll i varje. |
| `list_pages` | Sidorna i en sajt, eller i en del av den, i menyns ordning. |
| `get_page` | En sida som Markdown: titel, text och länkar till sidorna runt den. |
| `search` | Söker i en sajt, som sökrutan. |

- **Klienten väljer sajten.** Ett verktyg som gäller en sajt får sajtens namn från `list_sites`. Grundsajten heter `/`. Du behöver bara säga vilken sajt du menar, eller låta klienten ta reda på det.
- **En sajt du inte får läsa** ger samma svar som en sajt som inte finns.
- **Bara det du får läsa.** Skyddade sidor du inte får läsa syns inte, och ger samma fel som en sida som inte finns.
- **Bara publicerad text.** Utkast och opublicerade sidor syns inte, inte heller för en editor.
- **Bara den aktuella versionen** i en sajt med versioner, om klienten inte ber om alla.
- **En sajt i taget.** Får du söka över flera sajter i sökrutan (se [Sökning över sajter](https://groovy.simplo.dev/handbok/drift/sokning-over-sajter)), säger `search`vilka de andra sajterna är. Klienten söker sedan i dem en i taget.

## Om du är editor

Är du editor i en sajt kan klienten också göra det du gör i redigeringsläget där:

| Vad | Hur |
|---|---|
| Skapa en sida | Hamnar sist under sidan du väljer. |
| Ändra en sida | Titel, text och sidans inställningar. |
| Publicera | Med utkast påslagna blir en ändring ett utkast. Klienten visar först vad som publiceras och frågar dig om det finns varningar. |
| Flytta och kopiera | Klienten visar först vad som händer, och gör det sedan. En flytt kan ångras i en kvart. |
| Radera | Sidan eller filen går till papperskorgen, och kan läggas tillbaka. |
| Historik | Se tidigare versioner och återställ en. |
| Filer | Ladda upp, byt namn, beskriv och radera filer på en sida. |

- **Varför så:** klienten ska kunna hjälpa dig med samma saker som du gör själv, men inte mer.
- **Ingenting raderas för gott.** Allt som raderas hamnar i sajtens papperskorg och kan läggas tillbaka (se [Papperskorgen](https://groovy.simplo.dev/handbok/skriva/papperskorg)). Klienten kan aldrig tömma den.
- **Allt syns i historiken.** Varje ändring står i sidans historik med ditt namn och *via MCP* (se [Historik](https://groovy.simplo.dev/handbok/skriva/historik)).
- **Någon annan har ändrat sidan?** Då får klienten ett fel och läser om sidan innan den försöker igen. Ingen ändring skrivs över.
- **När den inte kan ändra:** i en sajt där du inte är editor, i en låst sajt och om redigeringen är avstängd. Då kan klienten bara läsa.

## Om du är site-admin

Är du site-admin i en sajt kan klienten också ändra det du ändrar i sajtens Site-Admin → **Inställningar** och **Site**:

| Verktyg | Vad det gör |
|---|---|
| `get_site_settings` | Sajtens preset, funktioner (utkast, historik, versioner, taggar, sidinfo, export) och identitet (logga, texten vid den, länkarna i sidhuvudet, GitHub-länken, sidfotens text). Vad sajten sätter själv och vad den annars ärver. |
| `save_site_settings` | Ändrar dem, som **Spara** i Inställningar. |
| `upload_site_logo` | Laddar upp en ny logga. Den syns först när klienten sparar den med `save_site_settings`. |
| `get_site_info` | Sajtens titel, beskrivning, taggar och om den är låst. |
| `update_site_info` | Ändrar dem, eller låser och låser upp sajten. |

- **Samma gränser som i panelen.** Ett värde som inte är tillåtet nekas, med skälet. Har någon annan ändrat inställningarna sedan klienten läste dem, läser den om dem först. Ingen ändring skrivs över.
- **Att stänga av redigeringen eller Site-Admin** kräver att klienten bekräftar det uttryckligen.
- **Vem som får läsa eller redigera** ändras bara som förslag som du bekräftar (se [Ändra åtkomsten](#andra-atkomsten)).
- **Inte att begära att sajten tas bort.**

## Om du är system-admin

**System-admin** (och super-admin) kan låta klienten sköta sajterna, som i [registret](https://groovy.simplo.dev/handbok/kom-igang/skapa-en-sajt#registret). Verktygen gäller hela installationen, inte en sajt. Det går också när grundsajten är ensam.

| Verktyg | Vad det gör |
|---|---|
| `list_sites_admin` | Alla sajter: titel, beskrivning, vilka som får läsa, preset, taggar, editors och om sajten är låst. |
| `create_site` | En ny sajt, med namn, titel, beskrivning och den första editorn. Finns när installationen är förberedd för flera sajter, som **Ny sajt** i registret. |
| `update_site` | Ändrar en sajts titel, beskrivning, editors, taggar och preset, eller låser och låser upp den. |

- **Samma gränser som i registret.** Nya editors får ett mejl för att logga in. Högst tio läggs till åt gången, och bara ett visst antal i timmen. En borttagen editor förlorar sajten direkt.
- **Klienten kan inte ta bort, byta namn på eller återställa en sajt.**Det gör super-admin i webbläsaren, efter en granskning. Skälet: det går inte att ångra lika enkelt.

**System-admin och super-admin** kan också låta klienten arbeta med presets (se [Presets](https://groovy.simplo.dev/handbok/utseende/presets)). Verktygen gäller hela installationen. Sidorna som använder en preset är grundsajtens. `preview_url` visar en sida i den sajt du anger.

| Verktyg | Vad det gör |
|---|---|
| `get_settings_schema` | Inställningarna en preset kan ändra, med tillåtna värden. |
| `list_presets` | Alla presets, vilka sidor i grundsajten och vilka sajter som använder dem, och vilka som har för låg kontrast. |
| `get_preset` | Vad en preset ändrar. |
| `save_preset` | Sparar en ny preset, eller ersätter en. Svaret säger vilka sidor och sajter som ändrar utseende, och om kontrasten räcker. En preset som ersätts sparas först som den var (`backup-<datum>`). |
| `check_preset` | Prövar kontrasten i ljust och mörkt läge, och om preseten har typsnitt som saknas eller inställningar som inte används. Också innan något sparas. |
| `list_fonts` | Typsnitten som presets kan välja. |
| `preview_url` | En adress där du ser en sida i en sajt med preseten, inloggad. Ingen annan ser den. Fungerar i sajter där du får redigera sidor. |

- **Exempel:** be klienten ta fram en preset som liknar en webbplats du tycker om, eller en bild, till exempel en skärmbild eller en grafisk profil. Klienten tittar på förebilden själv, föreslår färger och typsnitt, sparar en ny preset och ger dig adressen för att se den. Den jämför och justerar tills du är nöjd. Välj den sedan för en sajt eller en del av en sajt.
- **Kontrasten är ett krav.** Klienten prövar varje förslag och rättar det som har för låg kontrast innan den föreslår att preseten används (se [Presets](https://groovy.simplo.dev/handbok/utseende/presets#kontrast)).
- **Klienten kan inte radera en preset,** och inte ändra *Default*. Radera gör du i System-Admin → *Presets*.

Klienten kan också ändra resten av System-Admin. Åtkomsten, också de delade läsgrupperna, ändras bara som förslag (se [Ändra åtkomsten](#andra-atkomsten)):

| Verktyg | Vad det gör |
|---|---|
| `get_theme_settings`, `save_theme_settings` | System-Admin → **Temainställningar**: inställningarna för hela installationen, och det alla sajter ärver om de inte sätter egna. Bara super-admin. |
| `add_font` | Lägger till ett typsnitt från Google Fonts, så att alla presets kan välja det. Servern laddar ner det först; läsarna hämtar aldrig något från Google. Bara super-admin. |
| `get_common_tags`, `save_common_tags` | System-Admin → **Taggar**: taggarna alla sajter delar. Svaret har listan som den var, så att en ändring kan läggas tillbaka. |

- **Samma gränser som i panelen.** Utseendet ändras i presets, och en sajts egna val i dess Site-Admin. Klienten får samma fel som panelen ger om den försöker.
- **Att stänga av System-Admin** kräver att klienten bekräftar det. Då försvinner också de här verktygen. Slå på det igen i Admin.

## Ändra åtkomsten

Klienten kan läsa åtkomsten: sajtens läsregel, *Members*, läsgrupperna och vem som får läsa en sida. Den ändrar den aldrig själv. Den gör ett förslag, och du bekräftar det i webbläsaren.

| Roll | Läsa | Föreslå |
|---|---|---|
| **Editor** | Vem som får läsa en sida. | Inget. |
| **Site-admin** | Sajtens läsregel, *Members* och sajtens läsgrupper, och sidornas åtkomst. | Ändringar av allt det, i sin sajt. |
| **System-admin** | Samma, i alla sajter, och de delade läsgrupperna. | Samma, i alla sajter, och de delade läsgrupperna. |
| **Super-admin** | Allt ovan, och *Domain accounts*. | Som system-admin. Aldrig att gallra domänkonton. |

Så går det till:

1. Be klienten om ändringen, till exempel *bjud in <anna@example.com> som editor i sajten*.
2. Klienten svarar med en länk.
3. Öppna länken i webbläsaren, inloggad som du. Sidan visar ändringen, före och efter, och vad den betyder för vem som når vad.
4. Klicka **Bekräfta** inom 15 minuter. **Avvisa** tar bort förslaget utan att något ändras.

- **Bara du kan bekräfta.** Det måste vara samma konto som klienten är inloggad som. Någon annan kan inte använda länken.
- **15 minuter, en gång.** Sedan gäller länken inte. Be klienten föreslå igen.
- **Din roll prövas när du bekräftar.** Har du förlorat rollen sedan förslaget, nekas det.
- **Allt bekräftas,** också en ändring som bara stänger.
- **En inbjudan:** mejlet till den nya personen går först när du har bekräftat.
- **En ändring som inte ändrar något** nekas direkt. Högst 20 förslag kan vänta på dig åt gången.
- **En personlig nyckel** föreslår bara med **Läsa och ändra**. Med **Bara läsa** kan klienten bara läsa åtkomsten.
- **Aldrig via klienten, inte heller som förslag:** att öppna en sajt eller en sida för alla, och att gallra domänkonton. Det gör du själv i panelen.
- **Varför så:** klienten kan påverkas av text på sidorna den läser. Med förslag kan den som mest föreslå. Ändringen gör du, när du ser den.

## Vem kan koppla in en klient

Alla med ett eget konto: members, editors, system-admin och super-admin.

En kund som läser dokumentationen från en produkt kan också, men bara för att läsa och bara i sajter där det är påslaget (se [Om du är kund](#om-du-ar-kund)).

Den som inte får läsa en sajt kan ändå ansluta. Klienten ser då bara de sajter hen får läsa.

## Om du är kund

Öppnar du dokumentationen från en produkt, är du inloggad med kundens konto. Det delas av alla i din organisation.

1. **Öppna dokumentationen från produkten först**, med länken i produkten. Då är du inloggad i webbläsaren.
2. Koppla in klienten som nedan.
3. Klicka **Tillåt** i samma webbläsare. Det går bara om minst en sajt du läser låter kunder koppla in en klient.

- **Bara läsa:** klienten får `whoami`, `list_sites`, `list_pages`, `get_page` och `search`, aldrig något som ändrar.
- **Bara vissa sajter:** den som driftar väljer vilka sajter en kunds klient får läsa (se [Från produkterna](https://groovy.simplo.dev/handbok/atkomst/fran-produkterna#ai-klient-for-kunder)). `list_sites` visar bara dem. En annan sajt svarar som om den inte fanns.
- **Högst 30 anrop i minuten** per anslutning.
- **Anslutningen slutar** när produktens nyckel byts ut eller spärras, eller när kunden stängs av. Öppna då dokumentationen från produkten igen och koppla in klienten på nytt.
- **Alla i organisationen** ser varandras anslutningar på sidan i [Se och avsluta dina anslutningar](#se-och-avsluta-dina-anslutningar), och kan avsluta dem.

## Adressen

Dokumentationen har en MCP-adress för alla sajter: `https://<värd>/mcp`.

- **En anslutning för alla sajter.** När du klickar **Tillåt** gäller det alla sajter ditt konto har tillgång till.
- **I varje sajt får klienten det du får där.** Är du editor i en sajt och läsare i en annan, kan klienten ändra i den första och bara läsa i den andra.

## Panelen

Logga in och klicka på robotikonen uppe till höger, **AI-assistenter**. Panelen öppnas från höger. Den är likadan i alla sajter.

Panelen visar:

- **Anslut en AI-assistent:** adressen och hur du kopplar in varje program. Knappen bredvid adressen och varje kommando kopierar det.
- **Lär din AI-assistent:** dina skills, som kommandon för Claude Code och som filer att ladda ner (se [Skills för klienten](#skills-for-klienten)).
- **Anslutna assistenter:** programmen du har kopplat in. **Koppla från**avslutar en anslutning.
- **Nycklar för andra program:** dina personliga nycklar (se [Personlig nyckel](#personlig-nyckel)).

En kund har ingen panel (se [Om du är kund](#om-du-ar-kund)).

## Så kopplar du in Claude Code

Kommandona står också i panelen, färdiga att kopiera.

1. Lägg till dokumentationen. Välj ett namn (här `docs`):

    ```bash
    claude mcp add --transport http docs https://<värd>/mcp
    ```
2. Logga in:

    ```bash
    claude mcp login docs
    ```

    Eller skriv `/mcp` i Claude Code och välj servern.
3. Webbläsaren öppnar en sida som frågar om klienten får ansluta. Logga in som vanligt om den ber om det. Sidan säger att anslutningen gäller alla sajter ditt konto har tillgång till. Klicka **Tillåt**.
4. Tillbaka i Claude Code: be den till exempel söka efter något i en sajt.

Du behöver inte ange något klient-id. Claude Code talar själv om vilket program det är.

## Andra klienter

Claude Desktop, claude.ai, Cursor, VS Code och liknande program ansluter på samma sätt: lägg till en MCP-server (ibland kallad *connector*) med adressen `https://<värd>/mcp`, och klicka **Tillåt** när webbläsaren frågar. Programmet måste kunna ansluta till en MCP-server över HTTP med inloggning (OAuth).

Programmen ansluter från olika ställen:

| Program | Ansluter från | Om dokumentationen bara nås i ert nät |
|---|---|---|
| Claude Code, Cursor, VS Code och liknande | din dator | Fungerar, om datorn når dokumentationen. |
| claude.ai, och en connector i Claude Desktop | Anthropics servrar | Fungerar inte. |
| Claude Desktop med dokumentationens tillägg | din dator | Fungerar (se [Om dokumentationen bara nås i ert nät](#om-dokumentationen-bara-nas-i-ert-nat)). |

**Ett program som installationen inte känner** märks på sidan där du klickar **Tillåt**:

- *(self-registered)*: programmet har registrerat sig själv och valt sitt namn själv;
- *(from claude.ai)* eller en annan adress: namnet kommer från ett dokument på den adressen.

Sidan visar också vart svaret går. Står det en adress på din egen dator (`localhost` eller `127.0.0.1`), tar ett program på datorn emot svaret. Klicka **Tillåt** bara om du nyss startade anslutningen själv.

- **Varför så:** vem som helst kan ge ett program ett namn. Det som skyddar dig är att du själv godkänner varje anslutning, inloggad.

Kan programmet inte registrera sig själv, men låter dig ange ett klient-id, går klient-id `local` för program på den egna datorn. I Claude Code: `--client-id local --callback-port <port>`.

## Om dokumentationen bara nås i ert nät

En del installationer nås bara i företagets nät eller via VPN. Då står det i panelen, under **Anslut en AI-assistent**.

- **En connector i Claude-apparna fungerar inte.** claude.ai, och en connector som läggs till i Claude Desktop, ansluter från Anthropics servrar och inte från din dator. Servrarna når inte ert nät.
- **Claude Code, Cursor och VS Code fungerar** som vanligt. De ansluter från din dator.
- **Claude Desktop får ett tillägg** som körs på din dator och bara pratar med dokumentationen.

Så kopplar du in Claude Desktop:

1. Öppna panelen (se [Panelen](#panelen)). Skapa en nyckel under **Nycklar för andra program** (se [Personlig nyckel](#personlig-nyckel)). Välj **Läsa och ändra** om assistenten ska ändra sidor åt dig.
2. Under **Anslut en AI-assistent** → **Claude Desktop**: klicka **Ladda ner tillägget**.
3. Dubbelklicka på filen, eller dra in den i Claude Desktop → *Settings* → *Extensions*. Klicka *Install*.
4. Klistra in nyckeln när Claude Desktop ber om den, och slå på tillägget.

- **Din dator måste nå dokumentationen,** till exempel via VPN. Annars svarar assistenten att den inte når dokumentationen.
- **Tillägget är dokumentationens eget.** Det hämtar inget från internet, och skickar bara till dokumentationens adress. Nyckeln sparar Claude Desktop skyddat på datorn.
- **Fältet för ett certifikat** fyller du bara i om din IT-support ber om det.
- **Nyckeln slutar gälla** efter ett år, eller när du spärrar den. Skapa då en ny och byt den i Claude Desktop → *Settings* → *Extensions*.
- **Tillägget gäller bara den datorn.** Det följer inte med till claude.ai eller mobilen.

## Skills för klienten

En skill är en kort guide som du ger din AI-klient. Med den vet klienten hur dokumentationen är uppbyggd, vilka verktyg som finns och hur de används säkert. Utan en skill kan klienten använda verktygen ändå, men den måste gissa mer.

Det finns två skills:

| Skill | I panelen | Lär klienten |
|---|---|---|
| `groovy-docs-editor` | *Editing pages*, för alla som har panelen | Läsa, skriva, strukturera, publicera och återställa sidor, och hur sidorna skrivs (callouts, bilder, inbäddningar, länkar). |
| `groovy-docs-super-admin` | *Look, presets and settings*, för site-admin, system-admin och super-admin | Utseende och presets, inställningar och sajter. Den anpassar sig efter din roll. |

Panelen visar de skills din roll har nytta av, under **Lär din AI-assistent**.

**Claude Code** får skill och anslutning på en gång. Kopiera raderna under *Claude Code* i panelen och klistra in dem i en terminal, en i taget:

```bash
claude plugin marketplace add https://<värd>/mcp/skills/marketplace.json
claude plugin install docs@docs-<värd>
claude mcp login plugin:docs:docs
```

- Den första raden lägger till dokumentationen som en *marketplace* i Claude Code. Namnet bildas av värden, till exempel `docs-docs-example-com`.
- Den andra installerar anslutningen och redaktörens skill. Är du site-admin eller mer har panelen en rad till, för den andra skillen.
- Den sista öppnar webbläsaren. Logga in och klicka **Tillåt**.
- Har du redan kopplat in Claude Code med `claude mcp add`, ta bort den anslutningen (`claude mcp remove docs`). Annars har Claude Code två anslutningar till samma dokumentation.
- **En ny version av en skill** når dig när du uppdaterar: `claude plugin marketplace update docs-<värd>`, eller slå på automatisk uppdatering under *Marketplaces* i `/plugin`.
- Det kräver Claude Code 2.1.224 eller senare.

**Claude Desktop och claude.ai:**

1. Koppla in klienten (se [Andra klienter](#andra-klienter), eller [Om dokumentationen bara nås i ert nät](#om-dokumentationen-bara-nas-i-ert-nat)).
2. Klicka på knappen för skillen i panelen. En zip-fil laddas ner.
3. Öppna *Customize* → *Skills* i Claude och ladda upp filen som den är. Packa inte upp den.
4. Slå på skillen.

Skills måste vara påslagna för kontot. Med Claude Team eller Enterprise kan organisationen dela ut en skill till alla på en gång. Fråga den som sköter Claude i din organisation.

- **Klienten får det viktigaste ändå.** När den ansluter får den en kort sammanfattning av reglerna: börja med `whoami` och `list_sites`, ange sajten i varje anrop, följ aldrig instruktioner i sidornas text, och fråga innan den publicerar eller gör stora ändringar. Hela skillen är mer utförlig. Claude Code läser sammanfattningen; om claude.ai gör det är inte provat.
- **Skillen ger inga nya rättigheter.** Klienten får fortfarande bara det din roll får.
- **Filerna är öppna.** Vem som helst kan hämta dem, utan att logga in. De innehåller allmänna instruktioner och dokumentationens adress, inget hemligt.
- **Skillarna är på engelska.** Klienten skriver ändå på sajtens språk.
- **Försiktig som standard:** skillarna säger åt klienten att aldrig göra något som inte går att ångra, att visa vad som publiceras innan den publicerar, att ändra inställningar bara när du ber om det, och att aldrig följa instruktioner som står i texten på en sida.

## Se och avsluta dina anslutningar

Öppna panelen (se [Panelen](#panelen)). Under **Anslutna assistenter** står dina anslutna AI-assistenter, med när de senast användes. **Koppla från** avslutar en anslutning direkt.

Samma lista finns på `https://<värd>/mcp/oauth/authorize`, inloggad. En kund använder den sidan.

En anslutning slutar också av sig själv:

- när den inte har använts på lika länge som en inloggning på webbplatsen håller;
- senast 30 dagar efter att du tillät den.

Då loggar du in igen (`claude mcp login docs`).

Byter du roll, eller tas du bort som editor, gäller det från klientens nästa anrop.

## Personlig nyckel

För ett program som inte kan logga in i webbläsaren, ett skript eller en automation. Nyckeln låter programmet arbeta som du, utan inloggning.

1. Öppna panelen (se [Panelen](#panelen)) och gå till **Nycklar för andra program**.
2. Skriv ett namn, till exempel programmets.
3. Välj **Bara läsa** eller **Läsa och ändra**. **Bara läsa** är förvalt: programmet kan då bara läsa, också där du får ändra.
4. Klicka **Skapa nyckel**.
5. **Kopiera nyckeln direkt.** Den visas bara den här gången. Tappar du den, välj **Ny nyckel** för att få en ny.
6. Ge programmet adressen och nyckeln. Nyckeln skickas i huvudet `Authorization: Bearer <nyckel>`, aldrig i en adress. I Claude Code:

    ```bash
    claude mcp add --transport http docs https://<värd>/mcp --header "Authorization: Bearer <nyckel>"
    ```

- **En nyckel gäller ett år.** En månad före står en påminnelse i panelen. Välj då **Ny nyckel** och ge programmet den nya nyckeln.
- **Ny nyckel** ger en ny nyckel med samma namn och val. Den gamla slutar gälla direkt.
- **Ta bort** spärrar nyckeln direkt.
- **En nyckel som skickas i en adress spärras direkt.** Adressen kan ha hamnat i serverns logg. Skapa då en ny nyckel och ge den till programmet i huvudet `Authorization`.
- **Behandla nyckeln som ett lösenord.** Den som har den kan göra det du valde, som du.
- **Högst 10 nycklar** per konto. Ett kundkonto får ingen.

## För den som driftar

- **Av från början.** Slå på i `user/config/plugins/mcp.yaml` på servern: `enabled: true`. Det gäller alla sajter.
- **Bara i ert nät:** når bara företagets nät eller VPN installationen, sätt `internal: true`. Panelen visar då ingen connector för Claude-apparna, utan dokumentationens tillägg för Claude Desktop. Tillägget kräver personliga nycklar (`keys`).
- **Spärr:** högst 120 anrop i minuten per anslutning (`rate_limit`). Fler får vänta en stund. En kunds anslutning har en lägre spärr, 30 anrop.
- **Kunders klienter** slås på per sajt (se [Från produkterna](https://groovy.simplo.dev/handbok/atkomst/fran-produkterna#ai-klient-for-kunder)).
- **Loggen** (`logs/grav.log`) har en rad per anrop: konto, sajt och verktyg, aldrig innehållet.
- **Alla anslutningar**, från webbroten (`public/`):

    | Vad | Kommando |
    |---|---|
    | Lista anslutningarna | `php bin/plugin mcp tokens` |
    | Avsluta ett kontos anslutningar | `php bin/plugin mcp tokens --revoke <konto>` |
    | Avsluta alla anslutningar | `php bin/plugin mcp tokens --all` |
- **Program som registrerar sig själva:** högst 10 i timmen från samma adress, och högst 1000 totalt (`registration_per_hour`, `registration_max`). En registrering som ingen har godkänt försvinner efter ett dygn. En godkänd försvinner 30 dagar efter att dess sista anslutning slutade. Stäng av med `registration: false`.
- **Program med ett eget dokument** (en adress som klient-id): servern hämtar dokumentet, men bara från en publik adress, aldrig från det egna nätet. Stäng av med `client_documents: false`.
- **Program som registrerat sig**, från webbroten:

    | Vad | Kommando |
    |---|---|
    | Lista dem | `php bin/plugin mcp clients` |
    | Ta bort ett, och avsluta dess anslutningar | `php bin/plugin mcp clients --remove <id>` |
    | Ta bort de som slutat gälla nu | `php bin/plugin mcp clients --prune` |
- **Personliga nycklar** för program utan inloggning, skript och automation. Var och en skapar sina egna i panelen (se [Personlig nyckel](#personlig-nyckel)). En nyckel gäller ett år, bara för MCP-adressen, och bara läser om personen inte valt annat. Ett kundkonto får ingen. Högst 10 nycklar per konto (`keys_max`), och högst 10 nya i timmen (`keys_per_hour`). Stäng av med `keys: false`; då slutar alla nycklar gälla. Från webbroten:

    | Vad | Kommando |
    |---|---|
    | Lista nycklarna | `php bin/plugin mcp keys` |
    | Spärra en nyckel | `php bin/plugin mcp keys --revoke <id>` |
    | Spärra ett kontos alla nycklar | `php bin/plugin mcp keys --revoke-user <konto>` |

    Listan visar konto, namn, om nyckeln bara läser, när den skapades, användes senast och går ut. Aldrig själva nyckeln.
- **Ett program installationen ska känna** läggs in under `clients` i samma fil, med sin adress för inloggningen. Det visas utan varning när någon klickar **Tillåt**. Lägg bara in program du litar på: de får det personen tillåter.

---

## Navigation

- Parent: [Åtkomst](https://groovy.simplo.dev/handbok/atkomst.md)
- Previous: [Från produkterna](https://groovy.simplo.dev/handbok/atkomst/fran-produkterna.md)
- Next: [Drift](https://groovy.simplo.dev/handbok/drift.md)
