MySQL Ops MCP について
MySQL Ops MCPは、Claude Code、Cursor、CodexなどのAIツールからMySQLに接続するサーバーです。スキーマ確認、クエリ、CRUDに対応し、データ削除とテーブル削除にはクライアントの承認を求めます。
主な機能
- 01データベース、テーブル、スキーマ、インデックス、DDLを参照
- 02SELECTクエリを実行
- 03テーブル作成と行の挿入・更新
- 04データ削除とテーブル削除に承認を要求
- 05ツールごとにSQL文を検証
活用シーン
- 01AIツールからデータベーススキーマを確認
- 02MySQLで最近の注文を検索
- 03SQL文の検証付きでレコードを挿入・更新
- 04実行前にデータ削除やテーブル削除を確認
MCP 対応
MCPサーバーは、MySQLの参照、クエリ、CRUD用ツールをMCPクライアントに公開します。データ削除とテーブル削除にはクライアントの明示的な承認が必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y mysql-ops-mcpDB_HOSTMySQL host, default localhostDB_PORTMySQL port, default 3306DB_USERMySQL user, default rootDB_PASSWORDシークレットMySQL passwordDB_DATABASEDefault database; can also be passed per tool callローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MySQL Ops MCP
英語 | 简体中文
MySQL データベース用の MCP サーバーです。Claude Code/Cursor/Codex などの AI ツールから自然言語で MySQL データベースを操作できます。データベースやテーブルの参照、スキーマの確認、クエリの実行、CRUD 操作に対応しています。破壊的操作(DELETE/DROP)は、ユーザーによる明示的な承認が必要です。
特長
- 🗄️ スキーマの参照:データベースの一覧表示、テーブルの一覧表示、テーブル構造の確認、テーブルの詳細情報(インデックス、DDL、統計情報)の取得
- 🔍 クエリ:任意のデータベースに対する
SELECTクエリの実行 - ✏️ CRUD:テーブルの作成、挿入、更新に対応。各ツールで SQL 文を検証します
- 🔐 承認が必要な破壊的操作:
delete_dataとdrop_tableには、クライアントで常にユーザーの明示的な確認が必要です - 🔌 インストール不要:
npxで実行でき、環境変数だけで設定できます
インストール
Node.js 18 以降が必要です。クローンやビルドは不要です。初回使用時に npx が公開済みの npm パッケージを取得して実行します(下記の設定を参照)。
代わりにソースからビルドする場合(開発時など):
git clone https://github.com/GT-dinuo/mysql-ops-mcp.git
cd mysql-ops-mcp
npm install
npm run build
ビルド出力先は dist/ で、エントリーポイントは dist/index.js です。
設定
このツールを使用する各プロジェクトで、.mcp.json を作成(または追記)します。
{
"mcpServers": {
"mysql": {
"command": "npx",
"args": ["-y", "mysql-ops-mcp"],
"env": {
"DB_HOST": "localhost",
"DB_PORT": "3306",
"DB_USER": "root",
"DB_PASSWORD": "your_password",
"DB_DATABASE": "your_database"
}
}
}
}
ソースからビルドした場合は、コマンドをローカルのビルドに設定します。"command": "node"、"args": ["/absolute/path/to/mysql-ops-mcp/dist/index.js"] のように指定してください。
環境変数
| 変数 | 必須 | 説明 |
|---|---|---|
DB_HOST | いいえ | MySQL ホスト。既定値は localhost です |
DB_PORT | いいえ | MySQL ポート。既定値は 3306 です |
DB_USER | いいえ | MySQL ユーザー。既定値は root です |
DB_PASSWORD | いいえ | MySQL パスワード |
DB_DATABASE | いいえ | 既定のデータベース。省略した場合は、ツールの呼び出しごとに database を渡してください |
使い方
設定後、AI ツールで自然言語で依頼するだけです。
List all databases
Show the structure of the users table
Query the 10 most recent orders
Get full info for the users table — indexes and DDL included
Insert a test record into the users table
Delete the test record you just inserted ← the client will ask for your approval first
破壊的操作(delete_data、drop_table)は、実行前に MCP クライアントで必ず確認されます。取り消せない操作が確認なしで実行されることはありません。
ツール一覧
| ツール | 説明 |
|---|---|
list_databases | すべてのデータベースを一覧表示 |
list_tables | データベース内のテーブルを一覧表示 |
describe_table | テーブルの列と型を表示 |
get_table_info | テーブルの詳細情報(列、インデックス、DDL、統計情報)を取得 |
query | SELECT クエリを実行 |
create_table | テーブルを作成(CREATE TABLE のみ) |
insert | 行を挿入(INSERT のみ) |
update | 行を更新(UPDATE のみ) |
delete_data | 行を削除(ユーザーの承認が必要) |
drop_table | テーブルを削除(ユーザーの承認が必要) |
execute_sql | 任意の SQL 文を実行 |
セキュリティ
- 破壊的操作には承認が必要です:
delete_dataとdrop_tableは MCP クライアントのツール呼び出し確認によって制御されます。操作ごとに承認または拒否してください。 - SQL 文の検証:各書き込みツールは、それぞれに対応する SQL 動詞のみを受け付けます(例:
queryはSELECT以外を拒否します)。 - 最小権限のアカウントを使用してください:本番環境では
rootで接続しないでください。AI が操作できるデータベースに限定した MySQL ユーザーを作成してください。 - 認証情報をコミットしないでください:実際のパスワードを含む
.env/.mcp.jsonはバージョン管理に含めないでください(.gitignoreではすでに.envが対象になっています)。
接続のテスト
.env を設定した後(env.example からコピー)、クライアントに接続する前に接続を確認できます。
cp env.example .env # fill in real credentials
npm run test-connection
開発
npm run dev # watch mode, recompiles on change
npm run build # build to dist/
npm start # run the built Server
ライセンス
MIT © 2026 mysql-ops-mcp
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。