snowflake-catalog-gotchas-v22-0-3

Snowflake catalog patterns that look documented but aren’t

Three Snowflake SQL catalog patterns shipped broken in snowflake-mcp v22.0.0 because they LOOK like obvious SHOW/SHOW PARAMETERS commands but do not work as one would assume. All verified live against Runwal account on 2026-04-25 during v22.0.3 fix-pack.

1. SHOW CORTEX MODELS — does not exist

Calling it raises 001003 (42000) syntax error. There is no SNOWFLAKE.CORTEX.LIST_AVAILABLE_MODELS() table function either (verified — unexpected '(').

Canonical pattern: return a curated list pinned to vendor docs URL + verification stamp. Probe SHOW FUNCTIONS LIKE 'COMPLETE' IN SCHEMA SNOWFLAKE.CORTEX to confirm Cortex reachability. Source: https://docs.snowflake.com/en/sql-reference/functions/complete-snowflake-cortex#arguments

2. SHOW SEMANTIC VIEWS requires explicit scope

The bare command parses successfully but returns 0 rows on every account. Adding IN ACCOUNT (or IN DATABASE x / IN SCHEMA x.y) returns the actual rows.

SHOW SEMANTIC VIEWS              -- 0 rows (silent)
SHOW SEMANTIC VIEWS IN ACCOUNT   -- all visible views

Default the scope to IN ACCOUNT when no database/schema arg supplied.

3. ACCOUNT_EDITION is NOT a Snowflake parameter

SHOW PARAMETERS LIKE 'ACCOUNT_EDITION' IN ACCOUNT returns 0 rows on every edition. Code that infers edition = "UNKNOWN" from this empty result will always report UNKNOWN regardless of the account’s actual edition.

Canonical pattern: feature inference. Probe edition-gated features and infer the highest match:

Feature probedImplied edition gate
SHOW FUNCTIONS LIKE 'COMPLETE' IN SCHEMA SNOWFLAKE.CORTEXSTANDARD+
SHOW MASKING POLICIES IN ACCOUNT (no error)ENTERPRISE+
SHOW ROW ACCESS POLICIES IN ACCOUNT (no error)ENTERPRISE+
SHOW FAILOVER GROUPS IN ACCOUNT (no error)BUSINESS_CRITICAL+
Tri-Secret Secure tag presenceBUSINESS_CRITICAL+

Why this is in the institutional vault

All three were Bible R38 violations — guessing at upstream API surface from “obvious-looking” patterns. Live probing exposed the real semantics before patches. Future Snowflake work by any agent (claude-code, NOVA, dev-architect, etc.) MUST live-probe SHOW/SELECT before binding to a tool.

Reference impl

snowflake-mcp v22.0.3 — snowflake_client_complete.py functions list_cortex_models, show_semantic_views_v2, check_account_edition. Pair pilot-learnings.md documents full root-cause + fix.