MCP i AI klijenti
Agent koji se spaja na Sporty nema na raspolaganju čovjeka koji bi najprije ispunio obrazac za registraciju, pa Sporty podržava dinamičku registraciju klijenata prema RFC 7591. Klijent se registrira sam, a zatim prolazi uobičajeni tok authorization code.
403 access_denied, a put do pristupa tada je klijent kojeg registrira administrator kluba.Registracija
curl -X POST https://api.sporty.plus/oauth2/register \
-H 'Content-Type: application/json' \
-d '{
"client_name": "My Agent",
"redirect_uris": ["http://127.0.0.1:8976/callback"],
"client_uri": "https://myagent.example",
"contacts": ["you@example.com"]
}'
{
"client_id": "01a09ad5-1469-7260-8157-bba3655a2fdf",
"client_id_issued_at": 1789304059,
"client_name": "My Agent",
"redirect_uris": ["http://127.0.0.1:8976/callback"],
"grant_types": ["authorization_code", "refresh_token"],
"response_types": ["code"],
"token_endpoint_auth_method": "none",
"scope": "openid profile email me.read me.reservations.read"
}
Nema client_secret: samoregistrirani klijent je javan i štiti ga PKCE. Loopback redirect
URI-ji dopušteni su upravo za ovaj slučaj, a port se pri usporedbi zanemaruje.
Discovery za običnog OAuth klijenta nalazi se na
https://api.sporty.plus/.well-known/oauth-authorization-server, a resurs kojem pristupate opisan
je na /.well-known/oauth-protected-resource.
Na što je samoregistrirani klijent ograničen
Sve je ovo namjerno i ništa od toga ne pregovara se za pojedinog klijenta:
- Javan i samo s PKCE-om. Ne postoji tajni ključ koji bi mogao procuriti.
- Samo
authorization_codeirefresh_token. Nikadclient_credentials— agent nikad ne djeluje bez prisutnog člana. - Samo
openid,profile,emailime.*. Nikad ne može tražiti podatke kluba. Integraciju kojoj trebaclub.*registrira administrator kluba. Svi opsezime.*su dostupni (na/me):- članov profil;
- njegove rezervacije te rezerviranje ili otkazivanje terena u njegovo ime;
- rezultati njegovih mečeva;
- njegovi klubovi i članstva.
Agent koji rezervira za člana trebao bi mu prikazati cijenu. Kad jeneeds_paymenttrue, trebao bi mu reći da plaća u aplikaciji Sporty. - Privola se nikad ne preskače, čak ni za člana koji ju je već prije dao.
- Kratkotrajni tokeni — petnaest minuta, uz osvježavanje tijekom jednog dana.
- Ograničen broj registracija, nekoliko na sat po adresi.
Čeka pregled
Samoregistrirani klijent čeka pregled, a takav klijent radi samo za račun koji ga je registrirao.
Upravo zato otvorena registracija nije razlog za brigu, nego je sigurna: cijeli tok možete odmah izraditi i testirati, a dok vašu aplikaciju ne pogledamo, ona ne može doći ni do čijeg drugog računa. Član je na zaslonu za privolu također obaviješten da aplikacija još nije pregledana.
Kad želite da bude dostupna i drugim ljudima, javite nam se. Pregled je razgovor o tome što vaš agent radi i koji su mu opsezi doista potrebni, a ne obrazac.