UNPKG

@auth0/auth0-mcp-server

Version:

Auth0 Model Context Protocol (MCP) Server (Beta) — A secure and extendable implementation of an MCP server that provides AI assistants with controlled access to the Auth0 Management API through natural language. This project is in beta and not intended fo

71 lines (70 loc) • 2.68 kB
import type { ClientOptions } from '../utils/types.js'; /** * Supported client types. * * Represents the set of known MCP client applications supported by this project. */ export type ClientType = 'claude' | 'claude-code' | 'cursor' | 'windsurf' | 'vscode' | 'gemini'; /** * MCP server configuration object used in client configuration files. * * Defines the parameters needed to launch the MCP server in the context of a client application. */ export interface ServerConfig { /** Command-line arguments to pass when launching the MCP server. */ args: string[]; /** Base command to execute (typically 'npx' or similar). */ command: string; /** Optional environment variables to set when executing the command. */ env?: Record<string, string>; /** Optional list of capabilities supported by the client integration. */ capabilities?: string[]; } /** * Generic client configuration format shared across different MCP clients. * * Defines the structure of the configuration file used by client applications * to specify MCP server settings. */ export interface ClientConfig { /** Dictionary of MCP server configurations, keyed by server identifier. */ mcpServers: Record<string, ServerConfig>; /** Additional client-specific configuration fields. */ [key: string]: any; } /** * Interface for client managers responsible for handling client-specific configuration. * * Client managers locate, read, and update configuration files * to integrate MCP server support into client applications. */ export interface ClientManager { /** * Returns the absolute path to the client's configuration file. * * @returns The full filesystem path to the configuration file. * @throws Error if the configuration directory cannot be created or accessed. */ getConfigPath(): string; /** * Updates the client's configuration with Auth0 MCP server settings. * * @param options - Configuration options, including enabled tools and read-only mode. * @returns A Promise that resolves when the configuration update has been completed successfully. * @throws Error if the configuration cannot be written to disk. */ configure(options: ClientOptions): Promise<void>; } /** * Platform-specific path templates. * * Provides OS-specific configuration directory paths for Darwin (macOS), Windows, and Linux. */ export interface PlatformPaths { /** Path template for macOS platforms ('darwin'). */ darwin: string; /** Path template for Windows platforms ('win32'). */ win32: string; /** Path template for Linux platforms ('linux'). */ linux: string; }