From honeydew-ai
Use when exploring Honeydew semantic layer, discovering entities/fields, setting up workspace and branch context, or querying data. For creating metrics use metric-creation skill. For creating attributes use attribute-creation skill.
npx claudepluginhub honeydew-ai/honeydew-ai-coding-agents-plugins --plugin honeydew-aiThis skill uses the workspace's default tool permissions.
Before ANY Honeydew work, set up your session and discover the model:
Use when the user wants to query, analyze, or explore data through the Honeydew semantic layer. Covers structured queries and multi-step deep analysis.
Answers business questions on analytics, metrics, KPIs by generating/executing SQL via dbt Semantic Layer, compiled SQL mods, or model analysis against data warehouse.
Guides creation of Analytic Models in SAP Datasphere for SAP Analytics Cloud: reporting dimensions, calculated/restricted measures, count distinct, currency conversions, exception aggregation. Use for SAC dashboards, KPIs, self-service BI.
Share bugs, ideas, or general feedback.
Before ANY Honeydew work, set up your session and discover the model:
Step 0: Set workspace and branch
Use get_session_workspace_and_branch to check the current session context. If no workspace/branch is set, use list_workspaces, list_workspace_branches, and set_session_workspace_and_branch to select the right workspace and branch. All subsequent tool calls use this context. See the workspace-branch skill for the full tool reference including branch creation, deletion, history, and PRs.
Step 1: List entities
Use the list_entities MCP tool to see all entities in the model.
Step 2: Explore entity details
Use the get_entity MCP tool with the relevant entity name to list its attributes, metrics, datasets, and relations.
Step 3: Search the model
Use the search_model MCP tool to find specific fields, entities, or other objects by name.
Honeydew is the Semantic Layer for AI and BI. Honeydew enables a shared source of truth for data teams, providing consistency, flexibility, governance and performance. It provides metrics and attributes over data warehouse tables and views (Snowflake, Databricks, BigQuery) that have relationships defined between them. Use the Honeydew MCP tools to interact with the model.
See the workspace-branch skill for the full reference. Key tools:
list_workspaces - List all available workspaces (name + warehouse type)list_workspace_branches - List branches for a workspaceget_session_workspace_and_branch - Get current session workspace/branchset_session_workspace_and_branch - Set session workspace/branchcreate_workspace_branch - Create a branch (session switches automatically)delete_workspace_branch - Delete a branch (destructive — confirm with user first)get_branch_history - Get change history for the current branchcreate_pr_for_working_branch - Create a PR for the current working branchTypical flow:
get_session_workspace_and_branch — check if a workspace/branch is already setlist_workspaces → pick a workspace → set_session_workspace_and_branchcreate_workspace_branch (session switches to the new branch automatically)list_entities - List all entities in the model (names, keys, descriptions)get_entity - Get detailed info for a specific entity (attributes, metrics, datasets, relations, YAML)get_field - Get detailed info for a specific field (attribute or metric) within an entitylist_domains - List all domains with their names, descriptions, and entitiesget_domain - Get detailed info for a specific domain (entities, filters, parameters, YAML)search_model - Search across all model objects (entities, attributes, metrics, datasets, dynamic datasets, domains, parameters). Requires query and search_mode:
OR — splits by whitespace, returns objects matching any wordAND — splits by whitespace, returns only objects matching all wordsEXACT — uses the full string as-is, matches name or display name exactlyentity.field syntax to scope to fields within an entity (e.g. customers.balance finds balance on entities matching customers; customers. returns all fields of matching entities)Honeydew has two layers: the semantic layer (entities, metrics, attributes, relations, domains — the data model and business logic such as metric calculations) and the context layer (agents and their associated context items — instructions, skills, knowledge, and memory — that shape how the AI analyst behaves).
list_agents — List all agents with their names, descriptions, domains, and context referencesget_agent — Get detailed info for a specific agent (domain, context items, welcome message, sample questions)list_context_items — List all context items with their types, names, titles, and subtypesget_context_item — Get detailed info for a specific context itemlist_databases - List all databases in the connected data warehouselist_schemas - List schemas in a specific databaselist_tables - List tables in the connected data warehouse (requires database and schema parameters)get_table_info - Get column-level details for a specific warehouse tableget_data_from_fields - Execute a query from field parameters and return data (supports limit and offset for pagination)get_sql_from_fields - Generate SQL from field parameters without executingask_deep_analysis_question - Natural language question (simple or complex) → agentic analysis and results. Use conversation_id for follow-up questions.abort_deep_analysis_question - Abort an in-progress deep analysis. Requires conversation_id.User Request
│
├─► Exact field names known? Want structured query?
│ └─► YES → get_data_from_fields (deterministic, structured)
│
└─► Plain English / natural language / "why" / investigation?
└─► ask_deep_analysis_question (any complexity)
| Tool | Use When | Example Request |
|---|---|---|
get_data_from_fields | Known fields, programmatic | "Get total_revenue by month for 2021" |
ask_deep_analysis_question | Plain English questions, trends, root cause | "Show me revenue by city last 2 years" |
ask_deep_analysis_question | Complex analysis, "why", multi-step | "Find revenue drops and find contributing factors" |
Call get_data_from_fields with field parameters:
attributes: ["order_header.order_year_month"]metrics: ["order_header.total_revenue"]filters: ["order_header.order_year_month LIKE '2021%'"]order_by: ["\"order_header.order_year_month\" ASC"] — field references must be wrapped in double quotes, like SQL identifiersdomain: "my_domain" (optional)limit: max rows to return (default: 100)offset: rows to skip (for pagination)Same field parameters as get_data_from_fields, but returns the generated SQL without executing it.
Call with:
question: "Show me revenue by city for the last 2 years" (simple) or "Look at last 5 years, identify revenue drops and find contributing factors" (complex)conversation_id: "conv_123" (optional, for follow-up questions)Returns: markdown analysis report, data, suggested follow-up questions, conversation_id
list_entities to list all entitiesget_entity with an entity name to see its attributes, metrics, datasets, and relationsget_field with entity name and field name to get detailed info about a specific fieldlist_domains to list all domainsget_domain with a domain name to see its entities, filters, parameters, and YAML definitionsearch_model with a query string and search_mode (OR, AND, or EXACT) to find any model object by name. Use EXACT when you know the precise name; use OR or AND for broad discoveryUse the honeydew-docs MCP tools to search the Honeydew documentation when:
Search for topics like: "entities", "metrics", "attributes", "domains", "relations", "semantic layer", "governance", or any Honeydew-specific concept.
get_entity to explore fields on a specific entityentity.field_name syntax