Skip to main content
Glama

COA Goldfish MCP

by anortham
DatabaseInitializer.csโ€ข1.69 kB
using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.Logging; namespace COA.Goldfish.McpServer.Services.Storage; /// <summary> /// Service for initializing the database and ensuring schema exists /// </summary> public class DatabaseInitializer { private readonly GoldfishDbContext _context; private readonly ILogger<DatabaseInitializer> _logger; public DatabaseInitializer(GoldfishDbContext context, ILogger<DatabaseInitializer> logger) { _context = context; _logger = logger; } /// <summary> /// Initialize the database, creating tables if they don't exist /// </summary> public async Task InitializeAsync() { try { // Ensure database is created (this will create the file if using SQLite) await _context.Database.EnsureCreatedAsync(); // Create FTS5 virtual tables for enhanced search functionality await _context.CreateFtsTablesAsync(); _logger.LogInformation("Database initialization completed successfully with FTS5 search tables"); } catch (Exception ex) { _logger.LogError(ex, "Database initialization failed"); throw; } } /// <summary> /// Check if the database exists and has the required tables /// </summary> public async Task<bool> IsDatabaseInitializedAsync() { try { // Try to query a simple table to verify schema exists await _context.WorkspaceStates.FirstOrDefaultAsync(); return true; } catch { return false; } } }

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/anortham/coa-goldfish-mcp'

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