<< All versions
Skill v1.0.1
currentAutomated scan100/100maxanatsko/mcp-engine-public/mcp-engine-semantic-authoring
+10 new
──Details
PublishedSeptember 5, 2026 at 11:02 PM
Content Hashsha256:6d73a94b240444c2...
Git SHA2a95092c45a3
Bump Typepatch
──Files
Files (1 file, 3.0 KB)
SKILL.md3.0 KBactive
SKILL.md · 38 lines · 3.0 KB
version: "1.0.1" name: mcp-engine-semantic-authoring description: Use when creating or updating measures, KPIs, calculation groups, DAX UDFs, named expressions, Power Query parameters, or model properties, when deciding between a measure and a calculated column, or when cleaning up naming, display folders, and semantic style. For one-off DAX queries, use mcp-engine-query; for physical tables, columns, and relationships, use mcp-engine-schema-authoring; for consolidating or renaming measures with downstream consumers, use mcp-engine-refactoring.
PBI Semantic Authoring
Semantic-layer work through manage_semantic. Read only the references needed for the current task.
Decide the semantic path
- Prefer a measure for reusable business logic. Choose a calculated column only when a persisted row-level attribute is required — creating one is a
manage_schemacreate_calc_columnoperation covered bymcp-engine-schema-authoring. - Ground names first:
list_model{ "operation": "list", "spec": { "type": "measures" } }(repeat with"tables";spec.typetakes one value per call), and check for an existing equivalent with{ "operation": "search", "spec": { "query": "<name>", "mode": "name" } }before creating a near-duplicate measure. - Keep semantic edits separate from table or relationship edits unless the task explicitly spans both.
Branch by object type
- Measures and KPIs (
create_measure,update_measure,create_kpi): measure-authoring-guide. When logic placement is unclear: modeling-best-practices-guide. - Calculation groups (
create_calc_group): calc-groups-guide. DAX UDFs (create_udf): dax-udf-guide. - Named expressions (
create_named_expression): named-expressions-guide. Power Query parameters (create_pq_parameter, RangeStart/RangeEnd): power-query-parameters-guide. - Model properties (descriptions, culture, annotations, implicit-measure behavior): model-properties-guide. Naming, folders, and style cleanup across many objects: semantic-layer-style-guide.
Guardrails
- Follow the model's existing naming and folder conventions unless the user requests a deliberate change.
- Validate each new or changed measure with a scoped
run_query{ "operation": "execute", "query": "<query evaluating the measure>" }in a realistic filter context. - Use
dry_run: trueand per-item identifiers for bulk semantic edits.
Report results
After semantic work, report:
- Each object created or changed, with its DAX or M expression.
- Whether
dry_runor bulk mode was used and the outcome. - The validation query run and its result.
- Naming or folder decisions that follow (or deliberately break) model conventions.