.db files on the connector host. It provides read-only queries, optional mutating SQL (when allow_write is enabled), schema introspection, and row sampling. Use it for local analytics, embedded app data, prototyping, lightweight ETL, and schema exploration before promoting logic to Postgres or MySQL.
Prerequisites
- A SQLite database file (
.db) accessible to the connector runtime - Read access for reporting workflows; write access only when
allow_writeis enabled database_pathmust resolve underdata_rootwhen that constraint is configured- project_contributor access
Connect in AgentRuntime
Configure the database path
On Connections, click New custom connection (or edit the MCP instance profile) and set:
default_database_path— absolute or relative path to your.dbfile (e.g./data/app/metrics.db)data_root— optional root directory; alldatabase_pathvalues must resolve under itallow_write— set totrueonly if workflows needsqlite_executeorsqlite_execute_sql
Add sqlite MCP instance
Go to MCP, click Add instance for sqlite, set path and write settings on Instance config, then set the profile active.
Test with database info
Add a workflow with mcp_call →
sqlite_get_database_info. Run it to confirm the file path and SQLite version before queries.What you can build
- CSV ingest pipeline — Parse uploaded CSV →
sqlite_executebulk INSERT →sqlite_queryvalidation report. - Local dashboard feed — Scheduled
sqlite_queryon metrics tables → LLM summary → Slack notification. - Schema exploration —
sqlite_list_tables+sqlite_describe_table→ Autopilot answers questions with grounded SQL. - Prototype ETL —
sqlite_queryextract → transform in Lua →sqlite_executeload into staging tables.
Tools
| Tool | Description |
|---|---|
sqlite_get_database_info | Return basic SQLite database metadata |
sqlite_query | Run a read-only SQLite query and return columns and rows as JSON |
sqlite_list_views | List all views in the SQLite database |
sqlite_get_table_schema | Return detailed SQLite schema, including columns and indexes, for a table |
sqlite_list_indexes | List SQLite indexes on a table using PRAGMA index_list |
sqlite_execute | Execute SQLite SQL that may modify data |
sqlite_execute_sql | Execute mutating SQLite SQL; alias of execute_sql |
sqlite_list_tables | List all user tables in the SQLite database |
sqlite_describe_table | Show SQLite column schema for a table using PRAGMA table_info |
sqlite_sample_table_rows | Preview rows from a SQLite table |
Example
Run a read-only report query:database_path to use sqlite_default_database_path from configuration.
Configuration
| Key | Required | Default | Description |
|---|---|---|---|
sqlite_data_root | No | — | Root directory; database_path must resolve under this path when set |
sqlite_default_database_path | No | — | Default .db file path when a tool omits database_path |
sqlite_query_timeout_seconds | No | 30 | Per-query timeout in seconds |
sqlite_max_rows | No | 1000 | Maximum rows returned per read query |
sqlite_allow_write | No | false | Set to true to enable sqlite_execute and sqlite_execute_sql |
Troubleshooting
| Issue | Fix |
|---|---|
| Database file not found | Verify default_database_path and that the file exists on the connector host |
Path outside data_root | Move the file under data_root or adjust the configured root directory |
| Write rejected | Set sqlite_allow_write to true on the MCP instance profile |
database is locked | Ensure no other process holds a long write lock; retry with backoff |
| Row limit exceeded | Adjust sqlite_max_rows or add LIMIT to read queries |
Related
- Integrations quickstart
- Postgres connector — production-grade SQL for hosted databases
- MySQL connector — similar SQL patterns for MySQL
- Connector catalog
- Troubleshooting