UNPKG

gmail-mcp-server

Version:

Gmail MCP Server with on-demand authentication for SIYA/Claude Desktop. Complete Gmail integration with multi-user support and OAuth2 security.

81 lines 1.9 kB
export interface UserCredentials { client_id: string; client_secret: string; redirect_uris: string[]; } export interface UserSession { userId: string; userEmail?: string; accessToken: string; refreshToken: string; expiryDate: number; authenticated: boolean; } /** * Multi-user Gmail authentication manager */ export declare class MultiUserGmailAuth { private sessions; private credentials; private authServers; constructor(); private ensureConfigDir; /** * Load credentials from environment or file */ private loadCredentials; /** * Load existing user sessions */ private loadExistingSessions; /** * Save user sessions to file */ private saveUserSessions; /** * Generate a unique user ID */ private generateUserId; /** * Create OAuth2 client for a user */ private createOAuth2Client; /** * Start authentication flow for a new user */ authenticateNewUser(userEmail?: string): Promise<{ userId: string; authUrl: string; port: number; }>; /** * Find an available port for OAuth callback */ private findAvailablePort; /** * Start callback server for OAuth2 */ private startCallbackServer; /** * Get authenticated Gmail client for a user */ getGmailClientForUser(userId: string): Promise<any>; /** * Get user session info */ getUserSession(userId: string): UserSession | null; /** * List all authenticated users */ getAuthenticatedUsers(): UserSession[]; /** * Remove user session */ removeUser(userId: string): boolean; /** * Clear all user sessions */ clearAllSessions(): void; } export declare const multiUserAuth: MultiUserGmailAuth; //# sourceMappingURL=multi-user-auth.d.ts.map