Skip to main content
Glama
AdrianCY

Microsoft SQL Server MCP

by AdrianCY

mssql-mcp

mssqlドライバーを使用してMicrosoft SQL Serverに接続するMCPサーバー(stdio)です。ツールの引数はValibotで定義および検証され、クライアント用のJSONスキーマは@valibot/to-json-schemaで生成されます。

実装上の注意: このプロジェクトでは、現在のSDKのMcpServer.registerToolパスがスキーマのエクスポートと検証にZodを使用するように構築されているため、McpServerではなく低レベルの@modelcontextprotocol/sdkServerクラスを使用しています。ツールはListTools / tools/callハンドラーで登録され、ハンドラー内でValibotによる解析が行われます。

ツール

  • mssql_query — T-SQLバッチを実行します。recordsetsrowsAffectedを返します。設定されている場合、SET ROWCOUNTを介してMSSQL_MAX_ROWSを尊重します。

  • mssql_list_tablesINFORMATION_SCHEMA.TABLESからベーステーブルを取得します。オプションでスキーマフィルターを指定できます。

  • mssql_describe_tableINFORMATION_SCHEMA.COLUMNSから列のメタデータを取得します。

環境変数

.env.exampleを参照してください。必須項目: MSSQL_SERVERMSSQL_USERMSSQL_PASSWORDMSSQL_DATABASE

  • MSSQL_ALLOW_WRITES — デフォルトはオフです。オフの場合、ヒューリスティックにより一般的な書き込み/DDL/execキーワードがブロックされます(データベースの権限の代わりにはなりません)。

  • MSSQL_MAX_ROWS — 設定されている場合、mssql_queryのバッチをSET ROWCOUNTでラップします。

  • MSSQL_ENCRYPT / MSSQL_TRUST_SERVER_CERTIFICATE — ドライバーに渡されます(encryptはデフォルトでtrue)。

ビルドと実行

pnpm install
pnpm run build
pnpm start

開発(ビルドなし):

pnpm dev

MCP下で実行する場合は、stdoutにログを書き込まないでください。プロトコルはstdoutを使用するためです。起動時のエラーはconsole.errorを介してstderrに出力されます。

Cursor MCP設定

チェックアウトしたディレクトリへの絶対パスを使用してください。ユーザーMCP設定の例:

{
  "mcpServers": {
    "mssql": {
      "command": "node",
      "args": ["/home/adrian/code/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"
      }
    }
  }
}

(上記のように)nodecommandとして使用してください。commandpnpmnpxに設定しないでください。pnpmが失敗したりstdoutに出力したりすると、stdoutはJSON-RPC専用である必要があるため、CursorはUnexpected token … "ERR_PNPM_"… is not valid JSONのようなエラーを表示します。

ビルドなしのDevモード(引き続きnodeを使用)

nodenode_modulesからtsxを解決できるように、**cwd**をこのリポジトリに設定してください:

{
  "mcpServers": {
    "mssql": {
      "command": "node",
      "args": ["--import", "tsx", "/home/adrian/code/mcp/src/index.ts"],
      "cwd": "/home/adrian/code/mcp",
      "env": { }
    }
  }
}

上記の例と同じようにenvを入力してください。事前にローカルでpnpm installを実行し、tsxが存在するようにしてください。

-
security - not tested
F
license - not found
-
quality - not tested

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

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