dbt
공식dbt(데이터 빌드 도구)를 위한 공식 MCP 서버로, dbt Core/Cloud CLI 통합, 프로젝트 메타데이터 검색, 모델 정보 및 시맨틱 레이어 쿼리 기능을 제공합니다.
Dbt MCP(으)로 무엇을 할 수 있나요?
- dbt 메트릭 조회 —
list_metrics,get_dimensions, 또는get_metrics_compiled_sql을 사용하여 메트릭 정의, 차원 또는 컴파일된 SQL을 요청합니다. - 프로젝트 계보 탐색 —
get_lineage또는get_related_models로 모델 의존성 및 업스트림/다운스트림 관계를 추적합니다. - dbt 명령 실행 —
run,test또는build를 실행하여 모델을 구체화하고, 데이터를 검증하거나 프로젝트를 빌드합니다. - 보일러플레이트 코드 생성 —
generate_source,generate_model_yaml또는generate_staging_model을 통해 소스 YAML, 모델 YAML 또는 스테이징 SQL을 생성합니다. - 작업 실행 모니터링 —
get_job_run_details,get_job_run_error또는list_job_run_artifacts를 사용하여 실행 상태, 오류 또는 아티팩트를 확인합니다. - 노드 세부 정보 검사 —
get_node_details로 모델, 소스 및 테스트를 포함한 모든 리소스 유형의 전체 메타데이터를 검색합니다.
문서
dbt MCP 서버
이 MCP(Model Context Protocol) 서버는 dbt와 상호작용할 수 있는 다양한 도구를 제공합니다. 이 MCP 서버를 사용하여 dbt Core, dbt Fusion 및 dbt Platform에서 프로젝트의 컨텍스트를 AI 에이전트에 제공할 수 있습니다.
자세한 내용은 여기 문서를 참조하세요. 이 블로그 게시물에서 dbt MCP 서버로 가능한 작업에 대한 자세한 내용을 확인할 수 있습니다.
실험적 MCP 번들
각 릴리스마다 실험적 Model Context Protocol 번들(dbt-mcp.mcpb)을 게시하여 MCPB 인식 클라이언트가 추가 설정 없이 이 서버를 가져올 수 있도록 합니다. 최신 릴리스 자산에서 번들을 다운로드하고 Anthropic의 mcpb CLI 문서에 따라 설치하거나 검사하세요.
피드백
의견이나 질문이 있으면 GitHub Issue를 생성하거나 커뮤니티 Slack의 #tools-dbt-mcp 채널에 참여하세요.
아키텍처
dbt MCP 서버 아키텍처를 통해 에이전트가 다양한 도구에 연결할 수 있습니다.

도구
SQL
dbt Platform 인프라에서 SQL을 실행하고 생성하기 위한 도구입니다.
execute_sql: Semantic Layer 지원과 함께 dbt Platform 인프라에서 SQL을 실행합니다.text_to_sql: 프로젝트 컨텍스트를 사용하여 자연어로 SQL을 생성합니다.
Semantic Layer
dbt Semantic Layer에 대한 자세한 내용은 여기를 클릭하세요.
get_dimension_values: 차원의 고유 값을 가져옵니다. 특정 측정항목으로 범위를 지정할 수 있습니다.get_dimensions: 지정된 측정항목의 차원을 가져옵니다.get_entities: 지정된 측정항목의 엔터티를 가져옵니다.get_metrics_compiled_sql: 쿼리를 실행하지 않고 측정항목에 대한 컴파일된 SQL을 반환합니다.list_metrics: 정의된 모든 측정항목을 검색합니다.list_saved_queries: 저장된 모든 쿼리를 검색합니다.query_metrics: 필터링 및 그룹화 옵션으로 측정항목 쿼리를 실행합니다.
Discovery
dbt Discovery API에 대한 자세한 내용은 여기를 클릭하세요.
get_all_macros: 매크로를 검색합니다. 패키지별 필터링 또는 패키지 이름만 반환 옵션을 제공합니다.get_all_models: 모든 모델의 이름과 설명을 검색합니다.get_all_sources: 신선도 상태가 포함된 모든 소스를 가져옵니다. 소스 이름별 필터링 옵션을 제공합니다.get_exposure_details: (더 이상 사용되지 않음 —get_node_details사용)get_exposures: 모든 노출(다운스트림 대시보드, 앱 또는 분석)을 가져옵니다.get_lineage: 유형, 깊이 및 방향 필터링이 포함된 제한된 계보 그래프를 가져옵니다.get_macro_details: (더 이상 사용되지 않음 —get_node_details사용)get_mart_models: 모든 마트 모델을 검색합니다.get_model_children: (더 이상 사용되지 않음 —get_lineage사용)get_model_details: (더 이상 사용되지 않음 —get_node_details사용)get_model_health: 실행 상태, 테스트 결과 및 업스트림 소스 신선도와 같은 상태 신호를 가져옵니다.get_model_parents: (더 이상 사용되지 않음 —get_lineage사용)get_model_performance: 모델의 실행 기록을 가져옵니다. 테스트 결과 포함 옵션을 제공합니다.get_node_details: 모든 dbt 리소스 유형(모델, 소스, 노출, 테스트, 시드, 스냅샷, 매크로, 시맨틱 모델)의 전체 세부 정보를 가져옵니다.get_related_models: 시맨틱 검색을 사용하여 유사한 모델을 찾습니다.get_seed_details: (더 이상 사용되지 않음 —get_node_details사용)get_semantic_model_details: (더 이상 사용되지 않음 —get_node_details사용)get_snapshot_details: (더 이상 사용되지 않음 —get_node_details사용)get_source_details: (더 이상 사용되지 않음 —get_node_details사용)get_test_details: (더 이상 사용되지 않음 —get_node_details사용)search: [알파] dbt 프로젝트 전체에서 리소스를 검색합니다(일반 공개 아님).
dbt CLI
클라이언트가 MCP 도구를 통해 dbt 명령을 사용하도록 허용하면 데이터 모델, 소스 및 웨어하우스 객체가 수정될 수 있습니다. 클라이언트를 신뢰하고 잠재적 영향을 이해하는 경우에만 진행하세요.
build: DAG 순서로 모델, 테스트, 스냅샷 및 시드를 실행합니다.clone: 지정된 상태에서 선택한 노드를 대상 스키마에 복제합니다.compile: 모델/테스트/분석에서 실행 가능한 SQL을 생성합니다. Jinja 로직 검증에 유용합니다.docs: dbt 프로젝트에 대한 문서를 생성합니다.get_lineage_dev: 유형 및 깊이 필터링으로 로컬 manifest.json에서 계보를 검색합니다.get_node_details_dev: 로컬 manifest.json에서 노드 세부 정보를 검색합니다(모델, 시드, 스냅샷, 소스).list: 선택기 지원과 함께 유형별로 dbt 프로젝트의 리소스를 나열합니다.parse: 구문 정확성을 위해 프로젝트 파일을 구문 분석하고 검증합니다.run: 데이터베이스에서 모델을 구체화하기 위해 모델을 실행합니다.show: 데이터베이스에 대해 SQL을 실행하고 결과를 반환합니다.test: 데이터 및 모델 무결성을 검증하기 위해 테스트를 실행합니다.
Admin API
dbt 관리 API에 대한 자세한 내용은 여기를 클릭하세요.
cancel_job_run: 실행 중인 작업을 취소합니다.get_job_details: 트리거, 일정 및 dbt 명령을 포함한 작업 구성을 가져옵니다.get_job_run_artifacts: 작업 실행에서 특정 아티팩트를 다운로드합니다. 큰 아티팩트는 jq_filter로 재시도하라는 안내 메시지를 반환합니다. 대상 추출을 위한 jq 필터링을 지원합니다.get_job_run_details: 상태, 타이밍, 단계 및 아티팩트를 포함한 실행 세부 정보를 가져옵니다.get_job_run_error: 작업 실행에 대한 오류 및/또는 경고 세부 정보를 가져옵니다. 경고만 포함하거나 표시하는 옵션을 제공합니다.list_job_run_artifacts: 작업 실행에서 사용 가능한 아티팩트를 나열합니다.list_jobs: dbt Platform 계정의 작업을 나열합니다. 프로젝트 또는 환경별 필터링 옵션을 제공합니다.list_jobs_runs: 작업 실행을 나열합니다. 작업, 상태 또는 정렬 필드별 필터링 옵션을 제공합니다.list_projects: dbt Platform 계정의 모든 프로젝트를 나열합니다.retry_job_run: 실패한 작업 실행을 재시도합니다.trigger_job_run: 작업 실행을 트리거합니다. git 브랜치, 스키마 또는 기타 설정을 재정의하는 옵션을 제공합니다.
dbt Codegen
이 도구는 dbt 프로젝트 파일에 대한 보일러플레이트 코드 생성을 자동화하는 데 도움이 됩니다.
generate_model_yaml: 열이 포함된 모델 YAML을 생성합니다. 업스트림 설명을 상속하는 옵션을 제공합니다.generate_source: 데이터베이스 스키마를 검사하여 소스 YAML을 생성합니다. 열 포함 옵션을 제공합니다.generate_staging_model: 소스 테이블에서 스테이징 모델 SQL을 생성합니다.
dbt LSP
고급 SQL 컴파일 및 열 수준 계보 분석을 위해 Fusion 엔진을 활용하는 도구 세트입니다.
fusion.compile_sql: dbt Platform을 통해 프로젝트 컨텍스트에서 SQL을 컴파일합니다.fusion.get_column_lineage: dbt Platform을 통해 열 수준 계보를 추적합니다.get_column_lineage: 로컬에서 열 수준 계보를 추적합니다(dbt Labs VSCE를 통한 dbt-lsp 필요).
제품 문서
docs.getdbt.com의 공식 dbt 문서에서 콘텐츠를 검색하고 가져오기 위한 도구입니다.
get_product_doc_pages: 경로 또는 URL로 하나 이상의 docs.getdbt.com 페이지의 전체 Markdown 콘텐츠를 가져옵니다.search_product_docs: 쿼리와 일치하는 페이지를 docs.getdbt.com에서 검색합니다. 관련성 순으로 제목, URL 및 설명을 반환합니다. 전체 콘텐츠를 가져오려면 get_product_doc_pages를 사용하세요.
MCP 서버 메타데이터
이 도구는 MCP 서버 자체에 대한 정보를 제공합니다.
get_mcp_server_branch: 실행 중인 dbt MCP 서버의 현재 git 브랜치를 반환합니다.get_mcp_server_version: dbt MCP 서버의 현재 버전을 반환합니다.
예시
일반적으로 dbt MCP 서버를 Claude 또는 Cursor와 같은 에이전트 제품에 연결합니다. 그러나 자체 에이전트를 만드는 데 관심이 있다면 예시 디렉토리에서 시작 방법을 확인하세요.
종속성
종속성은 특정 버전으로 고정되어 있으며 자동으로 업데이트되지 않습니다. 보안 관련 종속성 업데이트만 자동 풀 리퀘스트를 통해 제출됩니다.
기여
참여 방법에 대한 지침은 CONTRIBUTING.md을 읽으세요!