Snowflake Cortex AI

by sfc-gh-tgordonjr

Not rated
GitHub

About

An MCP server for Snowflake providing tools for Cortex AI features like Search, Analyst, and Complete.

Details

Author
sfc-gh-tgordonjr
Categories
Cloud Service, Other, AI, Knowledge Base, Search

Setup

Install Snowflake Cortex AI in your MCP client (Claude Desktop, Cursor, Windsurf, and others).

Repository: https://github.com/sfc-gh-tgordonjr/mcp-snow-tg

Follow the installation instructions in the repository README, then restart your MCP client.

Snowflake Cortex AI Model Context Protocol (MCP) Server

This Snowflake MCP server provides tooling for Snowflake Cortex AI features, bringing these capabilities to the MCP ecosystem. When connected to an MCP Client (e.g.Claude for Desktop,fast-agent,Agentic Orchestration Framework), users can leverage these Cortex AI features.

The MCP server currently supports the below Cortex AI capabilities:

- Cortex Search: Query unstructured data in Snowflake as commonly used in Retrieval Augmented Generation (RAG) applications.
-
Cortex Analyst: Query structured data in Snowflake via rich semantic modeling.
-
Cortex Complete: Simple chat-completion with optional parameters using a number of available LLMs
-
Cortex Agent: (Coming Soon) Agentic orchestrator across structured and unstructured data retrieval

A simple configuration file is used to create tooling for the various Cortex AI features. An example can be seen atservices/service_config.yamland a template is below. Many Cortex Search and Cortex Analyst services can be added. Ideal descriptions are both highly descriptive and mutually exclusive. The path to this configuration file will be passed to the server and the contents used to create MCP server tools at startup.

cortex_complete: # Set default model if one is not specified by user in Cortex Copmlete tool default_model: "snowflake-llama-3.3-70b" search_services: # List all Cortex Search services - service_name: "<service_name>" description: > # Should start with "Search service that ..." "<Search services that ...>" database_name: "<database_name>" schema_name: "<schema_name>" - service_name: "<service_name>" description: > # Should start with "Search service that ..." "<Search services that ...>" database_name: "<database_name>" schema_name: "<schema_name>" analyst_services: # List all Cortex Analyst semantic models/views - service_name: "<service_name>" # Create descriptive name for the service semantic_model: "<semantic_yaml_or_view>" # Fully-qualify semantic YAML model or Semantic View description: > # Should start with "Analyst service that ..." "<Analyst service that ...>" - service_name: "<service_name>" # Create descriptive name for the service semantic_model: "<semantic_yaml_or_view>" # Fully-qualify semantic YAML model or Semantic View description: > # Should start with "Analyst service that ..." "<Analyst service that ...>"

A Snowflake username and account identifier will be necessary to connect. From Snowsight, select your user name and[Connect a tool to Snowflaketo obtain your Snowflake account identifier. This will be passed to the server at startup.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.