mcpField
M
Mcp Sql Server

Mcp Sql Server

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

Mcp Sql Server について

Mcp Sql Serverは、MSSQLデータベースを扱うAIアシスタント向けのMCPサーバーです。スキーマ確認、パラメーター化クエリ、バッチ処理、性能監視を備え、現在はMSSQLのみ対応しています。

主な機能

  1. 01データベースのスキーマとメタデータ確認
  2. 02パラメーター化SQLクエリの実行
  3. 03バッチクエリとトランザクション処理
  4. 04クエリ統計とレポートの確認
  5. 05コネクションプールの監視

活用シーン

  1. 01テーブルとカラムの構造確認
  2. 02アクティブユーザーや注文の検索
  3. 03遅いクエリとプール状態の確認

MCP 対応

MCPクライアントに、スキーマ確認、クエリ実行、バッチ処理、性能監視のツールを提供します。READMEではClaude Desktop、CursorなどのMCP対応ツールとの接続が示されています。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"sql-ryudg": {
"command": "npx",
"args": [
"-y",
"@donggyunryu/mcp-sql"
],
"env": {
"DB_HOST": "<DB_HOST>",
"DB_PORT": "<DB_PORT>",
"DB_DATABASE": "<DB_DATABASE>",
"DB_USER": "<DB_USER>",
"DB_PASSWORD": "<DB_PASSWORD>",
"DB_ENCRYPT": "<DB_ENCRYPT>",
"DB_TRUST_SERVER_CERTIFICATE": "<DB_TRUST_SERVER_CERTIFICATE>"
}
}
}
}
起動コマンドnpx -y @donggyunryu/mcp-sql
設定が必要な環境変数
DB_HOST
DB_PORT
DB_DATABASE
DB_USER
DB_PASSWORDシークレット
DB_ENCRYPT
DB_TRUST_SERVER_CERTIFICATE

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

パッケージ
npm@donggyunryu/mcp-sql

ツール

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

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

詳細

MCP SQL Server

Version License Node TypeScript

MSSQL サポートから始まる、SQL データベースへの包括的なアクセスを提供する Model Context Protocol サーバーです。このサーバーにより、AI アシスタントはデータベーススキーマの確認、クエリの実行、エンタープライズグレードのセキュリティとパフォーマンス監視を備えたデータベース操作を行えます。

現在の状況:MSSQL は完全にサポートされています。 MySQL と PostgreSQL のサポートは今後のリリースで追加予定です。

✨ 主な機能

動画1 動画2 動画3
  • データベースのサポート:MSSQL を完全にサポート(MySQL と PostgreSQL は近日対応予定)
  • スキーマの確認:包括的なデータベース構造の分析とメタデータの抽出
  • クエリの実行:パラメーター化クエリと結果のフォーマットに対応した、安全な SQL 実行
  • パフォーマンス監視:リアルタイムのメトリクス、クエリ統計、パフォーマンスレポート
  • セキュリティ優先:SQL インジェクションの防止、接続の暗号化、アクセス制御
  • バッチ操作:効率的な一括クエリの実行とトランザクション管理
  • コネクションプーリング:設定可能なプール設定による、最適化された接続管理
  • MCP 連携:Claude Desktop、Cursor、およびその他の MCP 互換ツールをネイティブサポート

📦 インストールとセットアップ

前提条件
  • Node.js 18.0.0 以降 - こちらからダウンロード
  • データベースサーバー:Microsoft SQL Server(MSSQL)
  • AI アシスタント:Claude Desktop、Cursor、または MCP 互換ツール

注:現在サポートされているのは MSSQL のみです。MySQL と PostgreSQL のサポートは今後のリリースで追加される予定です。

クイックインストール
# Install globally via NPM
npm install -g @donggyunryu/mcp-sql
基本設定

env.example を参照してください

データベース設定を記述した .env ファイルを作成します:

# Create .env file with your database settings
# DB_TYPE=mssql # Current only MSSQL supported
DB_HOST=localhost
DB_PORT=1433
DB_DATABASE=your_database
DB_USER=your_username
DB_PASSWORD=your_password
DB_ENCRYPT=false
DB_TRUST_SERVER_CERTIFICATE=true
接続テスト
# Test your database connection
npm run test:db # in local environment

#or
npx @donggyunryu/mcp-sql test:db

🚀 クイックスタート

ローカル環境
  1. リポジトリをクローンします:

    git clone https://github.com/ryudg/mcp-sql.git
    cd mcp-sql
    
  2. 依存関係をインストールします

    npm install
    
  3. プロジェクトをビルドします

    npm run build
    
  4. mcp.json、setting.json、または claude_desktop_config.json に追加します

    {
      "mcpServers": {
        "mcp-sql": {
          "command": "node",
          "args": ["/full/path/to/mcp-mysql/build/index.js"],
          "env": {
            // "DB_TYPE": "mssql", # Current only MSSQL supported
            "DB_SERVER": "localhost",
            "DB_PORT": "1433",
            "DB_DATABASE": "your_database",
            "DB_USER": "your_username",
            "DB_PASSWORD": "your_password",
            "DB_ENCRYPT": "false",
            "DB_TRUST_SERVER_CERTIFICATE": "true",
            "NODE_ENV": "development",
            "LOG_LEVEL": "info"
          }
        }
      }
    }
    
AI アシスタントの設定

Claude Desktop の場合:

claude_desktop_config.json に追加します:

{
  "mcpServers": {
    "mcp-sql": {
      "command": "npx",
      "args": ["-y", "@donggyunryu/mcp-sql"],
      "env": {
        // "DB_TYPE": "mssql", # Current only MSSQL supported
        "DB_HOST": "localhost",
        "DB_PORT": "1433",
        "DB_DATABASE": "your_database",
        "DB_USER": "your_username",
        "DB_PASSWORD": "your_password",
        "DB_ENCRYPT": "false",
        "DB_TRUST_SERVER_CERTIFICATE": "true"
      }
    }
  }
}

Cursor(VSCode、Windsurf などの IDE)の場合:

MCP 設定に追加します:

{
  "mcpServers": {
    "mcp-sql": {
      "command": "npx",
      "args": ["-y", "@donggyunryu/mcp-sql"],
      "env": {
        // "DB_TYPE": "mssql", # Current only MSSQL supported
        "DB_HOST": "localhost",
        "DB_PORT": "1433",
        "DB_DATABASE": "your_database",
        "DB_USER": "your_username",
        "DB_PASSWORD": "your_password",
        "DB_ENCRYPT": "false",
        "DB_TRUST_SERVER_CERTIFICATE": "true"
      }
    }
  }
}
利用開始

AI アシスタントを再起動して、次のように試してみてください:

"Show me all tables in my database"
"What's the structure of the users table?"
"Find all active users from the last 30 days"

💬 使用例

スキーマの確認
"Show me all tables in the database"
"What's the structure of the users table?"
"List all columns in the orders table with their data types"
データのクエリ
"Find all active users registered in the last 30 days"
"Show me the top 10 customers by total order value"
"Get all pending orders from this month"
パフォーマンス監視
"Show me current connection pool status"
"What are the slowest queries in the last hour?"
"Generate a performance report for today"

🛠️ 利用可能なツール

MCP SQL サーバーは、データベース操作のために次のツールを提供します:

スキーマと探索ツール
ツール説明パラメーター
list_tablesデータベース内のすべてのテーブルを一覧表示pattern(任意):フィルターパターン
describe_tableテーブル構造の詳細を取得table_name:説明するテーブルの名前
get_schemaデータベーススキーマ全体を取得include_system_tables:システムテーブルを含める
get_schema_statisticsスキーマ統計情報を取得なし
クエリ実行ツール
ツール説明パラメーター
execute_querySQL クエリを安全に実行しますquery:SQL 文
parameters:バインドパラメーター
start_batch_processing複数のクエリをバッチ処理しますqueries:SQL 文の配列
パフォーマンスとモニタリングのツール
ツール説明パラメーター
get_connection_pool_statusデータベース接続プールの状態を取得しますなし
get_query_statsクエリ実行統計を取得しますperiod:期間(任意)
start_performance_monitoringパフォーマンスモニタリングを開始しますinterval:モニタリング間隔(ms)
generate_performance_reportパフォーマンス分析レポートを生成しますtimeRange:レポート対象期間
clear_cachesキャッシュデータを初期化しますなし

🛡️ セキュリティ

  • 接続の暗号化:TLS/SSL 接続をサポートします
  • パラメーターのバインド:SQL インジェクションを防止します
  • アクセス制御:データベースユーザーの権限に基づいて制御します
  • ロギング:クエリ実行を完全に記録します
  • 入力検証:包括的な入力サニタイズを行います
セキュリティのベストプラクティス
  • 必要最小限の権限を持つ、専用のデータベースユーザーを使用してください
  • 可能な場合は、データベース接続の SSL/TLS 暗号化を有効にしてください
  • 適切な上限を設定して、接続プーリングを使用してください
  • 認証情報をバージョン管理にコミットしないでください
  • 機密性の高い設定には、すべて環境変数を使用してください

🗺️ ロードマップ

今後追加予定の機能
  • 🔮 マルチデータベース対応

    • MySQL アダプターの実装
    • PostgreSQL アダプターの実装
    • 統一されたデータベースインターフェース
  • ⚡ パフォーマンスとキャッシュ

    • クエリ結果のキャッシュシステム
    • 高度なパフォーマンス最適化
    • 接続プールの機能強化
  • 🧪 テストと品質

    • 包括的なテストカバレッジ(100%)
    • 自動化された CI/CD パイプライン
    • パフォーマンスベンチマーク
  • 🚀 高度な機能

    • GraphQL 統合のサポート
    • 強化されたモニタリングダッシュボード
    • 拡張性を高めるプラグインアーキテクチャー
  • 📊 分析とインサイト

    • 高度なクエリ分析
    • データベースのパフォーマンスに関するインサイト
    • 使用状況の統計とレポート

変更履歴を見る

サポートとコミュニティ

📝 ライセンス

このプロジェクトは MIT License のもとでライセンスされています。詳細は LICENSE ファイルをご覧ください。


AI を活用した開発コミュニティのために作られました

MCP SQL Server v1.0.0 - AI とデータベースをつなぐ

コメント

MCP は初めてですか?

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

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