Skip to main content
Glama
useAuth.js997 B
import { useState, useEffect } from 'react' import { useQuery, useMutation, useQueryClient } from '@tanstack/react-query' import { auth } from '../services/api' export function useAuth() { const queryClient = useQueryClient() const { data: authStatus, isLoading } = useQuery({ queryKey: ['auth'], queryFn: auth.status, retry: false, }) const loginMutation = useMutation({ mutationFn: ({ username, password }) => auth.login(username, password), onSuccess: () => { queryClient.invalidateQueries(['auth']) }, }) const logoutMutation = useMutation({ mutationFn: auth.logout, onSuccess: () => { queryClient.invalidateQueries(['auth']) }, }) return { isAuthenticated: authStatus?.authenticated || false, isLoading, login: (username, password) => loginMutation.mutate({ username, password }), logout: logoutMutation.mutate, isLoggingIn: loginMutation.isPending, loginError: loginMutation.error?.message, } }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/GeorgeStrakhov/mcpeasy'

If you have feedback or need assistance with the MCP directory API, please join our Discord server