Snowflake Cube Server logo

Snowflake Cube Server

by isaacwasserman

The Snowflake Cube Server is an MCP server designed to interact with Cube Semantic Layers. It provides resources and tools for querying and describing data available in a Cube deployment.

View on GitHub

Last updated: N/A

What is Snowflake Cube Server?

This server is an MCP server that provides an interface to interact with a Cube Semantic Layer. It allows users to query data and retrieve descriptions of the available data.

How to use Snowflake Cube Server?

The server exposes resources like context://data_description for data descriptions and data://{data_id} for data retrieval in JSON format. It also provides tools like read_data to query the Cube REST API and describe_data to get data descriptions.

Key features of Snowflake Cube Server

  • Data retrieval via Cube REST API

  • Data description resource

  • JSON data representation

  • Unique data identifiers

  • Agentic data description tool

Use cases of Snowflake Cube Server

  • Integrating Cube Semantic Layer with MCP clients

  • Retrieving and formatting data from Cube

  • Describing available data in a Cube deployment

  • Building applications that leverage Cube's semantic layer

  • Automated data analysis workflows

FAQ from Snowflake Cube Server

What is the purpose of the context://data_description resource?

It contains a description of the data available in the Cube deployment.

How do I retrieve data using this server?

Use the read_data tool to query the Cube REST API. The tool returns a unique identifier that can be used to retrieve the data in JSON format from the data://{data_id} resource.

What format does the read_data tool return?

The read_data tool returns data in YAML format along with a unique identifier.

How do I get a description of the available data?

You can use either the context://data_description resource or the describe_data tool.

What is the difference between context://data_description and describe_data?

context://data_description is an application-controlled version, while describe_data is an agentic version of the data description functionality.