Connections · stop 9 of 12

save_profile

Saves or updates a connection profile.

Works in read modeSaves to your nexql-mcp setupTool sets: meta · full

You might ask

“Lower the row limit on the prod profile to 200.”

Your assistant may call save_profile to answer.

How it works

  • Merges into an existing profile by default: fields you leave out are kept. replace: true overwrites it.
  • Raising access_mode to write or admin needs confirm_elevated_access: true, so it can't happen by accident.
  • Writes the config atomically, keeps a backup, and reloads the session.

Parameters

namestringrequired
Profile name to save under.
access_modestring
Session access mode: "read", "write", or "admin". Setting "write" or "admin" requires confirm_elevated_access: true, or the call is rejected.
confirm_elevated_accessboolean
Required (must be true) when access_mode is "write" or "admin" — explicit opt-in for a privilege escalation. No effect when access_mode is omitted or "read".
dbnamestring
Database name to connect to.
hoststring
Database server hostname.
max_rowsnumber
Row cap applied to run_select/export_query for this profile.
passwordstring
Database role password. Never written to disk in plaintext — stored in the OS keyring, or the call fails with the password_command/password_file alternative.
portnumber
Database server port (default 5432).
replaceboolean
If true, replace the profile wholesale instead of merging with existing saved fields. Default false.
sslmodestring
libpq sslmode value, e.g. "disable", "require", "verify-full".
urlstring
Full postgres:// connection URL; if given, host/port/dbname/user/password are ignored.
userstring
Database role/username.

What your assistant reads

The description nexql-mcp sends with the tool. It's how the assistant decides when to use it.

Save or update a database connection profile in user configuration with atomic backup and dynamic session reload. Merges into the existing named profile by default — omitted fields are preserved, not cleared. Pass replace: true to wholesale-replace instead.