Skip to main content

Consumer Account Objects

When a consumer installs Metatate, the application creates a set of objects within their Snowflake account. This page documents every object created, its purpose, and the privileges required.

Application Roles

RolePurpose
app_adminFull administrative access to all application features
app_userStandard access for governance operations

See Authentication & Authorization for the detailed permission matrix.

Schemas

SchemaPurposeVisibility
app_dataGovernance tables, tenant configuration, activity loggingInternal
coreMCP tools, MCP server, utility functionsConsumer-accessible
app_publicVersioned procedures, lifecycle callbacks, consumer-facing APIConsumer-accessible
app_internalInternal procedures and helpersAdmin only

Compute Pools

Compute PoolInstance TypePurpose
Pool 1CPU_X64_XSMain application services (router, frontend, backend)
Pool 2CPU_X64_XSStreamlit launcher

Both pools use the smallest available instance type. The consumer can monitor pool utilization through standard Snowflake compute pool commands.

Services

ServicePurpose
Main serviceCore application (router, frontend, backend)
Streamlit serviceApplication launcher in Snowsight

Streamlit Launcher

A Streamlit application (metatate_launcher) that serves as the entry point in Snowsight. It provides a launch button that opens the main application running on SPCS.

Tables

Tenant Configuration

TablePurpose
app_data.tenant_configTenant-level settings (display preferences, feature flags)
app_data.activity_logUser action audit trail

Governance Tables (6 core)

TablePurpose
app_data.governed_tablesMaster index of all governed tables
app_data.deployed_instructionsAll materialized instructions
app_data.deployed_column_detailsColumn classification and masking details
app_data.deployed_usage_rulesUsage, AI, and retention rules
app_data.deployed_data_meaningBusiness context, lineage, compliance metadata
app_data.deployed_validation_rulesQuery validation rules

Tracking Tables

TablePurpose
app_data.governance_snapshotsPoint-in-time governance state snapshots
app_data.governance_decision_logAuthorization decision audit trail

Core Schema Objects

MCP Tools (3 Functions, 3 Procedures)

ObjectPurpose
core.discover_contextBrowse governed tables and their metadata
core.get_decision_contextRetrieve business context, lineage, compliance, and policy summary for a table
core.inspect_data_meaningGet column-level classification, masking, and semantic details
core.authorize_useEvaluate whether a proposed data use is allowed
core.validate_query_contextValidate a SQL query against deployed governance rules
core.explain_whyRetrieve the reasoning trace for a previous decision

MCP Server

ObjectPurpose
core.metatate_mcpMCP server registered via v1.register_mcp_server(), exposes the 6 tools above to external AI agents

Each MCP tool is configured with:

  • Input schema (JSON Schema defining parameters)
  • Warehouse reference (uses consumer's APP_WAREHOUSE)
  • Function or procedure type

Stored Procedures

Consumer-Facing (app_public)

ProcedurePurpose
Version registrationLifecycle management for versioned installs
Reference callbacksHandle consumer granting/revoking table and warehouse references
Configuration proceduresTenant setup and settings management

Privileges Requested

The application requests the following privileges during installation:

PrivilegePurpose
CREATE COMPUTE POOLCreate the two compute pools for running services
CREATE WAREHOUSENot used — the app uses the consumer's warehouse via reference
IMPORTED PRIVILEGES ON DATABASE SNOWFLAKEAccess to Cortex AI functions (optional, AI features only)
BIND SERVICE ENDPOINTExpose the application through SPCS ingress

References Requested

ReferenceTypeAccessPurpose
DATABASE_CATALOGMulti-valued tableSELECTRead table metadata for governance catalog
APP_WAREHOUSEWarehouseUSAGEExecute queries and MCP tool operations

The consumer controls exactly which tables are shared through DATABASE_CATALOG. The application can only read (SELECT) from those tables and cannot modify them.