PGGM MCP Snowflake Server
A customized Model Context Protocol (MCP) server for Snowflake integration, allowing AI assistants to interact with Snowflake databases securely and efficiently.
Features
- Connect to Snowflake databases and execute queries
- Support for various SQL operations and schema exploration
- Data insights collection and memoization
- SQL write operation detection for enhanced security
- Customizable database, schema, and table filtering
- Support for authentication through environment variables or command-line arguments
Installation
Using pip
Option 1: Install
Install this in your user site-packages so that it works with all your projects, run a powershell window and:
C:\Users\User> pip install --user pggm-mcp-snowflake-server
This will install the package in: C:\Users\USER\AppData\Roaming\Python\Python311\site-packages with the .exe in your C:\Users\USER\AppData\Roaming\Python\Python311\Scripts You might have to add this to your PATH:
- windows search: Edit the System Environment Variables
- Navigate: advanced / Environment Variables / select: PATH / Edit..
- New: C:\Users\USER\AppData\Roaming\Python\Python311
Option 2: Install in your project venv
pip install pggm-mcp-snowflake-server
Inside VS-Code
Add the following to your settings.json in vs-code (F1 + Preferences: Open User Settings(JSON))
"workbench.settings.applyToAllProfiles": [
"chat.agent.enabled"
],
"github.copilot.chat.agent.thinkingTool": true,
"mcp": {
"inputs": [],
"servers": {
"snowflake_local": {
"command": "C:\\Users\\USER\\AppData\\Roaming\\Python\\Python311\\Scripts\\pggm_mcp_snowflake_server.exe",
# In case you chose to install in your venv, replace above with the following:
# "command": "{project_source}\\venv\\Scripts\\pggm_mcp_snowflake_server.exe",
"args": [
"--account",
"pggm-vb.privatelink",
"--warehouse",
"{warehouse}",
"--authenticator",
"externalbrowser",
"--user",
"{user_email}",
"--role",
"PUBLIC",
"--database",
"SNOWFLAKE",
"--schema",
"INFORMATION_SCHEMA",
# Optionally: "--allow_write"
]
}
}
},
Usage
In VS Code you need to have Agent mode enabled. You can see which tools the AI has access to by navigating towards its chat window, and selecting the Tools icon, or pressing Ctrl+Shift+/ inside its chat window.
Tools Available
The pggm_mcp_snowflake_server provides the following tools for copilot:
list_databases- List all available databases in Snowflakelist_schemas- List all schemas in a databaselist_tables- List all tables in a specific database and schemadescribe_table- Get the schema information for a specific tableread_query- Execute a SELECT queryappend_insight- Add a data insight to the memowrite_query- Execute an INSERT, UPDATE, or DELETE query (if --allow_write is enabled)create_table- Create a new table in the Snowflake database (if --allow_write is enabled)
Security
By default, the server runs in read-only mode. To enable write operations, you must explicitly pass the --allow_write flag.
The server uses SQL parsing to detect and prevent write operations in read_query calls, ensuring only approved write operations can be executed.
Metadata
Release files for pggm-mcp-snowflake-server 1.0.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| pggm_mcp_snowflake_server-1.0.7.tar.gz | 11.1 kB | Without provenance | Details for pggm_mcp_snowflake_server-1.0.7.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| pggm_mcp_snowflake_server-1.0.7-py3-none-any.whl | Python 3 | none | any | Details for pggm_mcp_snowflake_server-1.0.7-py3-none-any.whl |
Total release size: 21.9 kB
Release files / pggm_mcp_snowflake_server-1.0.7.tar.gz
| Download URL | pggm_mcp_snowflake_server-1.0.7.tar.gz |
|---|---|
| Size | 11.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6faa135814ce0a2579dbca8447caff3542e5c4389c8e1280b933f23452797f01
|
|
BLAKE2b-256 checksum How to use checksums |
298ed7b07b9c83920552fe979035a9395697bfbeb711074758c3f9ba1928944e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.6.13
|
Release files / pggm_mcp_snowflake_server-1.0.7-py3-none-any.whl
| Download URL | pggm_mcp_snowflake_server-1.0.7-py3-none-any.whl |
|---|---|
| Size | 10.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
97a4dd01f2353b5ec00cf272127314cc1f983451b6e2a424035d22a7d24255c9
|
|
BLAKE2b-256 checksum How to use checksums |
18e815f69053be75a3fdf8cc45f8655bae4f45a81d759cd3dacc468dfa32b728
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.6.13
|
Security for pggm-mcp-snowflake-server 1.0.7
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.