Skip to main content
A session gives an agent a per-user MCP endpoint, scoped by the user’s AccountKit.
const client = naive.forUser(alice.id);
const session = await client.session({ ttlMs: 15 * 60 * 1000 });

// session.mcp.url + session.mcp.headers — hand to any MCP client
// session.expires_at — default 15 min, max 24h

await client.sessions.revoke(session.id); // revoke early
naive.session() (root) is sugar for the default user. The bearer token is in session.mcp.headers.Authorization, never in the URL. See Architecture → Sessions.