Snowflake Integration for AI Agents

Equip your AI agents with Snowflake MCP or direct API to run SQL queries, schedule analytics jobs, monitor data quality, create secure shares, and manage warehouse resources through natural language.
Snowflake Logo
Gradient Top
Gradient Middle
Gradient Bottom
divider

Supported Tools

Tools
Cancel Statement ExecutionCancels the execution of a running SQL statement.
Check Statement StatusRetrieves the status of a previously submitted SQL statement.
Execute SQLTool to execute a SQL statement and return the resulting data.
Fetch Catalog IntegrationFetches details of a specific catalog integration.
Get Active Scheduled MaintenancesRetrieves a list of any active scheduled maintenances currently in the In Progress or Verifying state.
Get All Scheduled MaintenancesRetrieves a list of the 50 most recent scheduled maintenances, including those in the Completed state.
Get Component StatusRetrieves the status of individual components, each listed with its current status.
Get Status RollupRetrieves the status rollup for the entire page, including indicators and human-readable descriptions of the blended component status.
Get Status SummaryRetrieves a summary of the status page, including status indicators, component statuses, unresolved incidents, and upcoming or in-progress scheduled maintenances.
Get Unresolved IncidentsRetrieves a list of any unresolved incidents currently in the Investigating, Identified, or Monitoring state.
Get Upcoming Scheduled MaintenancesRetrieves a list of any upcoming scheduled maintenances still in the Scheduled state.
Show DatabasesLists all databases for which you have access privileges.
Show SchemasLists all schemas for which you have access privileges.
Show TablesLists all tables for which you have access privileges.
Submit SQL StatementSubmits a SQL statement for execution.

Connect Snowflake MCP Tool with your Agent

Python
TypeScript

Install Composio

python
pip install composio claude-agent-sdk
Install the Composio SDK and Claude Agent SDK

Create Tool Router Session

python
from composio import Composio
from claude_agent_sdk import ClaudeSDKClient, ClaudeAgentOptions

composio = Composio(api_key='your-composio-api-key')
session = composio.create(user_id='your-user-id')
url = session.mcp.url
Initialize the Composio client and create a Tool Router session

Connect to AI Agent

python
import asyncio

options = ClaudeAgentOptions(
    permission_mode='bypassPermissions',
    mcp_servers={
        'tool_router': {
            'type': 'http',
            'url': url,
            'headers': {
                'x-api-key': 'your-composio-api-key'
            }
        }
    },
    system_prompt='You are a helpful assistant with access to Snowflake tools.',
    max_turns=10
)

async def main():
    async with ClaudeSDKClient(options=options) as client:
        await client.query('Execute SQL to list all warehouses')
        async for message in client.receive_response():
            if hasattr(message, 'content'):
                for block in message.content:
                    if hasattr(block, 'text'):
                        print(block.text)

asyncio.run(main())
Use the MCP server with your AI agent

Connect Snowflake API Tool with your Agent

Python
TypeScript

Install Composio

python
pip install composio_openai
Install the Composio SDK

Initialize Composio and Create Tool Router Session

python
from openai import OpenAI
from composio import Composio
from composio_openai import OpenAIResponsesProvider

composio = Composio(provider=OpenAIResponsesProvider())
openai = OpenAI()
session = composio.create(user_id='your-user-id')
Import and initialize Composio client, then create a Tool Router session

Execute Snowflake Tools via Tool Router with Your Agent

python
tools = session.tools
response = openai.responses.create(
  model='gpt-4.1',
  tools=tools,
  input=[{
    'role': 'user',
    'content': 'Run a SQL query to fetch yesterday\'s sales data from the orders table in Snowflake.'
  }]
)
result = composio.provider.handle_tool_calls(
  response=response,
  user_id='your-user-id'
)
print(result)
Get tools from Tool Router session and execute Snowflake actions with your Agent

Why Use Composio?

AI Native Snowflake Integration

  • Supports both Snowflake MCP and direct API based integrations
  • Structured, LLM-friendly schemas for reliable tool execution
  • Rich coverage for reading, writing, and querying your Snowflake data

Managed Auth

  • Built-in OAuth handling with automatic token refresh and rotation
  • Central place to manage, scope, and revoke Snowflake access
  • Per user and per environment credentials instead of hard-coded keys

Agent Optimized Design

  • Tools are tuned using real error and success rates to improve reliability over time
  • Comprehensive execution logs so you always know what ran, when, and on whose behalf

Enterprise Grade Security

  • Fine-grained RBAC so you control which agents and users can access Snowflake
  • Scoped, least privilege access to Snowflake resources
  • Full audit trail of agent actions to support review and compliance

Frequently Asked Questions

Do I need my own developer credentials to use Snowflake with Composio?

Yes, Snowflake requires you to configure your own Basic Auth credentials. Once set up, Composio handles secure credential storage and authentication for you.

Can I use multiple toolkits together?

Yes! Composio's Tool Router enables agents to use multiple toolkits. Learn more.

Is Composio secure?

Composio is SOC 2 and ISO 27001 compliant with all data encrypted in transit and at rest. Learn more.

What if the API changes?

Composio maintains and updates all toolkit integrations automatically, so your agents always work with the latest API versions.

Used by agents from

Context
ASU
Letta
glean
HubSpot
Agent.ai
Altera
DataStax
Entelligence
Rolai
Context
ASU
Letta
glean
HubSpot
Agent.ai
Altera
DataStax
Entelligence
Rolai
Context
ASU
Letta
glean
HubSpot
Agent.ai
Altera
DataStax
Entelligence
Rolai

Never worry about agent reliability

We handle tool reliability, observability, and security so you never have to second-guess an agent action.