npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@graduenz/mcp-sqlite-server

v1.1.0

Published

MCP server for SQLite databases using better-sqlite3

Readme

mcp-sqlite-server

An MCP (Model Context Protocol) server that provides tools and resources for interacting with SQLite databases via better-sqlite3.

Table of Contents

Features

  • Query & Execute -- run read and write SQL statements
  • Schema Introspection -- list tables, describe columns/indexes, view full DDL
  • Project-Level Configuration -- database settings live in a .mcp-sqlite.json file, not in the MCP client config
  • WAL Mode -- enabled by default for better concurrency
  • Read-Only Mode -- optionally prevent write operations

Configuration

Create a .mcp-sqlite.json file in the project/workspace that will use this MCP server:

{
  "database": "./data.sqlite",
  "readonly": false,
  "wal": true
}

| Field | Type | Default | Description | |------------|---------|---------|-----------------------------------------------------------------| | database | string | — | Required. Path to the SQLite file (relative to config file) | | readonly | boolean | false | Open the database in read-only mode | | wal | boolean | true | Enable WAL journal mode |

The server resolves the config file in this order:

  1. --config <path> CLI argument
  2. .mcp-sqlite.json in the current working directory

Tools

query

Execute a read-only SQL query (SELECT) and return results as JSON.

Input: { "sql": "SELECT * FROM users LIMIT 10" }

execute

Execute a write SQL statement (INSERT, UPDATE, DELETE, CREATE TABLE, etc.). Disabled in read-only mode.

Input: { "sql": "INSERT INTO users (name) VALUES ('Alice')" }

list_tables

List all tables and views in the database.

Input: none

describe_table

Get detailed schema for a specific table including columns, types, constraints, and indexes.

Input: { "table": "users" }

Resources

| URI | Description | |-----------------------------------|------------------------------------------| | sqlite://schema | Full database schema (all DDL statements)| | sqlite://tables | List of all tables and views | | sqlite://tables/{name}/schema | Schema details for a specific table |

Contributing

See CONTRIBUTING.md for setup, release/publish workflow, build instructions, testing, code conventions, and guidance on adding new tools, resources, and config fields.

Cursor MCP Configuration

Add the following to .cursor/mcp.json in any project that wants to use this server:

{
  "mcpServers": {
    "mcp-sqlite-server": {
      "command": "npx",
      "args": ["-y", "@graduenz/mcp-sqlite-server"]
    }
  }
}

The server will look for .mcp-sqlite.json in the workspace root (the working directory Cursor launches the server from).

To use an explicit config path:

{
  "mcpServers": {
    "mcp-sqlite-server": {
      "command": "npx",
      "args": [
        "-y",
        "@graduenz/mcp-sqlite-server",
        "--config",
        ".mcp-sqlite.json"
      ]
    }
  }
}

Then create .mcp-sqlite.json in the project root:

{
  "database": "./data.sqlite",
  "readonly": false,
  "wal": true
}

License

MIT