mcpField
S
sqlfmt-mcp

sqlfmt-mcp

ローカル
github.com/MukundaKatta開発ツール020 週間前に更新

sqlfmt-mcp について

sqlfmt-mcp は、19 種類の SQL 方言を一貫した形式に整える MCP サーバーです。レビューや差分比較で安定した SQL 出力を必要とするコーディングエージェントや後続ツール向けです。

主な機能

  1. 0119 種類の SQL 方言を整形
  2. 02キーワードの大文字小文字とインデントを指定
  3. 03対応方言の一覧表示

活用シーン

  1. 01コードレビュー時の SQL 形式統一
  2. 02差分生成前のクエリ整形

MCP 対応

MCP クライアントに `format_sql` と `list_dialects` ツールを提供し、SQL の整形と対応方言の確認を可能にします。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"mukundakatta-sqlfmt": {
"command": "npx",
"args": [
"-y",
"@mukundakatta/sqlfmt-mcp"
]
}
}
}
起動コマンドnpx -y @mukundakatta/sqlfmt-mcp

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

パッケージ
npm@mukundakatta/sqlfmt-mcp0.1.0

ツール

2

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
sqlstringはい整形する生の SQL。
dialectenumいいえ汎用の `sql` は大半の ANSI のケースに対応します。特定の方言でのみ使える構文には、その方言を明示的に選択してください。sql | bigquery | db2 | db2i | duckdb | hive | mariadb | mysql | n1ql | plsql | postgresql | redshift | singlestoredb | snowflake | spark | sqlite | tidb | transactsql | trino
use_tabsbooleanいいえ
tab_widthintegerいいえ
keyword_caseenumいいえpreserve | upper | lower

詳細

@mukundakatta/sqlfmt-mcp

19 種の方言に対応した、決定的な SQL フォーマット用 MCP サーバーです。

ツール

  • format_sql(sql, dialect?, keyword_case?, tab_width?, use_tabs?) — 指定した方言でフォーマットします(デフォルトは ANSI 用の sql です)。フォーマット済みテキストと行数を返します。
  • list_dialects() — 対応している方言の一覧を返すため、LLM はフォーマット前に確認できます。

開発の背景

LLM はターンごとに SQL のフォーマットが一貫しません。同じクエリでも、インデントやキーワードの大文字・小文字が異なることがあります。SQL の差分を確認するコードレビューエージェントや後続ツールには、統一された形式が必要です。十分にテストされた sql-formatter ライブラリをここでラップすることで、それを実現できます。

対応している方言

sql、bigquery、db2、db2i、duckdb、hive、mariadb、mysql、n1ql、plsql、postgresql、redshift、singlestoredb、snowflake、spark、sqlite、tidb、transactsql、trino。

インストール — Claude Desktop

{
  "mcpServers": {
    "sqlfmt": { "command": "npx", "args": ["-y", "@mukundakatta/sqlfmt-mcp"] }
  }
}

Cursor / Cline / Windsurf / Zed でも同様です。

ライセンス

MIT OR Apache-2.0。

コメント

MCP は初めてですか?

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

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