MCP server for semantic SQL compilation, metric discovery, and analytics. Provides tools for querying semantic models, compiling SQL, discovering ontology concepts, and executing metric queries against multiple database backends.
Metis provides 15 well-named, verb-prefixed tools with consistent descriptions and complete input schemas. All tools follow verb_noun naming (search_, resolve_, list_, get_, compile_, query_, attribute_, compare_). Descriptions are present and actionable (avg ~120 chars), explaining WHAT each tool does and WHEN to use it. Input schemas are properly typed with string/array types and parameter descriptions. However, output schemas are not documented in the source, LLMs cannot predict return structure. Error handling is absent from descriptions; no guidance on retryability, user-fixable errors, or recovery paths. No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite all tools being READ_ONLY. Parameter descriptions lack format constraints (e.g., dialect enum values, query syntax rules). Missing pagination guidance for list tools. No security/permission documentation.
Attribute metric values to specific dimensions or factors.
Compare metric values across different dimensions or time periods.
Compile a semantic query into SQL for a specific database dialect.
Get detailed information about a specific dimension.
Get available values for a specific dimension.
Get all dimensions available in a semantic model.
Output schemas not documented. LLMs cannot predict return structure, field names, or types. Breaks tool chaining and forces agents to guess downstream parameter mappings.
No error handling guidance in descriptions. Tools do not explain retryability, user-fixable errors, or recovery paths. Agents cannot distinguish transient failures from permanent ones.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 67 | 2026-07-28+ | v2 |
Get detailed information about a specific metric.
Get detailed information about a specific semantic model.
Get all relationships defined in a semantic model.
List all metrics available in a semantic model.
List all semantic models in a project.
List all available projects in the semantic manifest.
Execute a metric query against the configured execution backend.
Resolve one exact ontology concept_ref to visible canonical dimension candidates with evidence. Even a unique result requires explicit caller selection; never infer a metric or rewrite a query.
Find ontology concepts using bounded metadata terms. Use when a concept identity is unknown; pass a returned concept_ref to resolve_ontology_concept.
Missing tool annotations. All 15 tools are READ_ONLY but lack readOnlyHint annotation. Agents cannot distinguish safe tools from destructive ones without explicit hints.
List tools lack pagination guidance. No mention of limit, offset, page_size, or result count. Large result sets risk context window exhaustion.
Parameter descriptions lack format constraints. 'dialect' in compile_sql accepts free-form strings; should enumerate valid dialects (ANSI, CLICKHOUSE, DORIS). 'query' parameters lack syntax rules.