fastmcp-sqltools について
fastmcp-sqltoolsは、PostgreSQL、MySQL、SQLiteに接続するFastMCPサーバーです。テーブルとスキーマの確認、クエリ実行に加え、安全チェック付きの読み取り専用クエリにも対応します。
主な機能
- 01データベースのテーブル一覧
- 02テーブルスキーマの確認
- 03SQLクエリの実行
- 04安全チェック付き読み取り専用SELECTクエリ
- 05PostgreSQL、MySQL、SQLiteに対応
活用シーン
- 01利用可能なテーブルとスキーマを確認
- 02MCPクライアントからデータベースクエリを実行
- 03安全チェック付きの読み取り専用SELECTを実行
- 04PostgreSQL、MySQL、SQLiteデータベースに接続
MCP 対応
データベースのテーブル、スキーマ、クエリ操作をMCPクライアント向けのツールとして公開します。DATABASE_URL環境変数からデータベースの種類を判別します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
4掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| schema | any | いいえ | データベースのスキーマ名(デフォルト:None、データベースのデフォルトスキーマを使用) |
詳細
FastMCP SQL Tools
mcp-name: io.github.atarkowska/fastmcp-sqltools
FastMCP で構築された Model Context Protocol(MCP)サーバーです。PostgreSQL、MySQL、SQLite に対応し、SQL データベースへのアクセスを提供します。
機能
- list_tables: データベース内のすべてのテーブルを一覧表示します
- get_table_schema: テーブルの列、型、制約、インデックスなど、詳細なスキーマ情報を取得します
- execute_query: 任意の SQL クエリ(INSERT、UPDATE、DELETE、DDL など)を実行します
- execute_safe_query: 安全性チェックを追加した読み取り専用の SELECT クエリを実行します
対応データベース
- PostgreSQL: asyncpg 経由で完全に対応
- MySQL: aiomysql 経由で完全に対応
- SQLite: aiosqlite 経由で完全に対応
サーバーは DATABASE_URL 環境変数からデータベースの種類を自動的に検出します。
設定
以下を claude_desktop_config.json に追加します。
{
"mcpServers": {
"sql-mcp-tools": {
"command": "uvx",
"args": [
"fastmcp-sqltools"
],
"env": {
"DATABASE_URL": "<your-database-url>"
}
}
}
}
データベース URL の形式
DATABASE_URL は、次のいずれかの形式で指定してください。
- PostgreSQL:
postgresql://user:password@host:port/databaseまたはpostgres://user:password@host:port/database - MySQL:
mysql://user:password@host:port/database - SQLite:
sqlite:///path/to/database.db(絶対パスにはスラッシュを3つ使用します)
ライセンス
このプロジェクトは、GNU Affero General Public License v3.0(AGPL-3.0)のもとでライセンスされています。 詳細は LICENSE ファイルを参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。