Skip to main content
Glama
nao9net
by nao9net

这是一个通过 MCP(Model Context Protocol)操作 SQLite 数据库的服务器。 启动时以“别名=路径”的形式注册多个数据库,调用工具时通过别名选择数据库。由于运行时不接受任意文件路径,因此很安全。

功能(工具)

  • list_databases — 显示已注册数据库的别名列表

  • list_tables — 列出指定数据库中的所有表名

  • describe_table — 获取指定表的模式(列/类型/外键/索引)

  • read_query — 执行 SELECT / WITH / PRAGMA(只读)

  • write_query — 执行 INSERT / UPDATE / DELETE / DDL(数据变更)

list_tables/describe_table/read_query/write_query 接受任意 database 参数(别名)。如果只注册了一个数据库,则可以省略(自动将其设为默认)。如果注册了两个或更多,则每次都必须指定 database。

Related MCP server: MCP SQLite Server

设置

npm install

启动

以“别名=路径”的形式指定一个或多个数据库启动。

node index.js main=/path/to/main.db logs=/path/to/logs.db

只注册一个时(此时可以省略 database 参数):

node index.js main=/path/to/main.db

环境变量

变量名

说明

SQLITE_READONLY=1

以只读方式打开所有连接(write_query 将不可用)

使用示例

// 登録済み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_desktop_config.json 中添加以下内容(路径请根据环境使用绝对路径指定):

{
  "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

在 VS Code 中打开 Claude Code 面板(或启动 claude 会话)后,即可使用 list_databases、read_query 等工具。

注意事项

  • 为防止 SQL 注入,write_query 建议使用 ? 占位符(params 参数)。

  • 表名仅允许英文字母、数字和下划线,并已进行验证。

  • 别名只能使用英文字母、数字、下划线和连字符。

  • 与各数据库的连接在首次访问时打开,之后会重复使用。服务器关闭时全部关闭。

  • 无法访问启动时注册的别名以外的任何数据库(不接受任意路径)。

  • 连接生产数据库时,请考虑使用 SQLITE_READONLY=1 启动。

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Exposes sqlite3 database functionality as MCP tools, enabling SQL query execution, schema management, and CRUD operations.
    1
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides comprehensive SQLite database interaction through MCP, enabling CRUD operations, custom SQL queries, and database exploration.
    462 npm
    127
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to manage and query SQLite databases through MCP tools, supporting CRUD operations, schema management, and saved views.
    4 npm
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables read-only querying of a local SQLite database via MCP, with tools to list tables, retrieve schema, and execute SELECT/WITH/EXPLAIN queries.
    -