BoardPulse AI can connect to any PostgreSQL or MySQL database you own. Once connected, the AI inspects the schema of the tables you approve, and uses that schema to generate accurate SQL queries in response to natural-language questions. This page walks through the full setup process.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/FloxTBoTyy/BoardPulse-AI/llms.txt
Use this file to discover all available pages before exploring further.
Supported databases
PostgreSQL
Primary supported database. Use the
postgresql+psycopg:// driver prefix in your connection URL.MySQL
Supported via the
pymysql driver. Use mysql+pymysql:// in your connection URL.Connect your database
Set DEFAULT_SOURCE_DATABASE_URL
Add the SQLAlchemy connection URL for your source database to The URL format follows the SQLAlchemy connection URL convention:
.env. Use the appropriate driver prefix for your database:dialect+driver://user:password@host:port/database.Set DEFAULT_SOURCE_INCLUDE_TABLES
Specify the exact table names the AI is allowed to query, as a comma-separated list:
Set DEFAULT_SOURCE_SCHEMA (optional)
If your tables live in a schema other than Leave this variable blank to use the database default (
public, set it explicitly:public for PostgreSQL). The application normalizes empty strings to null and falls back to the database default automatically.Disable demo data
When connecting a real database, disable the built-in demo data so the AI works with your schema instead:
Example: connecting to Supabase
Supabase provides a direct PostgreSQL connection URL in Project Settings → Database → Connection string. Use theSession mode (port 5432) URL for BoardPulse AI, since the application holds a persistent connection pool.
Create a dedicated read-only role in Supabase and grant
SELECT only on the tables in your allowlist. Do not use the postgres superuser for production connections.Verify the connection
After restarting the API container, open the admin panel athttp://localhost:3001 and navigate to the workspace settings. The schema inspector will attempt to connect and display the discovered columns for each table in your allowlist.
If the connection fails, the admin panel shows an error. Common causes:
| Symptom | Likely cause |
|---|---|
Connection refused | Wrong host, port, or the database is not reachable from the Docker network |
Authentication failed | Wrong username or password |
Table not found | Table name in DEFAULT_SOURCE_INCLUDE_TABLES does not match the actual table name (case-sensitive) |
Schema not found | DEFAULT_SOURCE_SCHEMA is set to a schema that does not exist |
Security recommendations
Use a read-only user
Grant
SELECT only on the tables in your allowlist. BoardPulse AI never writes to your source database, so no write permissions are needed.Keep the allowlist minimal
Only add tables the AI genuinely needs to answer business questions. Sensitive tables such as
users or payments should stay off the list unless required.Rotate credentials regularly
Use a database user dedicated to BoardPulse AI so credentials can be rotated independently of other applications.
Use internal networking
Where possible, run BoardPulse AI in the same VPC or private network as your database to avoid exposing database ports to the internet.