Conectarea CLI-ului @seameet/mcp
Capitolul 18: Conectarea CLI-ului @seameet/mcp
CLI-ul @seameet/mcp este un server Model Context Protocol fără interfață grafică, care permite altor unelte (Claude Desktop, IDE-uri, agenți) să citească din contul tău SeaMeet și să scrie în el. Deoarece este headless, îl aprobi printr-un flux de autorizare a dispozitivului (RFC 8628) — CLI-ul îți arată un cod scurt, tu vizitezi un URL, confirmi codul, gata.
Acest capitol acoperă partea de web app: pagina /link, acțiunea de aprobare și gardurile de protecție.
Fluxul, de la cap la coadă
- Rulează CLI-ul (de ex.
npx @seameet/mcpsau un client care îl lansează). - CLI-ul tipărește un cod scurt și un URL — de regulă
app.seameet.ai/linkși un cod precumABCD-EFGH. - Deschide URL-ul în browserul tău.
- Pe pagina
/link, introdu codul (sau CLI-ul poate să îl precompleteze prin query string). - Dă click pe Approve.
- CLI-ul primește o cheie API citire+scriere în numele tău și poate acționa acum.
Asta e tot. Întregul flux durează, de regulă, sub 30 de secunde.
Ce înseamnă „în numele tău"
Cheia API emisă de /link este un token real per utilizator, cu scop limitat la contul tău SeaMeet. Orice face CLI-ul cu ea apare în biblioteca ta ca acțiunea ta. Concret:
- Citire — CLI-ul poate lista înregistrările tale, poate prelua transcrieri și rezumate, poate interoga Meeting Memory pe întreaga ta arhivă.
- Scriere — CLI-ul poate crea înregistrări (prin încărcare), poate actualiza titluri și descrieri, poate crea distributări și, în general, poate face ce poate sesiunea ta normală.
Deoarece tokenul este legat de contul tău, revocarea sesiunii tale (deautentificare peste tot) NU revocă tokenul CLI-ului — tokenul este o acreditare separată. Vezi „Retragerea unei aprobări CLI" mai jos.
Autentificare necesară
Pagina /link cere un cont real, autentificat și verificat. Asta înseamnă:
- Deautentificat. Pagina te redirecționează către
/signincu un parametrureturnTocare poartă codul, astfel încât, după autentificare, fluxul se reia pe/linkcu codul intact. - Sesiune de invitat anonimă. La fel ca deautentificat — sesiunea de invitat nu poate aproba un CLI, deoarece CLI-ul are nevoie de o identitate reală căreia să se lege. Ești trimis la
/signinpentru a promova sesiunea într-un cont real. - Autentificat și verificat. Acțiunea de aprobare este activată.
Aceasta este o gardă de protecție deliberată. Fără ea, un CLI ar putea acționa „în numele" unei sesiuni anonime aruncabile, pe care niciun om nu a deschis-o în mod deliberat.
Click explicit pentru aprobare
Pagina /link niciodată nu autorizează automat. Chiar când codul este precompletat prin ?code=<value>, trebuie să dai click explicit pe Approve. Aceasta este defensiv: o auto-aprobare la încărcare ar fi un vector de phishing — o pagină malițioasă ar putea deschide /link?code=<codul-atacatorului> în browserul tău și ar putea bate un token pentru atacator înainte să observi.
Întotdeauna verifică faptul că codul afișat pe pagină corespunde codului afișat de CLI-ul tău, înainte să dai click pe Approve. Dacă nu corespund, închide pagina.
Acțiunea de aprobare
Dă click pe Approve și:
- Web app-ul verifică codul cu serverele SeaMeet.
- Serverul verifică faptul că codul este valid, neexpirat și legat de un cont real (non-anonim).
- Dacă este valid, bate o cheie API, o asociază cu codul și returnează succesul.
- CLI-ul, care a interogat în buclă endpointul de token, primește cheia și tipărește un mesaj de succes.
- Pagina
/linka web app-ului afișează „Approved" — fila poate fi închisă.
Dacă codul este expirat (codurile RFC 8628 sunt de scurtă durată — de regulă 15 minute), CLI-ul trebuie să genereze unul proaspăt și să reia de la început.
Retragerea unei aprobări CLI
În două moduri:
- De partea CLI-ului. Șterge tokenul din stocarea locală a CLI-ului (sau rulează comanda
logouta CLI-ului, dacă există). Tokenul rămâne valid pe partea de server până îl revoci și acolo. - De partea contului. Account → Connected apps → găsește aprobarea CLI după marcajul său de ultima utilizare → Revoke. Aceasta invalidează tokenul pe partea de server imediat.
Pentru paranoiaș: revocă pe partea de server. Ștergerea de partea CLI-ului oprește doar procesul CLI curent din a folosi tokenul; nu împiedică o copie a tokenului să fie folosită în altă parte.
Aprobări CLI multiple
Poți aproba CLI-ul de mai multe ori (de ex. o dată per mașină pe care îl folosești). Fiecare aprobare bate o cheie API separată. Account → Connected apps le listează cu metadate per cheie (ultima utilizare, prima aprobare).
Retragerea unei aprobări CLI nu afectează celelalte.
Securitatea tokenului
- Tokenul este stocat în directorul de configurare local al CLI-ului, necriptat implicit.
- Dacă mașina ta este compromisă, tokenul este compromis. Revocă pe partea de server și reaprobă.
- Tokenul nu are expirare implicită (de lungă durată). Dacă vrei tokenuri de scurtă durată, revocă și reaprobă conform programului tău de rotație.
- Tokenurile sunt transmise prin HTTPS (protejat HSTS — vezi Capitolul 17).
Transmiterea drepturilor
CLI-ul acționează ca tine — deci are nivelul tău de drepturi. Dacă ești pe planul gratuit, CLI-ul este supus limitei de dezvăluire a planului gratuit la citirea transcrierilor. Sync Pro? CLI-ul are citire completă.
Acțiunile de scriere, precum crearea de înregistrări, contează la cotele tale la fel cum ar face-o o sesiune normală.
Probleme frecvente
„Codul este expirat." Codurile sunt de scurtă durată (de regulă 15 minute). Repornește CLI-ul pentru unul proaspăt.
„Codul a fost aprobat, dar CLI-ul nu a observat." CLI-ul interoghează endpointul de token la câteva secunde. Dă-i 10-15 secunde. Dacă tot nimic, repornește CLI-ul — poate a blocat bucla de interogare.
„M-am autentificat și am pierdut codul." Pagina /link poartă codul în returnTo — autentifică-te și aterizezi înapoi cu codul păstrat. Dacă, cumva, s-a pierdut, repornește CLI-ul pentru un cod proaspăt.
„Approve returnează eroarea „not_entitled"." Drepturile contului nu includ aprobarea CLI — în prezent, aprobarea CLI cere Sync Pro. Fă upgrade și reîncearcă.
„Am aprobat, dar CLI-ul meu spune tot „authorization required"." Verifică directorul de configurare al CLI-ului pentru tokenul stocat (calea variază în funcție de versiunea CLI-ului). Dacă e gol, CLI-ul a ratat tokenul — repornește și reaprobă.
Referință rapidă
| Sarcină | Cum |
|---|---|
| Aprobi un cod CLI | app.seameet.ai/link → introdu/verifici codul → Approve |
| Revoci un token CLI (partea de server) | Account → Connected apps → Revoke |
| Revoci un token CLI (partea de client) | Comanda logout a CLI-ului sau ștergi fișierul de configurare al CLI-ului |
| Vezi toate aprobările | Account → Connected apps |
| Aprobi pe mai multe mașini | Aprobă o dată per mașină — fiecare bate un token separat |
Ultima actualizare: 2026-08-28
Published: