Skip to main content
Glama
dbt-labs
by dbt-labs

get_mart_models

Retrieve names and descriptions of mart models in the dbt project environment, organizing cleaned and transformed data for end-user consumption by analysts, dashboards, or business tools.

Instructions

Get the name and description of all mart models in the environment. A mart model is part of the presentation layer of the dbt project. It's where cleaned, transformed data is organized for consumption by end-users, like analysts, dashboards, or business tools.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • The core implementation of the get_mart_models tool handler. It uses the ModelsFetcher to retrieve models filtered by 'marts' layer and excludes the metricflow_time_spine model.
    @dbt_mcp_tool(
        description=get_prompt("discovery/get_mart_models"),
        title="Get Mart Models",
        read_only_hint=True,
        destructive_hint=False,
        idempotent_hint=True,
    )
    async def get_mart_models(context: DiscoveryToolContext) -> list[dict]:
        mart_models = await context.models_fetcher.fetch_models(
            model_filter={"modelingLayer": "marts"}
        )
        return [m for m in mart_models if m["name"] != "metricflow_time_spine"]
  • The registration call to register_discovery_tools on the MCP server, which includes the get_mart_models tool among discovery tools.
    logger.info("Registering discovery tools")
    register_discovery_tools(
        dbt_mcp,
        config.discovery_config_provider,
        disabled_tools=disabled_tools,
        enabled_tools=enabled_tools,
        enabled_toolsets=enabled_toolsets,
        disabled_toolsets=disabled_toolsets,
    )
  • The DISCOVERY_TOOLS list that includes the get_mart_models function for registration via register_discovery_tools.
    DISCOVERY_TOOLS = [
        get_mart_models,
        get_all_models,
        get_model_details,
        get_model_parents,
        get_model_children,
        get_model_health,
        get_exposures,
        get_exposure_details,
        get_all_sources,
        get_source_details,
        get_macro_details,
        get_seed_details,
        get_semantic_model_details,
        get_snapshot_details,
        get_test_details,
    ]
  • Definition of the ToolName enum member for get_mart_models, used in registration, policies, and toolsets.
    GET_MART_MODELS = "get_mart_models"
    GET_ALL_MODELS = "get_all_models"
  • Inclusion of get_mart_models in the DISCOVERY toolset, allowing toolset-level enable/disable.
    Toolset.DISCOVERY: {
        ToolName.GET_MART_MODELS,
        ToolName.GET_ALL_MODELS,
        ToolName.GET_MODEL_DETAILS,
        ToolName.GET_MODEL_PARENTS,
        ToolName.GET_MODEL_CHILDREN,
        ToolName.GET_MODEL_HEALTH,
        ToolName.GET_ALL_SOURCES,
        ToolName.GET_SOURCE_DETAILS,
        ToolName.GET_EXPOSURES,
        ToolName.GET_EXPOSURE_DETAILS,
        ToolName.GET_RELATED_MODELS,
        ToolName.GET_MACRO_DETAILS,
        ToolName.GET_SEED_DETAILS,
        ToolName.GET_SEMANTIC_MODEL_DETAILS,
        ToolName.GET_SNAPSHOT_DETAILS,
        ToolName.GET_TEST_DETAILS,
    },

Tool Definition Quality

Score is being calculated. Check back soon.

Install Server

Other Tools

Related Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/dbt-labs/dbt-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server