Skip to main content
Glama

MCP SQL Server

by ryudg
GetSchemaUseCase.ts1.29 kB
import { DatabaseSchema, TableInfo } from '../../domain/schema/entities/Schema.js'; import { SchemaRepository } from '../../domain/schema/services/SchemaDomainService.js'; export interface GetSchemaRequest { databaseName: string; refresh?: boolean; } export interface GetSchemaResponse { success: boolean; schema?: { databaseName: string; tables: TableInfo[]; tableCount: number; lastUpdated: Date; }; error?: string; } export class GetSchemaUseCase { constructor(private readonly schemaRepository: SchemaRepository) {} async execute(request: GetSchemaRequest): Promise<GetSchemaResponse> { try { let schema: DatabaseSchema; if (request.refresh) { schema = await this.schemaRepository.refreshSchema(request.databaseName); } else { schema = await this.schemaRepository.getSchema(request.databaseName); } return { success: true, schema: { databaseName: schema.databaseName, tables: schema.tables, tableCount: schema.getTableCount(), lastUpdated: schema.lastUpdated, }, }; } catch (error) { return { success: false, error: error instanceof Error ? error.message : 'Unknown error occurred', }; } } }

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/ryudg/mcp-sql'

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