https://github.com/gemini-cli-extensions/sql-server
https://github.com/gemini-cli-extensions/sql-server
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/gemini-cli-extensions/sql-server
- Owner: gemini-cli-extensions
- License: apache-2.0
- Created: 2025-09-12T15:49:34.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2026-01-29T00:18:53.000Z (4 months ago)
- Last Synced: 2026-01-29T13:25:18.464Z (4 months ago)
- Size: 146 KB
- Stars: 17
- Watchers: 0
- Forks: 2
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
- awesome-gemini-cli-extensions - sql-server - Provides a set of tools to interact with Microsoft SQL Server instances. (Databases)
README
# Gemini CLI Extension - SQL Server
> [!NOTE]
> This extension is currently in beta (pre-v1.0), and may see breaking changes until the first stable release (v1.0).
This Gemini CLI extension provides a set of tools to interact with [Microsoft SQL Server](https://docs.microsoft.com/en-us/sql/) instances. It allows you to manage your databases, execute queries, and explore schemas directly from the [Gemini CLI](https://google-gemini.github.io/gemini-cli/), using natural language prompts.
Learn more about [Gemini CLI Extensions](https://github.com/google-gemini/gemini-cli/blob/main/docs/extensions/index.md).
> [!IMPORTANT]
> **We Want Your Feedback!**
> Please share your thoughts with us by filling out our feedback [form][form].
> Your input is invaluable and helps us improve the project for everyone.
[form]: https://docs.google.com/forms/d/e/1FAIpQLSfEGmLR46iipyNTgwTmIDJqzkAwDPXxbocpXpUbHXydiN1RTw/viewform?usp=pp_url&entry.157487=sql-server
## Why Use the SQL Server Extension?
* **Natural Language Management:** Stop wrestling with complex commands. Explore schemas and query data by describing what you want in plain English.
* **Seamless Workflow:** As a Google-developed extension, it integrates seamlessly into the Gemini CLI environment. No need to constantly switch contexts for common database tasks.
* **Code Generation:** Accelerate development by asking Gemini to generate data classes and other code snippets based on your table schemas.
## Prerequisites
Before you begin, ensure you have the following:
* [Gemini CLI](https://github.com/google-gemini/gemini-cli) installed with version **+v0.6.0**.
* Setup Gemini CLI [Authentication](https://github.com/google-gemini/gemini-cli/tree/main?tab=readme-ov-file#-authentication-options).
* A running SQL Server instance.
* A user with database-level permissions to execute queries.
## Getting Started
### Installation
To install the extension, use the command:
```bash
gemini extensions install https://github.com/gemini-cli-extensions/sql-server
```
### Configuration
You will be prompted to configure the following settings during installation. These settings are saved in an `.env` file within the extension's directory.
* `MSSQL_HOST`: (Optional) The SQL Server host. Defaults to `localhost`.
* `MSSQL_PORT`: (Optional) The SQL Server port. Defaults to `1433`.
* `MSSQL_DATABASE`: The name of the database to connect to.
* `MSSQL_USER`: The database username.
* `MSSQL_PASSWORD`: The password for the database user.
To view or update your configuration:
**List Settings:**
* Terminal: `gemini extensions list`
* Gemini CLI: `/extensions list`
**Update Settings:**
* Terminal: `gemini extensions config sql-server [setting name] [--scope ]`
* `setting name`: (Optional) The single setting to configure.
* `scope`: (Optional) The scope of the setting in (`user` or `workspace`). Defaults to `user`.
* Currently, you must restart the Gemini CLI for changes to take effect. We recommend using `gemini --resume` to resume your session.
Alternatively, you can manually set these environment variables before starting the Gemini CLI:
#### PowerShell
```powershell
$env:MSSQL_HOST = '' # Optional: defaults to localhost
$env:MSSQL_PORT = '' # Optional: defaults to 1433
$env:MSSQL_DATABASE = ''
$env:MSSQL_USER = ''
$env:MSSQL_PASSWORD = ''
```
#### Bash
```bash
export MSSQL_HOST="" # Optional: defaults to localhost
export MSSQL_PORT="" # Optional: defaults to 1433
export MSSQL_DATABASE=""
export MSSQL_USER=""
export MSSQL_PASSWORD=""
```
> [!NOTE]
> See [Troubleshooting](#troubleshooting) for debugging your configuration.
### Start Gemini CLI
To start the Gemini CLI, use the following command:
```bash
gemini
```
> [!WARNING]
> **Changing Instance & Database Connections**
> Currently, the database connection must be configured before starting the Gemini CLI and can not be changed during a session.
> To save and resume conversation history use command: `/chat save ` and `/chat resume `.
## Usage Examples
Interact with SQl Server using natural language right from your IDE:
* **Explore Schemas and Data:**
* "Show me all tables in the 'orders' database."
* "What are the columns in the 'products' table?"
* "How many orders were placed in the last 30 days, and what were the top 5 most purchased items?"
* **Generate Code:**
* "Generate a Python dataclass to represent the 'customers' table."
## Supported Tools
* `list_tables`: lists schema information for all or specified tables in a SQL server database.
* `execute_sql`: executes a SQL statement against a SQL Server database.
## Additional Extensions
Find additional extensions to support your entire software development lifecycle at [github.com/gemini-cli-extensions](https://github.com/gemini-cli-extensions), including:
* [Cloud SQL for SQL Server extension](https://github.com/gemini-cli-extensions/cloud-sql-sqlserver)
* and more!
## Troubleshooting
Use `gemini --debug` to enable debugging.
Common issues:
* "✖ Error during discovery for server: MCP error -32000: Connection closed": The database connection has not been established. Ensure your configuration is set via environment variables.
* "✖ MCP ERROR: Error: spawn /Users/USER/.gemini/extensions/sql-server/toolbox ENOENT": The Toolbox binary did not download correctly. Ensure you are using Gemini CLI v0.6.0+.
* "cannot execute binary file": The Toolbox binary did not download correctly. Ensure the correct binary for your OS/Architecture has been downloaded. See [Installing the server](https://googleapis.github.io/genai-toolbox/getting-started/introduction/#installing-the-server) for more information.