/**
* mysql-mcp - Public API
*
* Exports the main components for programmatic use.
*/
// Server
export {
McpServer,
createServer,
DEFAULT_CONFIG,
parseMySQLConnectionString,
} from "./server/McpServer.js";
// Adapters
export { DatabaseAdapter } from "./adapters/DatabaseAdapter.js";
export { MySQLAdapter } from "./adapters/mysql/MySQLAdapter.js";
// Pool
export { ConnectionPool } from "./pool/ConnectionPool.js";
export type { ConnectionPoolConfig } from "./pool/ConnectionPool.js";
// Filtering
export {
TOOL_GROUPS,
getAllToolNames,
getToolGroup,
parseToolFilter,
isToolEnabled,
filterTools,
getToolFilterFromEnv,
calculateTokenSavings,
getFilterSummary,
getToolGroupInfo,
clearToolFilterCaches,
} from "./filtering/ToolFilter.js";
// Types
export type {
DatabaseType,
DatabaseConfig,
MySQLOptions,
PoolConfig,
PoolStats,
HealthStatus,
QueryResult,
ColumnInfo,
FieldInfo,
TableInfo,
SchemaInfo,
IndexInfo,
ConstraintInfo,
RoutineInfo,
TriggerInfo,
TransportType,
McpServerConfig,
OAuthConfig,
OAuthScope,
TokenClaims,
RequestContext,
ToolGroup,
ToolFilterRule,
ToolFilterConfig,
AdapterCapabilities,
ToolDefinition,
ResourceDefinition,
PromptDefinition,
} from "./types/index.js";
// Errors
export {
MySQLMcpError,
ConnectionError,
PoolError,
QueryError,
AuthenticationError,
AuthorizationError,
ValidationError,
TransactionError,
} from "./types/index.js";
// Logger
export { logger } from "./utils/logger.js";