Snowflake MCP Server
for AI Agents
Connect your AI agent to StackOne's Snowflake MCP server and give it 98 MCP tools out of the box. Auth, tool execution, and security all managed.
Coverage
98 Agent Actions
Create, read, update, and delete across Snowflake — and extend your agent's capabilities with custom actions.
Authentication
Agent Tool Authentication
Per-user OAuth in one call. Your Snowflake MCP server gets session-scoped tokens with zero credentials stored on your infra.
Agent Auth →Security
Agent Protection
Every Snowflake tool response scanned for prompt injection in milliseconds — 88.7% accuracy, all running on CPU.
Prompt Injection Defense →Performance
Max Agent Context. Min Cost.
Free up to 96% of your agent's context window to enhance reasoning and reduce cost, on every Snowflake call.
Tools Discovery →What is the Snowflake MCP Server?
A Snowflake MCP server lets AI agents read and write Snowflake data through the Model Context Protocol — Anthropic's open standard for connecting LLMs to external tools. StackOne's Snowflake MCP server ships with 98 pre-built actions, fully extensible via the Connector Builder — plus managed authentication, prompt injection defense, observability, and agent execution runtime. Connect it from MCP clients like Claude Desktop, Claude Code, Cursor, Goose, and VS Code, or from agent frameworks like OpenAI Agents SDK, LangChain, and Vercel AI SDK.
All Snowflake MCP Tools
Every action from Snowflake's API, ready for your agent. Create, read, update, and delete — scoped to exactly what you need.
Databases
- Create Database
Create a new database in the Snowflake account
- Clone Database
Create a copy of an existing database with all its objects
- List Databases
Retrieve list of all databases in the account
- Update Database
Modify database properties like data retention or ownership
- Delete Database
Drop a database and all its contained objects
Functions
- Create Function
Define a user-defined function in SQL, JavaScript, Python, Java, or Scala
- List Functions
Get all user-defined functions in a schema
- Delete Function
Drop a user-defined function
Unified Organizations
- List Unified Organizations
Return the Snowflake account as a single IAM organization record. Each connection targets exactly one Snowflake account identified by the Account Identifier configured during connection setup (format orgname-accountname). Always returns exactly one record with the Account Identifier as id/remote_id.
- Get Unified Organization
Retrieve the Snowflake account as a single IAM organization. Each connection targets exactly one account - pass the id returned by unified_list_organizations (the Snowflake Account Identifier configured during connection setup).
Unified Roles
- List Unified Roles
List all roles in the connected Snowflake account via the REST API, mapped to the StackOne IAM unified role schema. Includes built-in system roles (ACCOUNTADMIN, SECURITYADMIN, SYSADMIN, USERADMIN, PUBLIC) and any custom roles. Fetches up to 30000 roles across a fixed 3-page fan-out (10000 per page); accounts beyond that are truncated.
- Get Unified Role
Retrieve a single Snowflake role by name via the REST API, mapped to the StackOne IAM unified role schema. Role.id is the Snowflake role name (e.g. SYSADMIN, ACCOUNTADMIN). Implemented via filter on the /api/v2/roles list endpoint - Snowflake does not expose a direct GET /api/v2/roles/{name} REST endpoint.
Unified Users
- List Unified Users
List all users in the connected Snowflake account via the REST API, mapped to the StackOne IAM unified user schema. Returns identity, status (enabled/disabled), email, name, and bot-user inference. Fetches up to 30000 users across a fixed 3-page fan-out (10000 per page); accounts beyond that are truncated. Pass expand=["roles"] to populate each user's default role.
- Get Unified User
Retrieve a single Snowflake user by username via the REST API, mapped to the StackOne IAM unified user schema. Returns identity, status, email, and name. Pass expand=["roles"] to populate the user's default role.
Pipes
- Create Pipe
Set up Snowpipe for continuous data ingestion
- List Pipes
Get all pipes in a schema
- Update Pipe
Modify pipe properties or COPY statement
- Delete Pipe
Drop a Snowpipe object
Procedures
- Create Procedure
Define stored procedure in SQL, JavaScript, Python, Java, or Scala
- List Procedures
Get all stored procedures in a schema
- Delete Procedure
Drop a stored procedure
Roles
- Create Role
Define a new role for access control
- List Roles
Get all roles in the account
- Delete Role
Drop a custom role
Schemas
- Create Schema
Create a new schema within a database
- List Schemas
Get all schemas in a specific database
- Update Schema
Modify schema properties like data retention or managed access
- Delete Schema
Drop a schema and all its contained objects
Stages
- Create Stage
Create internal or external stage for data loading and unloading
- List Stages
Get all stages in a schema
- Update Stage
Modify stage properties like file format or credentials
- Delete Stage
Drop a stage object
Streams
- Create Stream
Create change data capture stream on table or view
- List Streams
Get all streams in a schema
- Delete Stream
Drop a stream object
Tables
- Create Table
Create new permanent, transient, or temporary table
- Clone Table
Create a copy of an existing table with its data and structure
- List Tables
Retrieve all tables within a schema
- Update Table
Modify table properties like clustering keys or retention period
- Delete Table
Drop a table and its data
Tasks
- Create Task
Define scheduled or DAG-based task for automation
- List Tasks
Get all tasks in a schema
- Update Task
Modify task schedule, definition, or warehouse
- Delete Task
Drop a task object
Users
- Create User
Provision a new user account with authentication settings
- List Users
Retrieve all user accounts in the account
- Update User
Modify user properties like email, default role, or MFA settings
- Delete User
Remove a user account from the system
Views
- Create View
Create standard, secure, or materialized view
- List Views
Get all views in a schema
- Delete View
Drop a view
Warehouses
- Create Warehouse
Provision a new virtual warehouse with specified size and properties
- List Warehouses
Get all warehouses in the account
- Delete Warehouse
Drop a virtual warehouse
Other (44)
- Create Table As Select
Create a new table populated from a SQL SELECT query
- Get Unified Credentials
Return the authenticated identity for the current Snowflake connection via the SQL API (SELECT CURRENT_USER, CURRENT_ROLE). Maps to the StackOne IAM unified credentials schema. auth_type is derived from the runtime credentials surface (api_key when a private key is present for Key Pair auth, otherwise oauth - both flows materialize an access token, so the private key is the discriminator).
- List Unified Resource Types
List the resource types this Snowflake connector supports for resource-scoped permission queries. Always returns ["role"] - the only resource type with a grants-listing REST endpoint on this connector.
- List Unified Resource Users
List the users granted a specific Snowflake role via the REST API, mapped to the StackOne IAM unified user schema with the queried role attached as a role-scoped entry. Currently supports resource_type "role" only.
- List Grants To Role
List all privileges granted to a role
- List Grants Of Role
List the users and roles this role has been granted to
- List Grants On Role
List privileges granted on the role object itself
- List Future Grants To Role
List future grants defined for a role
- Get Role Tags
Get the tag assignments for a ROLE (roles only)
- Get Statement Results
Retrieve an additional result partition (page) for a completed async SQL statement
- Set Tags On Role
Assign tag values to a ROLE (roles only)
- Fetch Database Details
Fetch metadata and properties of a specific database
- Undrop Database
Restore a previously dropped database within the Time Travel retention period
- Fetch Function Details
Retrieve function signature and implementation
- Fetch Pipe Details
Retrieve pipe configuration and status
- Fetch Procedure Details
Retrieve procedure definition and metadata
- Call Stored Procedure
Execute a stored procedure with parameters
- Grant Role To User
Assign a role to a user account
- Revoke Role From User
Remove role assignment from a user
- Grant Privileges To Role
Grant object privileges to a role for access control
- Revoke Privileges From Role
Revoke object privileges from a role
- Grant Future Privileges To Role
Grant privileges on future objects to a role
- Revoke Future Grants From Role
Revoke future-object privileges from a role
- Unset Tags From Role
Remove tag assignments from a ROLE (roles only)
- Fetch Schema Details
Retrieve metadata for a specific schema
- Execute Query
Execute simple SELECT queries that complete within 45 seconds and return results immediately
- Execute SQL Statement
Execute SQL statements with custom formatting and optional async execution for operations exceeding 45 seconds
- Check Statement Status
Retrieve execution status, progress, and results for asynchronously submitted SQL statements
- Cancel Statement Execution
Terminate actively running SQL statements to reclaim compute resources and prevent unwanted operations
- Fetch Stage Details
Retrieve stage configuration and storage integration details
- Fetch Stream Details
Retrieve stream metadata and current offset
- Fetch Table Details
Fetch table metadata including columns, constraints, and statistics
- Alter Table
Create or replace a table with updated structure and properties
- Undrop Table
Restore a previously dropped table within the Time Travel retention period
- Fetch Task Details
Retrieve task definition, schedule, and status
- Resume Task
Enable a suspended task to run on schedule
- Suspend Task
Pause a running task to stop scheduled execution
- Execute Task
Manually trigger a task to run immediately
- Fetch User Details
Fetch user profile information and settings
- Fetch View Details
Retrieve view definition and metadata
- Fetch Warehouse Details
Retrieve warehouse configuration and current status
- Start Warehouse
Resume a suspended warehouse to begin processing queries
- Suspend Warehouse
Pause a running warehouse to stop consuming credits
- Alter Warehouse
Create or replace a warehouse with updated configuration (full property set required — omitted properties are reset to defaults)
Set Up Your Snowflake MCP Server in Minutes
One endpoint. Any framework. Your agent is talking to Snowflake in under 10 lines of code.
Agent Frameworks
{
"mcpServers": {
"stackone": {
"command": "npx",
"args": [
"-y",
"mcp-remote@latest",
"https://api.stackone.com/mcp?x-account-id=<account_id>",
"--header",
"Authorization: Basic <YOUR_BASE64_TOKEN>"
]
}
}
}Snowflake Resources
How I Vibe-Coded a Customer Success Hub Using StackOne's AI Native Integration Platform
How a non-developer vibe-coded a customer success dashboard pulling HubSpot, Pylon, PostHog, Databricks, and Fireflies through StackOne's MCP gateway.
7 min read
MCP Code Mode: Keeping Tool Responses Out of Agent Context
Anthropic's code_execution processes data already in context. Custom MCP code mode keeps raw tool responses in a sandbox. 14K tokens vs 500.
11 min
Comparing BM25, TF-IDF, and Hybrid Search for MCP Tool Discovery
Benchmarking BM25, TF-IDF, and hybrid search for MCP tool discovery across 916 tools. The 80/20 TF-IDF/BM25 hybrid hits 21% Top-1 accuracy in under 1ms.
10 min
Indirect Prompt Injection Defense for MCP Tools: A Technical Guide
MCP tools that read emails, CRM records, and tickets are indirect prompt injection vectors. Here's how we built a two-tier defense that scans tool results in ~11ms.
12 min
MCP vs A2A: Architecture, Security, and When to Use Each
MCP vs A2A: what each protocol standardizes, how they differ, their shared security risks including indirect prompt injection, and when to use one, both, or a hybrid architecture.
12 min
MCP vs API: What Hundreds of Connector Builds Taught Us
MCP wraps APIs, it doesn't replace them. After building hundreds of connectors that serve both, here's when each approach wins.
14 min read
Snowflake MCP Server FAQ
Does StackOne have a Snowflake MCP server?
Snowflake MCP server vs direct API integration — what's the difference?
How does Snowflake authentication work for AI agents?
origin_owner_id.Are Snowflake MCP tools vulnerable to prompt injection?
What is the context bloat of a Snowflake agent and how do I avoid it?
Can I limit which actions my Snowflake agent can access?
Can I create custom agent actions for my Snowflake MCP server?
When should I NOT use a Snowflake MCP server?
What AI frameworks and AI clients does the StackOne Snowflake MCP server support?
Put your AI agents to work
All the tools you need to build and scale AI agent integrations, with best-in-class connectivity, execution, and security.