Skip to main content
Glama

MSSQL MCP Server

by c0h1b4
database.ts1.34 kB
import { ConnectionPool, config as SQLConfig } from 'mssql'; import type { DatabaseConfig } from '../types/index.js'; export async function createConnectionPool(config: DatabaseConfig): Promise<ConnectionPool> { const sqlConfig: SQLConfig = { server: config.host, port: config.port, user: config.user, password: config.password, database: config.database, options: { encrypt: config.encrypt, trustServerCertificate: config.trustServerCertificate, enableArithAbort: config.enableArithAbort, rowCollectionOnRequestCompletion: true, }, pool: { max: config.pool.max, min: config.pool.min, idleTimeoutMillis: config.pool.idleTimeoutMillis, acquireTimeoutMillis: config.pool.acquireTimeoutMillis, }, requestTimeout: config.queryTimeout, arrayRowMode: config.rowsAsArray, stream: false, }; const pool = new ConnectionPool(sqlConfig); try { await pool.connect(); return pool; } catch (error) { // Ensure pool is closed if connection fails await pool.close(); throw error; } } export async function testConnection(pool: ConnectionPool): Promise<void> { try { await pool.request().query('SELECT 1'); } catch (error) { throw new Error(`Failed to connect to database: ${(error as Error).message}`); } }

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/c0h1b4/mssql-mcp-server'

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