diff --git a/docs/connections/urls.mdx b/docs/connections/urls.mdx
index c77b4715c0..b204caa330 100644
--- a/docs/connections/urls.mdx
+++ b/docs/connections/urls.mdx
@@ -213,7 +213,7 @@ libsql://your-database.turso.io
```
-When another client also handles the scheme, `open -b com.TablePro "mysql://…"` forces TablePro. See [Terminal and DDEV](/integrations/terminal) for the `tablepro` command and the `ddev tablepro` host command.
+When another client also handles the scheme, `open -b com.TablePro "mysql://…"` forces TablePro. See [Terminal](/integrations/terminal) for the `tablepro` command and [DDEV](/integrations/ddev) for `ddev tablepro`.
## Confirmation and trusted links
diff --git a/docs/customization/general-settings.mdx b/docs/customization/general-settings.mdx
index 29bcde21f6..a8bbda9826 100644
--- a/docs/customization/general-settings.mdx
+++ b/docs/customization/general-settings.mdx
@@ -54,7 +54,7 @@ Older servers have neither: MySQL before 5.7.8, MariaDB before 10.1.1. A stateme
## Command line tool
-**Install** writes a `tablepro` command to `/usr/local/bin` that opens database URLs in the app. When it cannot write there, the section prints the command to run in Terminal yourself. See [Terminal and DDEV](/integrations/terminal).
+**Install** writes a `tablepro` command to `/usr/local/bin` that opens database URLs in the app. When it cannot write there, the section prints the command to run in Terminal yourself. See [Terminal](/integrations/terminal).
## Trusted links
diff --git a/docs/docs.json b/docs/docs.json
index b626d017c3..183d14b314 100644
--- a/docs/docs.json
+++ b/docs/docs.json
@@ -314,9 +314,11 @@
"group": "Integrations",
"icon": "puzzle-piece",
"pages": [
+ "integrations/index",
"integrations/mcp-clients",
"integrations/raycast",
"integrations/terminal",
+ "integrations/ddev",
"integrations/ios-shortcuts"
]
},
diff --git a/docs/features/overview.mdx b/docs/features/overview.mdx
index ee8936b672..1b48396513 100644
--- a/docs/features/overview.mdx
+++ b/docs/features/overview.mdx
@@ -160,7 +160,7 @@ First time here: [Quick Start](/quickstart) gets you from install to a query wit
Build an integration on the URL scheme, AppleScript, MCP and pairing.
-
+
Search connections, run queries, focus tabs.
diff --git a/docs/integrations/ddev.mdx b/docs/integrations/ddev.mdx
new file mode 100644
index 0000000000..66851f5720
--- /dev/null
+++ b/docs/integrations/ddev.mdx
@@ -0,0 +1,40 @@
+---
+title: DDEV
+description: Open a DDEV project's database in TablePro with the ddev tablepro command
+---
+
+The command ships with DDEV, not with TablePro. Run it inside a project:
+
+```bash
+cd my-project
+ddev tablepro
+```
+
+A stopped project starts first. The connection that opens is named `ddev-`, carries the
+`local` tag, and is not saved. Use the command instead of a saved connection: DDEV picks a new host
+port on every `ddev start` unless the project sets `host_db_port`, and the command passes the
+current one each time. Database, user and password are all `db`.
+
+## Requirements
+
+- DDEV v1.25.4 or later.
+- A MySQL, MariaDB or PostgreSQL database in the project.
+- TablePro at `/Applications/TablePro.app`. DDEV adds the command only when the app is at that path.
+
+## The first run
+
+TablePro asks **Open External Database Connection?** before it connects. Choose **Always Allow** and
+that project stops asking, port changes included. [Trusting a link](/integrations/terminal#trusting-a-link)
+covers what the trust is keyed on and where to forget it.
+
+## From VS Code
+
+The community [DDEV Manager](https://marketplace.visualstudio.com/items?itemName=biati.ddev-manager)
+extension runs `ddev tablepro` for you when its **Default Database Manager** setting is TablePro.
+
+## Troubleshooting
+
+| Symptom | What to do |
+| --- | --- |
+| `Error: unknown command "tablepro" for "ddev"` | Update DDEV to v1.25.4 or later, and check that TablePro is in `/Applications` |
+| The alert appears on every run | Choose **Always Allow**, not **Connect** |
diff --git a/docs/integrations/index.mdx b/docs/integrations/index.mdx
new file mode 100644
index 0000000000..d79970b395
--- /dev/null
+++ b/docs/integrations/index.mdx
@@ -0,0 +1,29 @@
+---
+title: Integrations
+sidebarTitle: Overview
+description: Use TablePro from AI clients, Raycast, the terminal, DDEV and iOS Shortcuts
+---
+
+AI clients and the Raycast extension query your databases through the [MCP server](/features/mcp),
+so its limits, tokens and activity log, all reached from **Settings > Integrations**, apply to them.
+The terminal, DDEV and iOS Shortcuts work without it.
+
+
+
+ Connect Claude, Cursor, VS Code, Zed and other MCP clients.
+
+
+ Search connections, browse schemas and run SQL from Raycast.
+
+
+ Open database URLs and SQL files with the `tablepro` command.
+
+
+ Open a project's database with `ddev tablepro`.
+
+
+ Add rows or open a connection from Shortcuts on iPhone and iPad.
+
+
+
+To build an integration of your own, start at [Developers](/developers).
diff --git a/docs/integrations/mcp-clients.mdx b/docs/integrations/mcp-clients.mdx
index 750ab2c080..486c01642c 100644
--- a/docs/integrations/mcp-clients.mdx
+++ b/docs/integrations/mcp-clients.mdx
@@ -15,7 +15,7 @@ Paste one absolute path into your client's MCP config and stop there. `tablepro-
}
```
-For an install outside `/Applications`, use your own bundle's path. Setapp puts it at `~/Applications/Setapp/TablePro.app/Contents/MacOS/tablepro-mcp`.
+For an install outside `/Applications`, use your own bundle's path. **Connect a Client…** in **Settings > Integrations** shows snippets with it filled in.
## Clients that take the JSON above
diff --git a/docs/integrations/raycast.mdx b/docs/integrations/raycast.mdx
index c2a08e0cde..416c9baad4 100644
--- a/docs/integrations/raycast.mdx
+++ b/docs/integrations/raycast.mdx
@@ -1,5 +1,5 @@
---
-title: Raycast Extension
+title: Raycast
description: Install and pair the TablePro Raycast extension, and use its commands and AI tools
---
diff --git a/docs/integrations/terminal.mdx b/docs/integrations/terminal.mdx
index 79dd1b100b..4308c5d11c 100644
--- a/docs/integrations/terminal.mdx
+++ b/docs/integrations/terminal.mdx
@@ -1,9 +1,9 @@
---
-title: Terminal and DDEV
-description: Opening databases and files from a shell script, and wiring up a ddev tablepro command
+title: Terminal
+description: Open database URLs, database files and SQL files in TablePro from a shell or a script
---
-`open "mysql://…"` goes to whichever app claims the `mysql://` scheme, and with TablePlus or another
+`open "mysql://…"` goes to whichever app claims the `mysql://` scheme, and with another database
client installed that may not be TablePro. Name TablePro instead, either by bundle identifier or
through the `tablepro` command:
@@ -49,19 +49,6 @@ tablepro app.db
DuckDB plugin. A window already connected to that file comes to front instead of a second one
opening.
-## DDEV
-
-[DDEV](https://ddev.com) ships a `tablepro` command of its own. From any project:
-
-```bash
-cd my-project
-ddev tablepro
-```
-
-If `ddev tablepro` is not found, update DDEV. It covers MySQL, MariaDB and PostgreSQL projects, and
-DDEV's database, user and password are all `db`. Prefer it over a saved connection: `ddev start`
-hands the project a new host port each time, and the command reads the current one.
-
## Trusting a link
The first time a link connects, TablePro asks: **Open External Database Connection?**, showing the
@@ -69,8 +56,9 @@ host, user and database. This is what stops a web page from opening a connection
For a database on your own machine (`localhost`, `127.0.0.1`, `::1`, or any `127.x.x.x` address) the
alert adds **Always Allow**. Choose it and that database stops asking, which is what makes
-`ddev tablepro` a one-step command. Trust is keyed on database type, host, database name, user and
-the URL's `name` parameter, deliberately not the port, since DDEV changes the port on every start.
+[`ddev tablepro`](/integrations/ddev) a one-step command. Trust is keyed on database type, host,
+database name, user and the URL's `name` parameter, not the port, so a tool that picks a new port on
+each start stays trusted.