sqlite-reader-mcp
@abhinavnatarajan
About sqlite-reader-mcp
MCP server for reading SQLite databases
Basic information
Config
Add this server to your MCP-compatible client using the configuration below.
{
"mcpServers": {
"sqlite-reader-mcp": {
"command": "uv",
"args": [
"tool",
"install",
"git+https://github.com/abhinavnatarajan/sqlite-reader-mcp"
]
}
}
}Tools
No tools detected
We auto-extract tools from the README. The maintainer can list them under a ## Tools heading to populate this section.
Overview
What is sqlite-reader-mcp?
sqlite-reader-mcp is a lightweight MCP server that provides read-only access to SQLite databases. It allows users to execute SELECT queries, list tables, and describe table schemas. Aimed at developers and AI agents who need safe, programmatic exploration of SQLite databases through the Model Context Protocol.
How to use sqlite-reader-mcp?
Install with uv tool install git+https://github.com/abhinavnatarajan/sqlite-reader-mcp. Then start the server using sqlite-reader-mcp --paths /path/to/database.db /path/to/allowed_directory. Once running, interact via any FastMCP client using the built-in tools: read_query, list_tables, and describe_table.
Key features of sqlite-reader-mcp
- Read-only access – no data modification allowed
- Secure path whitelisting for approved database files
- SQL validation permits only SELECT and WITH statements
- Asynchronous operations with aiosqlite
- Automatic row limiting (default 1000 rows)
- Three MCP tools: read_query, list_tables, describe_table
Use cases of sqlite-reader-mcp
- Safely explore SQLite databases through an MCP interface
- Audit database schema and table structures
- Run read-only analytical queries from an AI agent
- Integrate SQLite data retrieval into LLM-driven workflows
- Provide controlled database access without write risk
FAQ from sqlite-reader-mcp
What tools does sqlite-reader-mcp provide?
It provides three tools: read_query to execute SELECT queries, list_tables to list all tables in a database, and describe_table to get column schema information for a specific table.
How does the server enforce read-only security?
The server enforces read-only by rejecting any SQL that is not a SELECT or WITH statement. It also restricts database access to absolute file paths explicitly passed via the --paths argument, and validates that paths exist.
What are the runtime requirements?
Python 3.13 or later, plus the packages aiosqlite >= 0.21.0, fastmcp >= 2.6.1, and sqlparse >= 0.5.3.
How do I specify which databases the server can access?
Use the --paths (or -p) command-line argument with one or more absolute paths to SQLite database files or directories containing them. All paths must exist and be absolute.
Can I execute multiple SQL statements in one query?
No. The server rejects query strings containing multiple statements to prevent injection or unintended operations. Trailing semicolons are automatically removed.
More Databases MCP servers
Snowflake MCP Server
isaacwassermanClickHouse MCP Server
ClickHouseConnect ClickHouse to your AI assistants.
Redis MCP Server
redisThe official Redis MCP Server is a natural language interface designed for agentic applications to manage and search data in Redis efficiently
Postgres Mcp
crystaldbaPostgres MCP Pro provides configurable read/write access and performance analysis for you and your AI agents.
MongoDB Lens
furey🍃🔎 MongoDB Lens: Full Featured MCP Server for MongoDB Databases
Comments