Skip to main content
Glama
config.py4.06 kB
from dbt_mcp.config.config import ( Config, DbtCliConfig, DbtCodegenConfig, LspConfig, ) from dbt_mcp.config.config_providers import ( AdminApiConfig, DefaultAdminApiConfigProvider, DefaultDiscoveryConfigProvider, DefaultProxiedToolConfigProvider, DefaultSemanticLayerConfigProvider, DiscoveryConfig, ProxiedToolConfig, SemanticLayerConfig, ) from dbt_mcp.config.headers import ( AdminApiHeadersProvider, DiscoveryHeadersProvider, ProxiedToolHeadersProvider, SemanticLayerHeadersProvider, ) from dbt_mcp.config.settings import CredentialsProvider, DbtMcpSettings from dbt_mcp.dbt_cli.binary_type import BinaryType from dbt_mcp.lsp.lsp_binary_manager import LspBinaryInfo from dbt_mcp.oauth.token_provider import StaticTokenProvider mock_settings = DbtMcpSettings.model_construct() mock_proxied_tool_config = ProxiedToolConfig( url="http://localhost:8000", prod_environment_id=1, dev_environment_id=1, user_id=1, headers_provider=ProxiedToolHeadersProvider( token_provider=StaticTokenProvider(token="token") ), are_sql_tools_disabled=False, are_discovery_tools_disabled=False, ) mock_dbt_cli_config = DbtCliConfig( project_dir="/test/project", dbt_path="/path/to/dbt", dbt_cli_timeout=10, binary_type=BinaryType.DBT_CORE, ) mock_dbt_codegen_config = DbtCodegenConfig( project_dir="/test/project", dbt_path="/path/to/dbt", dbt_cli_timeout=10, binary_type=BinaryType.DBT_CORE, ) mock_lsp_config = LspConfig( project_dir="/test/project", lsp_binary_info=LspBinaryInfo( path="/path/to/lsp", version="1.0.0", ), ) mock_discovery_config = DiscoveryConfig( url="http://localhost:8000", headers_provider=DiscoveryHeadersProvider( token_provider=StaticTokenProvider(token="token") ), environment_id=1, ) mock_semantic_layer_config = SemanticLayerConfig( host="localhost", token="token", url="http://localhost:8000", headers_provider=SemanticLayerHeadersProvider( token_provider=StaticTokenProvider(token="token") ), prod_environment_id=1, ) mock_admin_api_config = AdminApiConfig( url="http://localhost:8000", headers_provider=AdminApiHeadersProvider( token_provider=StaticTokenProvider(token="token") ), account_id=12345, ) # Create mock config providers class MockProxiedToolConfigProvider(DefaultProxiedToolConfigProvider): def __init__(self): pass # Skip the base class __init__ async def get_config(self): return mock_proxied_tool_config class MockDiscoveryConfigProvider(DefaultDiscoveryConfigProvider): def __init__(self): pass # Skip the base class __init__ async def get_config(self): return mock_discovery_config class MockSemanticLayerConfigProvider(DefaultSemanticLayerConfigProvider): def __init__(self): pass # Skip the base class __init__ async def get_config(self): return mock_semantic_layer_config class MockAdminApiConfigProvider(DefaultAdminApiConfigProvider): def __init__(self): pass # Skip the base class __init__ async def get_config(self): return mock_admin_api_config class MockCredentialsProvider(CredentialsProvider): def __init__(self, settings: DbtMcpSettings | None = None): super().__init__(settings or mock_settings) self.token_provider = StaticTokenProvider(token=self.settings.dbt_token) async def get_credentials(self): return self.settings, self.token_provider mock_config = Config( proxied_tool_config_provider=MockProxiedToolConfigProvider(), dbt_cli_config=mock_dbt_cli_config, dbt_codegen_config=mock_dbt_codegen_config, discovery_config_provider=MockDiscoveryConfigProvider(), semantic_layer_config_provider=MockSemanticLayerConfigProvider(), admin_api_config_provider=MockAdminApiConfigProvider(), lsp_config=mock_lsp_config, disable_tools=[], credentials_provider=MockCredentialsProvider(), )

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