mcpField
S
sql-mcp-server

sql-mcp-server

ローカル
github.com/prahveentデータベース179 週間前に更新

sql-mcp-server について

sql-mcp-serverは、SQL Serverを利用するユーザーやアプリケーション向けのMCPサーバーです。データベースの一覧、スキーマの取得、パラメーター付きSELECTクエリの実行に対応します。

主な機能

  1. 01SQL Serverデータベースの一覧表示
  2. 02データベーススキーマの取得
  3. 03パラメーター付きSELECTクエリの実行
  4. 04環境変数による接続設定

活用シーン

  1. 01SQL Serverで利用可能なデータベースの確認
  2. 02クエリ前のデータベーススキーマの確認
  3. 03MCPクライアント経由での読み取り専用SELECTクエリ

MCP 対応

MCPクライアントに、データベース一覧、スキーマ取得、SELECTクエリ実行のツールを提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"sql-mcp-server-prahveent": {
"command": "npx",
"args": [
"-y",
"mcp-debug"
]
}
}
}
起動コマンドnpx -y mcp-debug

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmmcp-debug

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

sql-mcp-server

SQL Server データベースとのやり取りを行う、mcp-framework で構築された Model Context Protocol(MCP)サーバーです。

クイックスタート

# Install dependencies
npm install

# Build the project
npm run build

# Start the server
npm start

プロジェクト構成

sql-mcp-server/
├── src/
│   ├── services/       # Services for the application
│   │   └── sql-service.ts
│   ├── tools/          # MCP Tools
│   │   ├── execute-select-query-tool.ts
│   │   ├── get-database-schema-tool.ts
│   │   └── get-databases-tool.ts
│   └── index.ts        # Server entry point
├── .env                # Environment configuration
├── package.json
└── tsconfig.json

利用可能なツール

このプロジェクトには、SQL に特化した以下のツールが含まれています。

  1. get-databases-tool - SQL Server 上で利用可能なデータベースの一覧を取得します
  2. get-database-schema-tool - 指定したデータベースのスキーマ情報を取得します
  3. execute-select-query-tool - データベースに対してパラメーター化された SELECT クエリを実行します

SQL サービス

SqlService クラスは、次のコア機能を提供します。

  • 環境変数を使用した接続文字列の作成
  • SQL Server データベースに対するクエリの実行

環境設定

.env ファイルでデータベース接続を設定します。

DB_SERVER=localhost\SQLEXPRESS
DB_DATABASE=AdventureWorks2019
DB_USERNAME=readonly_user
DB_PASSWORD=StrongPassword!123
DB_PORT=1433
AdventureWorks サンプルデータベース

このプロジェクトでは、AdventureWorks サンプルデータベースを使用します。次のページからダウンロードしてインストールできます。

Microsoft のドキュメントページの手順に従って、データベースのバックアップファイルをダウンロードし、SQL Server インスタンスに復元してください。

読み取り専用ユーザーの作成

アプリケーションが使用する SQL Server の読み取り専用ユーザーを作成するには、次の手順を実行します。

-- Create a new login and user in master database
CREATE LOGIN readonly_user WITH PASSWORD = 'StrongPassword!123';
GO

-- Switch to your target database
USE AdventureWorks2019;
GO

-- create user for the MasterDB login 
CREATE USER readonly_user FOR LOGIN readonly_user;

-- Add the user to the db_datareader role for read-only access
ALTER ROLE db_datareader ADD MEMBER readonly_user;
GO

注:これらのコマンドを実行する前に、SQL Server Management Studio を使用するか、CREATE LOGIN コマンドを実行して SQL Server ログインを作成する必要があります。

VS Code での使用

次の手順に従って、VS Code 内で実行するように MCP サーバーを設定できます。

  1. プロジェクト内に .vscode/mcp.json ファイルを作成します。
    • プロジェクトのルートに .vscode という名前のディレクトリがない場合は、作成します
    • .vscode ディレクトリ内に、次の内容で mcp.json という名前のファイルを作成します
{
  "servers": {
    "sql-mcp-server": {
      "url": "http://localhost:1337/mcp"
    }
  }
}

ビルドとテスト

  1. ツールを変更します
  2. npm run build を実行してコンパイルします
  3. 起動時にサーバーがツールを自動的に読み込みます

デバッグ

mcp-debug ツールを使用して MCP サーバーをデバッグできます。

# Start the server in one terminal
npm start

# In another terminal, run mcp-debug
npx mcp-debug

mcp-debug ツールは、次の操作を行うための CLI インターフェースを提供します。

  • MCP サーバーで利用可能なツールを一覧表示する
  • 指定したパラメーターでツールを実行する
  • サーバーからの完全なレスポンスを確認する

これにより、LLM アプリケーションに統合する前にツールをテストできます。詳しくは、MCP Framework HTTP クイックスタートをご覧ください。

詳細情報

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。