SQL Server Agent - Modal Context Protocol について
SQL Server Agentは、SQL Serverを利用する開発者や分析担当者向けのコマンドライン対話インターフェースです。自然言語でのクエリやストアドプロシージャ実行に対応し、追加質問でも文脈を保持します。
主な機能
- 01自然言語でSQL Serverを検索
- 02会話形式でストアドプロシージャを実行
- 03追加リクエスト間で文脈を保持
活用シーン
- 01SQLを書かずにデータベースへ質問
- 02自然言語の指示でストアドプロシージャを実行
- 03文脈を引き継いでクエリを調整
MCP 対応
このプロジェクトでは、MCPをクライアントとSQL Serverをつなぐ層として説明しています。コマンドラインクライアントはこの構成で自然言語のデータベース要求を処理します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
SQL Server Agent - Modal Context Protocol
ここで紹介する SQL Server Agent を使うと、LLM とデータソースをつなぐレイヤーとして Modal Context Protocol を活用し、自然言語で SQL Server データベースを操作できます。
主な機能:
- データベースとの対話:平易な英語で SQL Server と会話できます。
- ノーコードのデータベース操作:自然な会話を通じて、データベースのタスクをすべて管理できます。
- ワンクリックでプロシージャを実行:自然なコマンドで、ストアドプロシージャを簡単に実行できます。
- MCP による精度向上:Modal Context Protocol(MCP)を通じて、コマンドをデータにインテリジェントに結び付け、正確なデータベース操作を実現します。
- コンテキストを考慮した会話:Modal Context Protocol によって、スムーズな対話が可能になります。
MCP とは?
MCP(Modal Context Protocol)は、LLM にコンテキストをどのように結び付けるべきかを定める方法論です。 MCP は、AI モデルをさまざまなデータソースやツールに接続するための標準化された方法を提供します。
なぜ MCP なのか?
MCP を使うと、LLM を基盤とするエージェントを構築する際に、複雑なワークフローを簡素化できます。言語モデルはデータソースやツールと頻繁に連携する必要があるためです。
MCP アーキテクチャ:
MCP アーキテクチャはクライアント・サーバーモデルに従っており、単一のクライアントが複数のサーバーとシームレスに連携できます。

MCP-Client:データにアクセスする AI クライアント(LLM)です。
MCP-Protocol:クライアントをサーバーに直接接続します。
MCP-Server:MCP を介して、クライアントがデータソースにアクセスできるようにします。
ローカルデータベース、クラウドデータベース、外部 API:ローカルストレージ、クラウド、またはオンライン API を通じてデータを提供するソースです。
それでは、実装を見ていきましょう
MCP とそのアーキテクチャを理解したところで、SQL Server Agent を使って全体を組み合わせていきましょう。
SQL Server Agent とは?
SQL Server Agent は、自然言語を使って SQL Server データベースを操作できる、対話型 AI クエリ CLI です。Modal Context Protocol を活用し、言語モデルとデータベースの間をつなぐスマートなレイヤーとして、次のことを可能にします。
- SQL を書かずにデータベースにクエリを実行する
- 会話形式のコマンドでストアドプロシージャを実行する
- 複数のステップにわたってコンテキストを維持しながら、複雑な操作を実行する
開発者、アナリスト、技術に詳しくないユーザーのいずれであっても、このエージェントを使えば、直感的で人間らしい対話を通じてデータにアクセスできます。
それでは、起動するまでの手順を見ていきましょう 👇
前提条件
開始する前に、次のものがそろっていることを確認してください。
- Python 3.12+ がマシンにインストールされていること
- 有効な OpenAI API Key
はじめに
次の手順に従って、プロジェクトを起動してください。
1. リポジトリをクローンする
git clone https://github.com/Amanp17/mcp-sql-server-natural-lang.git
cd mcp-sql-server-natural-lang
2. 依存関係をインストールする
pip install -r requirements.txt
3. 環境変数を設定する
プロジェクトのルートに .env ファイルを作成し、次の内容を追加します。
OPENAI_API_KEY=your_openai_api_key
MSSQL_SERVER=localhost
MSSQL_DATABASE=your_database_name
MSSQL_USERNAME=your_username
MSSQL_PASSWORD=your_password
MSSQL_DRIVER={ODBC Driver 17 for SQL Server}
SQL Server Agent の実行
環境と依存関係の設定が完了したら、SQL Server Agent を使って操作を開始できます。
クライアントスクリプトを実行する
次のコマンドを実行して、エージェントを起動します。
python mcp-ssms-client.py
スクリプトが起動すると、次のように入力を求められます。
Enter your Query:
これで、平易な英語でリクエストを入力できます。たとえば、次のように入力します。
Create a Employee table with 10 dummy data in it with their departments and salaries.
エージェントは Modal Context Protocol を使って入力を処理し、SQL Server データベースから関連するデータを返します。
🧠 ヒント:追加の質問をしたり、「従業員とその所属部署を表示して」や「給与が 4 万ドル未満の従業員は何人いますか?」のようにリクエストしたりできます。コンテキストは保持されます!
結論
Modal Context Protocol(MCP) を活用した SQL Server Agent は、データベース操作に会話型 AI の力をもたらします。自然言語と SQL の間を橋渡しすることで、ユーザーはデータを簡単に操作できるようになり、技術的な専門知識がない方も含め、誰もがより直感的かつ効率的にデータベースへアクセスできます。
データのクエリ、プロシージャの実行、複雑なワークフローの構築など、どのような場合でも、このエージェントは SQL Server を操作するためのインテリジェントなインターフェースとして機能します。
ぜひコントリビュートやイシューの作成、機能強化の提案をお寄せください。AI 主導のデータ操作の未来を、ともに築いていきましょう!🚀
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。