Snowflake
Interactuar con bases de datos Snowflake para consultar y gestionar datos.
Documentación
Un servidor de Model Context Protocol (MCP) que proporciona a Claude acceso a bases de datos Snowflake. / 一个为 Claude 提供 Snowflake 数据库访问能力的 MCP (模型上下文协议) 服务器。
Este servidor implementa el Protocolo de Contexto de Modelo para permitir que Claude:
- Ejecute consultas SQL en bases de datos Snowflake
- Gestione automáticamente el ciclo de vida de la conexión a la base de datos (conectar, reconectar en caso de tiempo de espera, cerrar)
- Maneje resultados de consultas y errores
- Realice operaciones de base de datos de forma segura
此服务器实现了模型上下文协议,使 Claude 能够:
- 在 Snowflake 数据库上执行 SQL 查询
- 自动管理数据库连接生命周期(连接创建、超时重连、连接关闭)
- 处理查询结果和错误
- 安全地执行数据库操作
Instalación / 安装
Instalación mediante Smithery
Para instalar mcp-service-snowflake para Claude Desktop automáticamente mediante Smithery:
npx -y @smithery/cli install @datawiz168/mcp-service-snowflake --client claude
Instalación manual
- Clone este repositorio / 克隆此仓库
git clone https://github.com/datawiz168/mcp-snowflake-service.git
- Instale las dependencias / 安装依赖
pip install -r requirements.txt
Configuración / 配置说明
Ejemplo de configuración del cliente MCP / MCP 客户端配置示例
Agregue la siguiente configuración a claude_desktop_config.json / 在 claude_desktop_config.json 中添加配置:
{
"mcpServers": {
"snowflake": {
"command": "C:\\Users\\K\\anaconda3\\envs\\regular310\\python.exe",
"args": ["D:\\tools\\mcp-snowflake\\server.py"]
}
}
}
Parámetros de configuración / 配置参数说明:
command: Ruta completa a su intérprete de Python. Modifíquela según la ubicación de su instalación de Python. / Python 解释器的完整路径,请根据您的 Python 安装位置进行修改。args: Ruta completa al script del servidor. Modifíquela según la ubicación donde clonó el repositorio. / 服务器脚本的完整路径,请根据您克隆仓库的位置进行修改。
Rutas de ejemplo para diferentes sistemas operativos / 不同操作系统的路径示例:
Windows:
{
"mcpServers": {
"snowflake": {
"command": "C:\\Users\\YourUsername\\anaconda3\\python.exe",
"args": ["C:\\Path\\To\\mcp-snowflake\\server.py"]
}
}
}
MacOS/Linux:
{
"mcpServers": {
"snowflake": {
"command": "/usr/bin/python3",
"args": ["/path/to/mcp-snowflake/server.py"]
}
}
}
Configuración de Snowflake / Snowflake 配置
Cree un archivo .env en el directorio raíz del proyecto y agregue la siguiente configuración / 在项目根目录下创建 .env 文件,添加以下配置:
SNOWFLAKE_USER=your_username # Your username / 您的用户名
SNOWFLAKE_PASSWORD=your_password # Your password / 您的密码
SNOWFLAKE_ACCOUNT=NRB18479.US-WEST-2 # Example: NRB18479.US-WEST-2 / 示例: NRB18479.US-WEST-2
SNOWFLAKE_DATABASE=your_database # Your database / 您的数据库
SNOWFLAKE_WAREHOUSE=your_warehouse # Your warehouse / 您的数据仓库
Gestión de conexiones / 连接管理
El servidor proporciona funciones automáticas de gestión de conexiones / 服务器提供以下自动连接管理功能:
-
Inicialización automática de conexiones / 自动初始化连接
- Crea la conexión cuando se recibe la primera consulta / 首次查询时自动创建连接
- Valida los parámetros de conexión / 验证连接参数
-
Mantenimiento de conexiones / 连接维护
- Realiza un seguimiento del estado de la conexión / 跟踪连接状态
- Maneja los tiempos de espera de conexión / 处理连接超时
- Se reconecta automáticamente si se pierde la conexión / 连接断开时自动重连
-
Limpieza de conexiones / 连接清理
- Cierra correctamente las conexiones cuando el servidor se detiene / 服务器停止时正确关闭连接
- Libera los recursos de manera adecuada / 适当释放资源
Uso / 使用说明
El servidor se iniciará automáticamente con el cliente de escritorio de Claude. No se requiere inicio manual. Una vez que el servidor esté en ejecución, Claude podrá ejecutar consultas de Snowflake. / 服务器会随 Claude Desktop 客户端自动启动,无需手动运行。服务器启动后,Claude 将能够执行 Snowflake 查询。
Para pruebas de desarrollo, puede iniciar el servidor manualmente usando / 如果需要单独启动服务器进行测试,可以使用以下命令:
python server.py
Nota: No se necesita iniciar el servidor manualmente para el uso normal. El cliente de escritorio de Claude gestionará automáticamente el inicio y la detención del servidor según la configuración. / 注意:正常使用时无需手动启动服务器,Claude Desktop 客户端会根据配置自动管理服务器的启动和停止。
Funciones / 功能
- Acceso seguro a bases de datos Snowflake / 安全的 Snowflake 数据库访问
- Manejo y notificación de errores robustos / 健壮的错误处理和报告机制
- Gestión automática de conexiones / 自动连接管理
- Ejecución de consultas y procesamiento de resultados / 查询执行和结果处理
Desarrollo / 开发
Para contribuir con código o informar problemas / 要贡献代码或报告问题,请:
- Haga un fork de este repositorio / Fork 此仓库
- Cree su rama de funcionalidad / 创建您的功能分支 (
git checkout -b feature/AmazingFeature) - Confirme sus cambios / 提交您的更改 (
git commit -m 'Add some AmazingFeature') - Envíe a la rama / 推送到分支 (
git push origin feature/AmazingFeature) - Abra una solicitud de extracción / 开启一个 Pull Request
Notas / 备注
mcp‑server‑snowflake controla los derechos de acceso a la base de datos con precisión mediante usuarios de base de datos. Si solo necesita leer datos, asigne un usuario con permisos de solo lectura en la base de datos./ mcp-server-snowflake 控制数据库访问权限,是通过数据库用户来精准实现的。如果你只想读取数据,给个只有读取数据库权限的用户就行了。
Licencia / 许可
Este proyecto está licenciado bajo la Licencia MIT.
此项目采用 MIT 许可证。