Skip to main content
Glama
AdrianCY

Microsoft SQL Server MCP

by AdrianCY

@adriancy/mcp-mssql

Microsoft SQL Server용 MCP 서버(stdio). Cursor(또는 모든 MCP 클라이언트)가 테이블을 나열하고, 열을 설명하며, 읽기 중심의 T-SQL을 실행할 수 있도록 도구를 노출합니다.

Cursor에서 사용하기

  1. Cursor 설정 → MCP를 엽니다(또는 MCP JSON을 편집합니다).

  2. 서버 블록을 추가합니다. env를 데이터베이스에 맞게 설정합니다(.env.example 참조).

npm에서 설치 (패키지 게시 후):

{
  "mcpServers": {
    "mssql": {
      "command": "npx",
      "args": ["-y", "@adriancy/mcp-mssql"],
      "env": {
        "MSSQL_SERVER": "localhost",
        "MSSQL_USER": "your_user",
        "MSSQL_PASSWORD": "your_password",
        "MSSQL_DATABASE": "your_database",
        "MSSQL_TRUST_SERVER_CERTIFICATE": "true"
      }
    }
  }
}

로컬 클론에서 설치 (먼저 pnpm install && pnpm build를 실행하세요):

{
  "mcpServers": {
    "mssql": {
      "command": "node",
      "args": ["/absolute/path/to/mssql-mcp/dist/index.js"],
      "env": {
        "MSSQL_SERVER": "localhost",
        "MSSQL_USER": "your_user",
        "MSSQL_PASSWORD": "your_password",
        "MSSQL_DATABASE": "your_database",
        "MSSQL_TRUST_SERVER_CERTIFICATE": "true"
      }
    }
  }
}

로컬 파일에는 **node**를 사용하세요. MCP command**pnpm**을 사용하는 것은 피하세요. stdout에 추가 출력이 발생하면 프로토콜이 손상될 수 있습니다.

설치 이름이 npm과 일치하는지 확인하세요: npm view @adriancy/mcp-mssql version.

Related MCP server: MSSQL Database MCP Server

환경 변수

모든 변수는 MCP 프로세스 환경(예: Cursor env)에서 읽어옵니다. 불리언 값은 1, true, yes, on(대소문자 구분 없음)을 참으로, 0, false, no, off를 거짓으로 처리합니다. 잘못된 불리언 및 정수 값은 시작 시 유효성 검사에서 실패합니다.

변수

필수

기본값

의미

MSSQL_SERVER

SQL Server의 호스트 이름 또는 IP

MSSQL_USER

예†

로그인 사용자(SQL 인증, NTLM, Azure AD 비밀번호); azure-active-directory-access-token 또는 서비스 주체 전용 흐름에는 사용되지 않음

MSSQL_PASSWORD

*

로그인 비밀번호(*일부 설정에서는 비워둘 수 있음)

MSSQL_DATABASE

초기 데이터베이스

MSSQL_PORT

아니오

1433

TCP 포트; MSSQL_INSTANCE_NAME 사용 시 생략(드라이버가 인스턴스 + SQL Browser 사용)

MSSQL_ENCRYPT

아니오

true

TLS encrypt: true, false 또는 strict(TDS 8.0 / tedious)

MSSQL_TRUST_SERVER_CERTIFICATE

아니오

false

자체 서명 인증서 신뢰 / 인증서 유효성 검사 건너뛰기(개발 전용)

MSSQL_TLS_SERVER_NAME

아니오

MSSQL_SERVER와 다를 경우 TLS 유효성 검사를 위한 호스트 이름(예: IP로 연결 시)

MSSQL_TLS_CA_FILE

아니오

CA PEM 경로; cryptoCredentialsDetails.ca를 통해 전달

MSSQL_TLS_CERT_FILE

아니오

선택적 클라이언트 인증서 PEM(상호 TLS)

MSSQL_TLS_KEY_FILE

아니오

선택적 클라이언트 개인 키 PEM

MSSQL_TLS_KEY_PASSPHRASE

아니오

암호화된 클라이언트 키의 암호 문구

MSSQL_CONNECTION_TIMEOUT_MS

아니오

(드라이버 기본값)

connectionTimeout(ms). 0 → 설정 해제

MSSQL_DOMAIN

아니오

도메인 로그인(SQL 인증의 경우 config.domain; MSSQL_AUTH_TYPE=ntlm에 필수)

MSSQL_INSTANCE_NAME

아니오

명명된 인스턴스(options.instanceName); 이 설정과 함께 MSSQL_PORT를 사용하지 마세요

MSSQL_MULTI_SUBNET_FAILOVER

아니오

false

가용성 그룹 스타일의 장애 조치 힌트

MSSQL_READ_ONLY_INTENT

아니오

false

AG 보조 서버에 대한 읽기 전용 라우팅

MSSQL_MAX_RETRIES_ON_TRANSIENT_ERRORS

아니오

Tedious maxRetriesOnTransientErrors; 0 → 설정 해제

MSSQL_CONNECTION_RETRY_INTERVAL_MS

아니오

Tedious connectionRetryInterval; 0 → 설정 해제

MSSQL_POOL_MAX

아니오

10

풀 최대 연결 수

MSSQL_POOL_MIN

아니오

0

풀 최소 연결 수

MSSQL_POOL_IDLE_TIMEOUT_MS

아니오

30000

pool.idleTimeoutMillis

MSSQL_APP_NAME

아니오

options.appName(서버 추적)

MSSQL_USE_UTC

아니오

true

설정 시 options.useUTC

MSSQL_TDS_VERSION

아니오

7_1, 7_2, 7_3_A, 7_3_B 또는 7_4

MSSQL_AUTH_TYPE

아니오

ntlm, azure-active-directory-password, azure-active-directory-access-token, azure-active-directory-service-principal-secret 또는 SQL 로그인의 경우 설정 해제/default

MSSQL_AZURE_CLIENT_ID

아니오‡

필요한 경우 Azure AD 앱(클라이언트) ID

MSSQL_AZURE_TENANT_ID

아니오‡

테넌트 ID(비밀번호 인증의 경우 선택 사항, 기본값 common; 서비스 주체의 경우 필수)

MSSQL_AZURE_CLIENT_SECRET

아니오‡

서비스 주체 비밀

MSSQL_AZURE_ACCESS_TOKEN

아니오‡

액세스 토큰 인증을 위해 미리 획득한 토큰

MSSQL_ALLOW_WRITES

아니오

false

false/설정 해제 시 mssql_query에서 일반적인 쓰기/DDL/exec 패턴을 차단(휴리스틱 전용)

MSSQL_QUERY_TIMEOUT_MS

아니오

(드라이버 기본값)

드라이버에 대한 요청 시간 제한(ms). 0 → 설정 해제

† SQL 인증 및 대화형 사용자 로그인을 사용하는 인증 유형에 필수. ‡ MSSQL_AUTH_TYPE에 따라 필수; .env.example 참조. Node 17+에서 NTLM을 사용할 경우 --openssl-legacy-provider가 필요할 수 있음(tedious FAQ 참조).

.env.example도 참조하세요.

도구

도구

목적

mssql_query

T-SQL 실행; 행 및 rowsAffected 반환

mssql_list_tables

INFORMATION_SCHEMA의 테이블

mssql_describe_table

열 메타데이터

MSSQL_ALLOW_WRITES가 설정 해제/false인 경우, 명백한 쓰기/DDL 패턴은 차단됩니다(휴리스틱 전용; 실제 안전을 위해서는 DB 권한을 사용하세요).

개발

pnpm install
pnpm check
pnpm test
pnpm build && pnpm start
pnpm dev

pnpm format을 사용하여 Biome 서식 수정을 적용하고, pnpm lint를 사용하여 서식 지정 없이 린트 규칙을 실행하세요.

일상적인 사용을 위해서는 읽기 전용 또는 최소 권한 SQL 로그인을 사용하세요.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Enables AI assistants to interact with Microsoft SQL Server databases through query execution, schema discovery, CRUD operations, stored procedures, and data export with built-in safety controls.
    18
    Apache 2.0
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to securely interact with Microsoft SQL Server databases to query data, inspect schemas, and retrieve metadata with read-only operations by default and optional write capabilities.
    1
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables interaction with Microsoft SQL Server databases using both SQL Server and Windows Authentication. It supports flexible connection configurations, including read-only modes and encrypted communication for secure data management.
    3,338
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to interact with Microsoft SQL Server databases via introspection and query tools. Supports single or multiple databases with read-only mode by default and an optional write capability.
    408
    4
    MIT

Latest Blog Posts

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

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