项目简介

SQLite Explorer 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为大型语言模型 (LLM) 提供便捷的 SQLite 数据库访问和管理能力。通过此服务器,LLM 可以安全地浏览数据库结构、查询数据、执行更新操作,并进行数据分析,从而扩展 LLM 在数据处理和分析方面的应用场景。

主要功能点

  • 数据库结构探索
    • 列出数据库中的所有表
    • 查看指定表的详细结构信息(包括字段名、类型、约束等)
  • 数据管理
    • 执行只读 SQL 查询
    • 执行数据修改操作(INSERT, UPDATE, DELETE)
    • 安全执行,具备错误处理机制
  • 数据分析
    • 执行基本的统计分析(行数、空值计数、数值列统计信息)
    • 执行详细的数据分析,包括分类数据分布
    • 自动检测数据类型并应用合适的统计方法

安装步骤

  1. 安装 Python 包: 确保你的 Python 环境中已安装必要的 'mcp' 和 'pandas' 库。在命令行中执行:

    pip install mcp pandas
  2. 下载服务器脚本: 从 GitHub 仓库下载 'server.py' 脚本。你可以使用 'curl' 命令直接下载:

    curl -O https://raw.githubusercontent.com/mekanixms/sqlite-mcp-server/main/server.py

    或者直接克隆整个仓库。

  3. 配置环境变量 (可选):

    • 你可以创建一个 '.env' 文件,并在其中设置 'DB_PATH' 环境变量来指定默认的 SQLite 数据库文件路径。
    • 如果不设置,服务器将默认使用用户 होम 目录下的 'mcpDefaultSqlite.db' 文件 (Windows) 或 '~/mcpDefaultSqlite.db' 文件 (macOS)。

服务器配置

为了让 MCP 客户端(例如 Claude Desktop)连接到 SQLite Explorer 服务器,你需要在客户端的配置文件中添加服务器配置信息。以 'claude_desktop_config.json' 为例,你需要将以下 JSON 配置添加到 'mcpServers' 字段中。

{
  "sqlite_explorer": {  // 服务器名称,可以自定义,用于在客户端中标识
    "command": "C:\\path\\to\\python.exe", // Python 解释器路径,根据你的实际安装路径修改
    "args": [
      "C:\\path\\to\\sqlite-mcp-server\\server.py" // server.py 脚本的路径,根据你的实际存放路径修改
    ]
  }
}

注意:

  • 请将 'C:\path\to\python.exe' 替换为你的 Python 解释器的实际路径。
  • 请将 'C:\path\to\sqlite-mcp-server\server.py' 替换为你下载的 'server.py' 脚本的实际存放路径。
  • 如果你使用了 '.env' 文件配置 'DB_PATH',请确保 '.env' 文件与 'server.py' 脚本在同一目录下,或者使用绝对路径配置 'DB_PATH' 环境变量。

基本使用方法

  1. 启动服务器: 配置完成后,启动 SQLite Explorer 服务器。通常,MCP 客户端会自动启动配置的服务器。你也可以在命令行中手动运行 'server.py' 脚本来启动服务器。

  2. 在 MCP 客户端中使用: 在支持 MCP 协议的 LLM 客户端中(例如 Claude Desktop),你可以通过以下方式与 SQLite Explorer 服务器交互:

    • 浏览数据库结构: 使用 'schema://tables' 资源获取数据库中的表列表,使用 'schema://{table}' 资源获取指定表的结构信息。
    • 执行 SQL 查询: 使用 'query' 工具执行 SQL 查询语句。例如,查询 'users' 表的前 5 行数据:
      SELECT * FROM users LIMIT 5
    • 修改数据: 使用 'update_data' 工具执行数据更新操作(INSERT, UPDATE, DELETE)。
    • 数据分析: 使用 'analyze_table' 工具对指定表进行统计分析。可以指定 'analysis_type' 参数为 'basic' 或 'detailed' 来选择分析类型。

请参考 MCP 客户端的文档,了解如何在客户端中调用资源和工具,并与 SQLite Explorer 服务器进行交互。

信息

分类

数据库与文件