> ## Documentation Index
> Fetch the complete documentation index at: https://docs.flowstep.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Autenticació d'MCP

> Com Flowstep MCP autentica els clients: flux OAuth 2.1 PKCE i creació de comptes.

L'endpoint `/mcp` requereix un `access_token` de Supabase passat com a token de Bearer. La majoria de clients MCP l'obtenen automàticament a través del flux OAuth 2.1 PKCE. Podeu proporcionar un token manualment per a proves.

## Flux OAuth 2.1 PKCE

Flowstep implementa un servidor d'autorització OAuth 2.1 complet a `https://api.flowstep.ai`. Els clients MCP el descobreixen i completen el flux automàticament: obren una finestra de navegador perquè us connecteu, després gestionen l'intercanvi de tokens entre bastidors.

### Mètodes de connexió suportats

La pàgina d'autorització a `/oauth/authorize` permet:

* **Email/password** — qualsevol compte Flowstep amb una contrasenya establerta
* **Google SSO** — redirigeix a través de l'autenticació social de Supabase, torna al client automàticament

### Creació de compte per a usuaris del connector de claude.ai

La pàgina de connexió OAuth no inclou un formulari de registre. Si us connecteu a través del connector personalitzat de claude.ai i no teniu encara un compte Flowstep, creeu-ne un primer a [app.flowstep.ai](https://app.flowstep.ai), després torneu a la configuració del connector per autenticar-vos.

## Retorn a cookie

Si no hi ha una capçalera `Authorization`, el middleware torna a una sessió Supabase basada en cookies. Això funciona quan accediu a `/mcp` directament des d'un navegador amb una sessió Flowstep activa. Els clients MCP sempre utilitzen la ruta de Bearer.

## Token manual (proves)

Per cridar l'endpoint directament sense un flux OAuth del client:

1. Inicieu sessió a [app.flowstep.ai](https://app.flowstep.ai) al vostre navegador
2. Obriu DevTools → Console, executeu:

```javascript theme={"system"}
const pairs = document.cookie.split("; ").map((c) => {
  const i = c.indexOf("=");
  return [c.slice(0, i), c.slice(i + 1)];
});
const authPairs = pairs
  .filter(([k]) => /^sb-.+-auth-token(\.\d+)?$/.test(k))
  .sort(([a], [b]) => a.localeCompare(b));
const raw = authPairs.map(([, v]) => decodeURIComponent(v)).join("");
const session = JSON.parse(
  raw.startsWith("base64-") ? atob(raw.slice(7)) : raw,
);
console.log(session.access_token);
```

3. Passeu el token com a capçalera:

```bash theme={"system"}
curl -X POST https://api.flowstep.ai/mcp \
  -H "Authorization: Bearer <access_token>" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
```

<Warning>
  Les sessions MCP duren 30 dies — el servidor actualitza el token subjacent transparentment, de manera que els clients que utilitzen el flux OAuth no necessiten re-autenticar-se durant l'ús normal. Un token extret manualment com el de dalt segueix vencent al cap d'aproximadament una hora; és només per a proves ràpides.
</Warning>
