# Connect your database to an MCP server

> Each database and integration that Bonnard connects to, with how Bonnard signs in, the tenancy options, SSL and the network access it needs.

Updated: 2026-10-15

To connect PostgreSQL, BigQuery or another database to Claude, ChatGPT or another AI client, add the database to
Bonnard. Then create an app on it. An app is an MCP server with its own rules: who can connect, which tables the agent
finds and what it can do.

Connections are on the **Data** page in the console at `app.bonnard.ai`. You need the Admin role in your workspace to
connect a database or PostHog. Any role can add the [sample data](https://bonnard.ai/docs/connect-data/sample-data.md).

## Connection types

Tenancy is how a database lays out each customer's data. Each customer has a tenant (the value that marks its data).
The tables give the options for a new connection.

Table: The Databases group on the Data page

| Database | Credential | Tenancy options | SSL | Port |
| --- | --- | --- | --- | --- |
| [PostgreSQL](https://bonnard.ai/docs/connect-data/postgresql.md) | Read-only user | No tenancy, Multi-tenant (RLS) | `verify-full` | `5432` |
| [BigQuery](https://bonnard.ai/docs/connect-data/bigquery.md) | Read-only service account key | No tenancy, Dataset per tenant | No setting | None |
| [Amazon Redshift](https://bonnard.ai/docs/connect-data/redshift.md) (tile **Redshift**) | Read-only user | No tenancy, Multi-tenant (RLS) | `verify-full` | `5439` |
| [ClickHouse](https://bonnard.ai/docs/connect-data/clickhouse.md) | Read-only user | No tenancy | **Protocol** `https` | `8443` or `8123` |
| [DuckDB / MotherDuck](https://bonnard.ai/docs/connect-data/duckdb-motherduck.md) (tile **MotherDuck**) | MotherDuck access token | No tenancy | No setting | None |
| [MySQL / MariaDB](https://bonnard.ai/docs/connect-data/mysql-mariadb.md) | Read-only user | No tenancy | `verify-full` | `3306` |
| [Microsoft SQL Server](https://bonnard.ai/docs/connect-data/sql-server.md) (tile **MSSQL**) | Read-only login | No tenancy, Multi-tenant (RLS), Database per tenant (Azure SQL Database only) | `verify-full` | `1433` |

Table: The Integrations group on the Data page

| Integration | Credential | Tenancy options | SSL | Port |
| --- | --- | --- | --- | --- |
| [PostHog](https://bonnard.ai/docs/connect-data/posthog.md), product analytics | OAuth grant to one project, read-only | No tenancy. Apps are for your team (**Internal**) | No setting | None |

Table: The Demo data group on the Data page

| Demo data | Credential | Tenancy options | SSL | Port |
| --- | --- | --- | --- | --- |
| [Ecommerce](https://bonnard.ai/docs/connect-data/sample-data.md), the Acme sample | Nothing. Bonnard hosts it | No tenancy | No setting | None |

**Demo data** shows only while the workspace has no connections.

A database with a port needs a public host. If the database has an IP allowlist, add
[Bonnard's IP addresses](https://bonnard.ai/docs/reference/ip-addresses.md) to it for that port. The ports are the defaults.
Bonnard cannot reach a private network.

**SSL mode** offers `verify-full`, `verify-ca` (not on SQL Server), `require` and `disable`. Keep the default,
`verify-full`, which validates the server certificate. `require` encrypts with no validation.

For many customers in shared tables, use Multi-tenant (RLS). See [Tenancy](https://bonnard.ai/docs/customers-and-identity/tenancy.md).

## Your connections on the Data page

Under **My connections**, the **Data** page shows a card for each connection, with its name, engine and tenancy
(**MSSQL · RLS**). The footer gives the status and how many apps use the connection (**Used by 2 apps**).

Table: Connection status in the card footer

| Status | Explanation |
| --- | --- |
| **Connected** | The last read of the tables worked. |
| **Can’t connect** | The last read failed. Correct the **Connection details** on its **Overview** tab. |
| **Reauthorize** | PostHog refuses Bonnard's access. Select **Reconnect** on its **Overview** tab. |
| **Setup incomplete** | The connect steps are not done. No app can use it until then. |
| **Status unknown** | The details changed after the last read of the tables. |

## After you connect

- [Create an app](https://bonnard.ai/docs/apps/create-an-app.md): the MCP server for the connection.
- [Table curation](https://bonnard.ai/docs/connect-data/table-curation.md): hide the tables that agents do not need.
