# SQLX (oci · ghcr.io/ottermind/sqlx)

Run SQL on 30+ databases through saved, encrypted connections; credentials stay local.

- Trust score: 48/100 (low)
- Change this week: +3
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-05

## Components

- oci · `ghcr.io/ottermind/sqlx`: 48/100 (this document), [markdown](https://verifymcp.io/servers/ottermind-sqlx/ghcr-io-ottermind-sqlx.md), [page](https://verifymcp.io/servers/ottermind-sqlx/ghcr-io-ottermind-sqlx)

## Channel facts

- Registry: `oci`
- Package: `ghcr.io/ottermind/sqlx`
- Version: `0.1.21`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-11-05.

- **Supply Chain Security**: 0/100
  - No malware scan is available for this kind of package: the supply-chain vendors we use do not cover it. This is a permanent gap in our coverage, not a finding about the package.
  - Known CVEs could not be checked: this artifact ships no SBOM or dependency manifest, so there is no dependency list to read.
  - Install-script risk not yet assessed.
  - Dependency health could not be checked: this artifact ships no SBOM or dependency manifest, so there is no dependency list to read.
- **Provenance & Transparency**: 32/100
  - Source repository is publicly reachable at the declared URL.
  - Provenance check failed: no build-provenance attestation is published.
  - License check failed: no license is declared.
  - Actively maintained (last published 20 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 76/100
  - AI-judged instruction clarity (good).
  - Tool/resource definitions use about 973 tokens (~108/item across 9 items; 9 tools + 0 resources), lean.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 73/100
  - Stability observed for 22 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 98/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 94% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - All 2 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.
  - An AI judge read all 10 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

**Unverified: 1 category.** A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

## Install

### How do I install the SQLX MCP server?

SQLX runs locally as a container image, launched with docker run --rm -i ghcr.io/ottermind/sqlx:0.1.21. Ready-made configuration for Claude, Cursor, VS Code, Codex and 3 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add ottermind-sqlx -- docker run --rm -i ghcr.io/ottermind/sqlx:0.1.21
```

### Cursor

```json
{
  "mcpServers": {
    "ottermind-sqlx": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "ghcr.io/ottermind/sqlx:0.1.21"
      ]
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "ottermind-sqlx": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "ghcr.io/ottermind/sqlx:0.1.21"
      ]
    }
  }
}
```

### Codex

```bash
codex mcp add ottermind-sqlx -- docker run --rm -i ghcr.io/ottermind/sqlx:0.1.21
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "ottermind-sqlx": {
      "type": "local",
      "command": [
        "docker",
        "run",
        "--rm",
        "-i",
        "ghcr.io/ottermind/sqlx:0.1.21"
      ],
      "enabled": true
    }
  }
}
```

### Hermes

```yaml
mcp_servers:
  ottermind-sqlx:
    command: "docker"
    args: ["run", "--rm", "-i", "ghcr.io/ottermind/sqlx:0.1.21"]
```

### Netclaw

```json
{
  "McpServers": {
    "ottermind-sqlx": {
      "Transport": "stdio",
      "Command": "docker",
      "Arguments": [
        "run",
        "--rm",
        "-i",
        "ghcr.io/ottermind/sqlx:0.1.21"
      ]
    }
  }
}
```

### Other

```json
{
  "mcpServers": {
    "ottermind-sqlx": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "ghcr.io/ottermind/sqlx:0.1.21"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-11-04 (score 48, +1)

No change was recorded against any check on this day. Stability & Change Management went from 67 to 70. That category is still filling its 30-day observation window: 20 days of observed history at the previous scan, 21 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-11-02 (score 47, +1)

No change was recorded against any check on this day. Stability & Change Management went from 60 to 63. That category is still filling its 30-day observation window: 18 days of observed history at the previous scan, 19 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-31 (score 46, +1)

No change was recorded against any check on this day. Stability & Change Management went from 53 to 57. That category is still filling its 30-day observation window: 16 days of observed history at the previous scan, 17 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-28 (score 45, +1)

No change was recorded against any check on this day. Stability & Change Management went from 43 to 47. That category is still filling its 30-day observation window: 13 days of observed history at the previous scan, 14 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-26 (score 44, +1)

No change was recorded against any check on this day. Stability & Change Management went from 37 to 40. That category is still filling its 30-day observation window: 11 days of observed history at the previous scan, 12 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-24 (score 43, +1)

No change was recorded against any check on this day. Stability & Change Management went from 30 to 33. That category is still filling its 30-day observation window: 9 days of observed history at the previous scan, 10 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-22 (score 42, +1)

No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-20 (score 41, +1)

No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.

## MCP tools (9)

### `sqlx_datasource_list` (~31 tokens)

List SQLX datasources

List the saved SQLX datasources with their non-secret connection settings. Never returns usernames or passwords.

### `sqlx_datasource_show` (~36 tokens)

Show a SQLX datasource

Show one saved datasource by its stable ID or unique name.

Input parameters:

- `id` (string, required): Datasource UUID or unique name

### `sqlx_datasource_test` (~39 tokens)

Test a SQLX connection

Open one connection and report whether the datasource is reachable. Executes no SQL.

Input parameters:

- `id` (string, required): Datasource UUID or unique name

### `sqlx_datasource_setup` (~130 tokens)

Add a SQLX datasource in the browser

Start adding a datasource the user finishes in a local browser page, and return that page's `url`. The connection object carries no credentials: the user types the username and password there, so they never enter this conversation. Give the user the complete URL, then call sqlx_datasource_setup_status with the returned `request_id` until it reports the outcome.

Input parameters:

- `connection` (object, required): Connection settings without credentials, in the shape --connection-stdin accepts: database_type, host, port, database, service, tls, properties
- `name` (string, required): Name for the new datasource

### `sqlx_datasource_setup_status` (~59 tokens)

Read a browser setup request

Report the outcome of a setup started by sqlx_datasource_setup, without retrieving credentials. Read-only: it never contacts the database again.

Input parameters:

- `request_id` (string, required): Setup request UUID from the sqlx_datasource_setup response

### `sqlx_sql_execute` (~174 tokens)

Execute SQL with SQLX

Execute one or more complete SQL statements through SQLX and return the table-shaped result: `results[].cols`, `rows` and `count` per statement. A result set larger than the preview is stored under `results[].file` and read with sqlx_results_rows. Each statement is a separate driver statement and the batch stops at the first error. Statements may modify data: only call this after the user authorized that exact operation and scope. Results are never replayed automatically.

Input parameters:

- `datasource` (string, required): Datasource UUID or unique name
- `full` (boolean): Print every row instead of a preview and store nothing. Use it only when the caller cannot read the stored file, because a large result then fills the response.
- `statements` (array, required): Complete SQL statements, executed in order on one connection

### `sqlx_sql_view` (~83 tokens)

Show SQL results in the local page

Execute the statements once in the local SQLX service and return a local result-page URL for the user. The same authorization rule as sqlx_sql_execute applies, and the page's Refresh action reruns the batch.

Input parameters:

- `datasource` (string, required): Datasource UUID or unique name
- `statements` (array, required): Complete SQL statements, executed in order on one connection

### `sqlx_results_rows` (~142 tokens)

Read rows of a stored result

Read one page of a result that sqlx_sql_execute stored because it did not fit the printed preview. Pass the result `id` from that response; `statement` and `set` select the result set, which defaults to the first one. Read-only: it never contacts the database again.

Input parameters:

- `id` (string, required): Result UUID from the execute response
- `limit` (integer): Rows to return, 50 by default
- `offset` (integer): First row to return
- `set` (integer): Result set index of that statement, counted from zero
- `statement` (integer): Statement index inside the result, counted from zero

### `sqlx_prefetch` (~149 tokens)

Prefetch SQLX components

Download the components that would otherwise be fetched during a first query or page: mysql, mariadb, tidb, greatsql, oceanbase, starrocks, doris, postgres, cockroachdb, yugabytedb, opengauss, oracle, sqlserver, clickhouse, trino, tdengine, dameng, kingbase, redis, mongodb, sqlite, duckdb, h2, presto, hive, kylin, xugu, db2, informix, sundb, gbase8s, ui, skill, all. A first download can take minutes, so wait for the call instead of treating it as hung.

Input parameters:

- `components` (array, required)

## Diagnostics

Captured diagnostic sections: Provenance. The full working is on the page: https://verifymcp.io/servers/ottermind-sqlx/ghcr-io-ottermind-sqlx#diagnostics

## Score history

- 2026-11-05: 48
- 2026-11-04: 48
- 2026-11-03: 47
- 2026-11-02: 47
- 2026-11-01: 46
- 2026-10-31: 46
- 2026-10-30: 45
- 2026-10-29: 45
- 2026-10-28: 45
- 2026-10-27: 44
- 2026-10-26: 44
- 2026-10-25: 43
- 2026-10-24: 43
- 2026-10-23: 42
- 2026-10-22: 42
- 2026-10-21: 41
- 2026-10-20: 41
- 2026-10-19: 40
- 2026-10-18: 40
- 2026-10-17: 39
- 2026-10-16: 39
- 2026-10-15: 38
- 2026-10-14: 38
- 2026-10-13: 6

## Common questions

### What is the SQLX MCP server?

SQLX is an MCP server listed in the public MCP registry as io.github.OtterMind/sqlx. Run SQL on 30+ databases through saved, encrypted connections; credentials stay local. This page covers its container image (ghcr.io/ottermind/sqlx).

### Is the SQLX MCP server safe to use?

SQLX scores 48 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the SQLX MCP server expose?

SQLX exposes 9 tools: sqlx_datasource_list, sqlx_datasource_show, sqlx_datasource_test, sqlx_datasource_setup, sqlx_datasource_setup_status, and 4 more. Their descriptions and schemas cost roughly 843 tokens of context every time the server is loaded.

### Is the SQLX MCP server still maintained?

SQLX is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- GitHub Container Registry: https://ghcr.io/ottermind/sqlx
- Repository: https://github.com/OtterMind/sqlx
- Changelog RSS feed: https://verifymcp.io/servers/ottermind-sqlx/ghcr-io-ottermind-sqlx.xml
- Changelog JSON feed: https://verifymcp.io/servers/ottermind-sqlx/ghcr-io-ottermind-sqlx.json
- HTML version of this page: https://verifymcp.io/servers/ottermind-sqlx/ghcr-io-ottermind-sqlx
