What Is SQLite MCP Server?

SQLite MCP Server exposes full SQLite database access to MCP-compatible clients — create tables, run queries, and work with local data files directly from Claude. It is maintained by Anthropic as part of the official modelcontextprotocol/servers repository.


Quick Facts

FieldValue
Package@modelcontextprotocol/server-sqlite
Installnpx @modelcontextprotocol/server-sqlite /path/to/database.db
Compatible withClaude Code, Claude Desktop
Statusactive
GitHubgithub.com/modelcontextprotocol/servers/tree/main/src/sqlite

What You Can Do With It

  • Local database queries: Run SELECT statements and other SQL against any .db file on your machine.
  • Table creation and schema design: Define tables, set column types and constraints, and iterate on schema structure through conversation.
  • Data analysis: Aggregate, filter, and join data across tables to extract summaries or spot patterns in local datasets.
  • CSV to SQLite workflows: Import CSV data into SQLite for structured querying — particularly useful when paired with a file-reading step to load the raw data first.

How to Set It Up

Prerequisites: Node.js installed (npx ships with Node ≥ 14).

Step 1 — Test the server manually:

npx @modelcontextprotocol/server-sqlite /path/to/your/database.db
Replace `/path/to/your/database.db` with an existing file path or a new path where the database should be created.

**Step 2 — Add to Claude Desktop (`claude_desktop_config.json`):**

Locate your config file:
- macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
- Windows: `%APPDATA%\Claude\claude_desktop_config.json`

Add the following under `mcpServers`:

```json
{
  "mcpServers": {
    "sqlite": {
      "command": "npx",
      "args": [
        "@modelcontextprotocol/server-sqlite",
        "/absolute/path/to/database.db"
      ]
    }
  }
}

Step 3 — Add to Claude Code (.claude/mcp.json):

{
  "mcpServers": {
    "sqlite": {
      "command": "npx",
      "args": [
        "@modelcontextprotocol/server-sqlite",
        "/absolute/path/to/database.db"
      ]
    }
  }
}

Restart Claude Desktop or reload Claude Code after saving the config.


Works Best With

Both Claude Code and Claude Desktop are fully supported. Claude Code is a natural fit for development workflows where you need to query a local project database alongside code. Claude Desktop suits ad hoc data analysis sessions where you want to interrogate a SQLite file through conversation without writing scripts.


Known Limitations

  • Single database per server instance: The database path is passed at startup. To work with multiple databases, you need to run separate server instances and register each in your config.
  • Local files only: The server reads from and writes to the local filesystem. It has no support for remote databases, connection strings, or network-accessible SQLite files.
  • No authentication layer: Any MCP client that connects to the running server has full read/write access to the specified database. Do not point this at files containing sensitive data in shared or untrusted environments.
  • Write operations are unrestricted: INSERT, UPDATE, DELETE, and DROP are not blocked. There is no read-only mode documented; assume all SQL is executable.
  • npx cold starts: Running via npx without a cached version will download the package on first run, adding latency.

Community Resources

This article contains affiliate links. We may earn a commission at no extra cost to you. Learn more.

Share: X