openGauss does not have many MCP options, and this one is unfussy about how it is deployed: run it on stdio next to a desktop client, or start it standalone on a port and let several clients connect over SSE or streamable HTTP. Configuration stays in one `.env` either way.
A FastMCP 2.0 server that puts an openGauss database behind an MCP client. Connection details come from a `.env` file, and the transport is chosen on the command line, so the same checkout serves a desktop client on stdio and a shared instance over HTTP.
- Three transports from one server: `--transport=stdio`, `--transport=sse`, `--transport=streamable-http`
- Listening host, port and path all set on the command line — `--host`, `--port`, `--path`
- Connection settings in `.env`: `OPENGAUSS_HOST`, `OPENGAUSS_PORT`, `OPENGAUSS_USER`, `OPENGAUSS_PASSWORD`, `OPENGAUSS_DBNAME`
- Real environment variables override the `.env` values, so a deployment can inject its own
`uv` and Python 3.12 or newer. Clone the repository, copy `.env.example` to `.env`, run `uv sync`, then launch `server.py` with the transport you want. Claude Desktop speaks stdio only; CherryStudio takes any of the three. The credentials in `.env` are database credentials, so scope the openGauss user to what the assistant should be allowed to touch. Version 0.1.0.
