Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion connections/connection-form.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,9 @@ session picks it up.
<img className="hidden dark:block" src="/images/connection-timeouts-dark.png" alt="PostgreSQL connection Options pane in dark appearance with Connect timeout and Query timeout fields using their inherited defaults" />
</Frame>

A pre-connect script never runs unprompted. A **Pre-Connect Script** alert shows the script itself and waits for **Run Script**, every time. At launch it is not prompted for at all: a restored window whose connection carries a script waits with a **Connect** button.
A pre-connect script never runs unprompted. A **Pre-Connect Script** alert shows the script itself and waits for **Run Script**, every time, whatever opens the connection: its window, a link, Compare, **Copy To**, the AI assistant, an MCP client or a script. With no answer in 60 seconds the alert closes as **Cancel**.

A connect you did not start never runs the script. A restored window at launch, a table loading on its own and a reconnect after a tunnel drops all stop at a **Connect** button instead.

## Appearance

Expand Down
4 changes: 3 additions & 1 deletion developers/applescript.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,9 @@ run query "SELECT 1" in connection "Production" ¬
```

Runs one statement and returns a `query result`. No window opens and no tab is disturbed; the
connection opens first if it is closed, which can prompt for a password.
connection opens first if it is closed, which can prompt for a password or ask to run the
connection's pre-connect script. A script prompt nobody answers in 60 seconds closes, and the command
fails with error -10000.

`row limit` defaults to 500 and caps at 10000. `timeout` defaults to 30 seconds and caps at 600.
Several statements in one call are refused, as are statements that read files or run server-side
Expand Down
2 changes: 2 additions & 0 deletions developers/mcp-tools.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,8 @@ Past the scope, a call clears three more gates:
2. **Connection policy.** **External Clients** set to **Blocked** hides the connection: `list_connections` omits it and any tool that names it is refused. An AI policy of **Never** does the same, except that [`purpose: "display"`](#listing-for-display) still lists it. Otherwise the first call that touches a connection asks the user, as often as **Settings > MCP > Approval** says. That question is always a dialog on the user's Mac, never an elicitation: a client that could answer it could also grant itself the connection. It has no deadline, so the client owns the timeout, and a refusal stands for 60 seconds before the question can be put again.
3. **Safe Mode.** A write goes through the connection's Safe Mode, which may ask the user to confirm it or to authenticate. See [Approvals](/developers/mcp-protocol#approvals-and-input-required).

A call that has to open a connection with a pre-connect script also waits for the user to run the script, in a dialog on their Mac. **Cancel** returns `denied`. With no answer in 60 seconds the dialog closes and the call returns `timeout`.

`confirm_destructive_operation` needs `admin` as well, so it takes a Full Access token, and **Read Only** refuses it outright whatever the token carries. No token skips the user's approval.

Statements that read or write files, or that run server-side code, are refused on every tool. So is more than one statement in a single call, and a statement a `GO 5` line would run five times, except in a SQL Server script sent to [`execute_query`](#execute_query).
Expand Down
2 changes: 1 addition & 1 deletion features/connection-sharing.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ The export sheet adds these options:
The saved query options appear only when there are saved queries to export, and they need no license. Saved queries are written as readable text unless **Include Credentials** encrypts the file. Version history, [linked SQL folders](/features/favorites#linked-sql-folders) and Team Library queries are never exported.

<Warning>
**Copy Connection String** writes a database URL that carries the password in plain text, plus the SSH password when the connection tunnels. TablePro marks the clipboard item concealed, which keeps it out of the history of clipboard managers that follow that convention and out of nothing else. **Copy TablePro Link** and **Copy as JSON** carry no secrets.
**Copy Connection String** writes a database URL that carries the password in plain text, plus the SSH password when the connection tunnels. TablePro marks the clipboard item concealed, which keeps it out of the history of clipboard managers that follow that convention and out of nothing else. **Copy TablePro Link** carries no secrets.
</Warning>

### Encrypted export
Expand Down
4 changes: 2 additions & 2 deletions features/import-export.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -247,7 +247,7 @@ Right-click tables in the sidebar and choose **Transfer To…** to copy their ro
Then tick the tables to copy.
</Step>
<Step title="Transfer">
Each table is wrapped in its own transaction by default, so a table that fails leaves its own rows untouched and the ones before it committed.
The destination's [Safe Mode](/features/safe-mode) covers the whole transfer, with one confirmation and one Touch ID prompt where its level asks for them. Each table is wrapped in its own transaction by default, so a table that fails leaves its own rows untouched and the ones before it committed.
</Step>
</Steps>

Expand Down Expand Up @@ -283,7 +283,7 @@ The extension picks the format, so one command covers all of them. A file no for
Encoding, transaction wrapping, and error handling for SQL; parsing and column mapping for CSV and JSON. TablePro remembers the options from your last successful import, and **Reset to Defaults** restores the stock ones.
</Step>
<Step title="Review and import">
Check the preview, statement count, and file size, then click **Import**.
Check the preview, statement count, and file size, then click **Import**. The connection's [Safe Mode](/features/safe-mode) asks once for the whole file where its level calls for a confirmation or Touch ID.
</Step>
</Steps>

Expand Down
Loading