VOOZH about

URL: https://glama.ai/mcp/servers/dhipskind253/mssql-mcp?locale=ko-KR

⇱ mssql-mcp by dhipskind253 | Glama


mssql-mcp

AWS Secrets Manager에서 도구 호출 시점에 연결 세부 정보를 가져오는 읽기 전용 Microsoft SQL Server MCP 서버입니다. 비밀 참조 자체를 제외하고는 디스크나 환경 변수에서 아무것도 읽지 않습니다.

크로스 플랫폼: 순수 JavaScript MCP 서버(네이티브 또는 ODBC 종속성 없음)이므로 npx를 통해 macOS, Linux, Windows에서 동일하게 실행됩니다.

.claude.json에서 구성

{
 "mcpServers": {
 "my-db": {
 "command": "npx",
 "args": ["-y", "@dhipskind253/mssql-mcp"],
 "env": {
 "AWS_ACCOUNT_ID": "123456789012",
 "SECRET_NAME": "my-aws-secret",
 "AWS_REGION": "us-east-1",
 "TRUST_SERVER_CERTIFICATE": "false"
 }
 }
 }
}

환경 변수

필수

기본값

설명

AWS_ACCOUNT_ID

비밀이 저장된 AWS 계정입니다. 이름 + 리전과 결합되어 전체 ARN이 됩니다.

SECRET_NAME

Secrets Manager 비밀 이름(ARN 접미사 불필요)입니다.

AWS_REGION

비밀이 위치한 AWS 리전입니다(예: us-east-1). AWS SDK의 기본 리전으로도 사용됩니다.

TRUST_SERVER_CERTIFICATE

아니요

false

SQL Server에 대한 TLS 인증서 유효성 검사를 건너뜁니다. true/false/1/0/yes/no를 허용합니다. 이유를 이해하는 경우에만 true로 설정하세요.

표준 AWS SDK 환경 변수(AWS_PROFILE, AWS_ACCESS_KEY_ID 등)는 기본 자격 증명 공급자 체인을 통해 적용됩니다. 대부분의 사용자는 aws sso login을 최신 상태로 유지하기만 하면 됩니다.

Related MCP server: mssql-mcp

필수 비밀 JSON

비밀 값은 최소한 다음 필드를 포함하는 JSON 문서여야 합니다:

{
 "host": "myserver.database.windows.net",
 "port": 1433,
 "database": "mydb",
 "username": "ro_user",
 "password": "..."
}

database는 **dbname**으로 제공될 수도 있습니다. 이는 AWS가 내장 RDS 자격 증명 비밀 템플릿에서 사용하는 필드 이름입니다. 둘 다 존재하는 경우 database가 우선합니다.

선택적 필드(기본값 표시):

필드

기본값

참고

port

1433

encrypt

true

서버에 대한 TLS 연결.

TLS 인증서 신뢰는 비밀에서 읽어오지 않습니다. 대신 MCP 서버의 env 블록에서 TRUST_SERVER_CERTIFICATE를 설정하세요. 비밀 JSON의 trustServerCertificate 필드는 무시됩니다.

설계상 읽기 전용

이 서버는 데이터를 삽입, 업데이트 또는 삭제할 수 없습니다. 두 가지 계층이 이를 강제합니다:

  1. run_select 도구는 INSERT, UPDATE, DELETE, EXEC, MERGE, DROP, ALTER, SELECT INTO 등을 포함하여 단일 SELECT 또는 WITH(CTE) 문이 아닌 모든 것을 어휘적으로 거부합니다.

  2. 다른 도구는 쓰기 SQL을 생성하지 않습니다. get_procedure_definition은 프로시저 소스를 반환하며 프로시저를 실행하지 않습니다.

참고: 어휘 검사를 보안 경계가 아닌 UX로 취급하세요. 향후를 위해 Secrets Manager에 넣는 자격 증명을 읽기 전용 데이터베이스 로그인(즉, SELECTVIEW DEFINITION 권한만 있는 계정)으로 구성하세요. 그렇게 하면 실수로 인한 쓰기(또는 향후 발생할 수 있는 버그)가 SQL Server 자체에 의해 거부됩니다.

재시작 없이 AWS 자격 증명 새로 고침

서버가 기본 AWS 자격 증명 체인을 사용하므로, 만료된 SSO 세션은 Claude나 MCP 서버를 재시작하지 않고도 복구할 수 있습니다:

  1. 터미널에서 aws sso login을 실행합니다.

  2. Claude에게 refresh_secret 도구를 호출하도록 요청합니다.

  3. 작업을 계속합니다.

AWS 인증 문제로 도구 호출이 실패하면, 오류 메시지가 정확히 그 내용을 알려주고 동일한 흐름을 안내합니다. 오류는 안정적인 접두사로 태그가 지정됩니다:

접두사

의미

[AWS_AUTH_REQUIRED]

SSO 세션이 만료되었거나 자격 증명을 사용할 수 없습니다.

[AWS_ACCESS_DENIED]

주체에게 secretsmanager:GetSecretValue 권한이 없습니다.

[AWS_SECRET_NOT_FOUND]

비밀 이름 / 계정 / 리전이 일치하지 않습니다.

[AWS_SECRET_INVALID]

비밀 JSON에 필드가 누락되었거나 형식이 잘못되었습니다.

[DB_CONNECT_FAILED]

SQL Server 인스턴스에 연결할 수 없습니다.

[DB_QUERY_FAILED]

SQL Server가 쿼리 실행 중 오류를 반환했습니다.

[INVALID_QUERY]

제출된 쿼리가 읽기 전용 규칙을 위반했습니다.

도구

도구

목적

list_schemas

데이터베이스의 사용자 스키마.

list_tables

테이블(스키마별로 필터링 가능).

describe_table

열, 유형, null 허용 여부, ID, PK, 기본값.

list_indexes

테이블의 인덱스(인덱스/열당 한 행).

list_foreign_keys

테이블의 나가는 외래 키.

list_views

뷰(스키마별로 필터링 가능).

get_view_definition

뷰 소스 SQL.

list_procedures

저장 프로시저(스키마별로 필터링 가능).

get_procedure_definition

프로시저 소스 SQL(실행하지 않음).

sample_rows

SELECT TOP n * FROM schema.table (기본값 10, 최대 100).

run_select

단일 SELECT/CTE, max_rows로 제한(기본값 100, 최대 1000).

refresh_secret

비밀을 다시 가져오고 재연결합니다.

로컬 개발

npm install
npm run build
# point your .claude.json command at the local build:
# "command": "node",
# "args": ["/absolute/path/to/mssql-mcp/dist/index.js"]
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

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

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