sqlite
SQLite MCP Server (複数DBエイリアス登録版)
SQLiteデータベースをMCP (Model Context Protocol) 経由で操作できるサーバーです。 起動時に複数のDBを「エイリアス=パス」の形で登録しておき、ツール呼び出し時にはエイリアス名で DBを選択します。実行時に任意のファイルパスを受け付けないため安全です。
機能(ツール)
list_databases— 登録されているDBのエイリアス一覧を表示list_tables— 指定DB内の全テーブル名を一覧表示describe_table— 指定テーブルのスキーマ(カラム/型/外部キー/インデックス)を取得read_query— SELECT / WITH / PRAGMA を実行(読み取り専用)write_query— INSERT / UPDATE / DELETE / DDL を実行(データ変更)
list_tables/describe_table/read_query/write_query は任意の database 引数(エイリアス名)を
受け付けます。登録DBが1つだけの場合は省略可能(自動的にそれがデフォルトになります)。
2つ以上登録している場合は毎回 database の指定が必須です。
Related MCP server: MCP SQLite Server
セットアップ
npm install起動(動作確認・デバッグ用)
以下は手動でサーバー単体を起動して動作確認する場合のコマンドです。 Claude DesktopやClaude Codeから使う場合は、この節のコマンドを毎回手動で叩く必要はありません (下記「MCPクライアントへの登録」で設定しておけば、各クライアントがこのコマンドを自動的に実行します)。
エイリアス=パス の形式で、1つ以上のDBを指定して起動します。
node index.js main=/path/to/main.db logs=/path/to/logs.db1つだけ登録する場合(この場合は database 引数を省略できます):
node index.js main=/path/to/main.db環境変数
変数名 | 説明 |
| すべての接続を読み取り専用で開く( |
使用例
// 登録済みDB一覧を確認
{ "tool": "list_databases", "arguments": {} }
// "main" DBのテーブル一覧
{ "tool": "list_tables", "arguments": { "database": "main" } }
// "logs" DBに対してクエリ
{ "tool": "read_query", "arguments": { "sql": "SELECT * FROM events", "database": "logs" } }
// DBが1つしか登録されていない場合は database 省略可
{ "tool": "read_query", "arguments": { "sql": "SELECT * FROM users" } }MCPクライアントへの登録
ここで登録するのは「起動コマンドの情報」であり、サーバー自体を起動するわけではありません。
登録しておくと、Claude DesktopやClaude Codeがセッション開始時に、登録された command/args を
使って自動的に node index.js ... を裏側で実行してくれます。手動で起動する必要はなくなります。
Claude Desktop
設定ファイルの場所:
OS | パス |
macOS |
|
Windows |
|
Linux |
|
このファイルに以下を追加します(パスは環境に合わせて絶対パスで指定):
{
"mcpServers": {
"sqlite": {
"command": "node",
"args": [
"/絶対パス/sqlite-mcp-server/index.js",
"main=/絶対パス/main.db",
"logs=/絶対パス/logs.db"
]
}
}
}設定後、Claude Desktopを再起動すると sqlite サーバーのツールが利用可能になります。
Claude Code(CLI / VS Code拡張)
VS Code内のターミナル、または通常のターミナルから claude コマンドで登録するのが基本です。
コマンドを実行すると、内容が設定ファイルに書き込まれます(下記参照)。
claude mcp add --transport stdio sqlite -- node /絶対パス/sqlite-mcp-server/index.js main=/絶対パス/main.db logs=/絶対パス/logs.db--の後ろがそのままサーバー起動コマンドとして渡されます。読み取り専用にしたい場合は
--env SQLITE_READONLY=1を追加します:claude mcp add --transport stdio --env SQLITE_READONLY=1 sqlite -- node /絶対パス/index.js main=/絶対パス/main.dbデフォルトはローカルスコープ(自分の現在のプロジェクトのみ)。全プロジェクトで使うには
--scope user、チームで.mcp.jsonとして共有するには--scope projectを付けます。claude mcp add --transport stdio --scope user sqlite -- node /絶対パス/index.js main=/絶対パス/main.db
登録内容の確認・削除:
claude mcp list
claude mcp remove sqlite設定ファイルを直接手動編集したい場合、スコープによって書き込み先が異なります:
スコープ | 設定ファイルの場所 | 用途 |
|
| 自分の全プロジェクトで使う |
| プロジェクトルートの | チームで共有、gitにコミットする想定 |
|
| 自分だけ・このプロジェクトのみ |
DBのエイリアスを追加・変更したい場合、これらのファイルの該当サーバーの args 配列に
"エイリアス=/絶対パス/db.db" の形式で1項目追加すれば反映されます(JSON構文に注意)。
.mcp.json(projectスコープ)の場合は次のような形になります:
{
"mcpServers": {
"sqlite": {
"command": "node",
"args": [
"/絶対パス/sqlite-mcp-server/index.js",
"main=/絶対パス/main.db",
"logs=/絶対パス/logs.db",
"reports=/絶対パス/reports.db"
]
}
}
}編集後は claude セッションを再起動すると反映されます。
VS CodeでClaude Codeパネルを開く(またはclaudeセッションを開始する)と、list_databasesやread_queryなどのツールが利用可能になります。
注意事項
write_queryはSQLインジェクション対策として?プレースホルダの利用を推奨します(params引数)。テーブル名は英数字とアンダースコアのみを許可するようにバリデーションしています。
エイリアス名は英数字・アンダースコア・ハイフンのみ使用できます。
各DBへの接続は初回アクセス時に開かれ、以降は使い回されます。サーバー終了時にすべてクローズされます。
起動時に登録したエイリアス以外のDBには一切アクセスできません(任意パスの受け付けなし)。
本番データベースに接続する場合は
SQLITE_READONLY=1での起動を検討してください。
This server cannot be deployed
Maintenance
Related MCP Connectors
- dataOAuthco.thinair
PostgreSQL, MySQL, and SQL Server in one session. 26 read-only MCP tools for AI agents.
Text-to-SQL MCP server: read-only queries on PostgreSQL, MySQL and SQL Server with your real schema
Query, join, profile, clean and convert CSV/JSON/Parquet with server-side DuckDB over MCP.
The Instant MCP server is a wrapper around the Instant Platform SDK that enables creating, managing, and updating InstantDB applications directly within an editor. It provides tools for fetching rules files for LLMs, retrieving and pushing app schemas, managing permission rules, and executing database queries. Key capabilities include schema management (get-schema, push-schema), permission management (get-perms, push-perms), query execution, and listing recent query history.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceExposes sqlite3 database functionality as MCP tools, enabling SQL query execution, schema management, and CRUD operations.1MIT
- AlicenseNot gradedqualityDmaintenanceProvides comprehensive SQLite database interaction through MCP, enabling CRUD operations, custom SQL queries, and database exploration.462 npm127MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to manage and query SQLite databases through MCP tools, supporting CRUD operations, schema management, and saved views.4 npmMIT
- FlicenseNot gradedqualityDmaintenanceEnables read-only querying of a local SQLite database via MCP, with tools to list tables, retrieve schema, and execute SELECT/WITH/EXPLAIN queries.-