dbt
chính thứcMáy chủ MCP chính thức cho dbt (công cụ xây dựng dữ liệu) cung cấp tích hợp với CLI dbt Core/Cloud, khám phá siêu dữ liệu dự án, thông tin mô hình và khả năng truy vấn lớp ngữ nghĩa.
Bạn có thể làm gì với Dbt MCP?
- Truy vấn số liệu — Yêu cầu trợ lý chạy truy vấn số liệu với lọc và nhóm qua
query_metrics, hoặc liệt kê các số liệu đã định nghĩa bằnglist_metrics. - Khám phá dòng dõi mô hình — Yêu cầu một đồ thị dòng dõi có giới hạn với bộ lọc theo loại, độ sâu và hướng bằng
get_lineage. - Kiểm tra tình trạng mô hình — Yêu cầu trạng thái chạy, kết quả kiểm thử và độ mới của nguồn thượng nguồn cho một mô hình bằng
get_model_health. - Chạy lệnh dbt — Để trợ lý thực thi
build,run,test,compilehoặcshowtrên dự án của bạn. - Quản lý lượt chạy công việc — Kích hoạt, thử lại, hủy hoặc kiểm tra các lượt chạy công việc trên dbt Platform và các tạo phẩm của chúng.
- Tạo mã mẫu — Tạo YAML mô hình, YAML nguồn hoặc SQL mô hình staging bằng
generate_model_yaml,generate_sourcevàgenerate_staging_model.
Tài liệu
dbt MCP Server
MCP (Model Context Protocol) server này cung cấp nhiều công cụ khác nhau để tương tác với dbt. Bạn có thể sử dụng MCP server này để cung cấp cho các AI agent ngữ cảnh về dự án của bạn trong dbt Core, dbt Fusion và dbt Platform.
Đọc tài liệu của chúng tôi tại đây để tìm hiểu thêm. Bài viết blog này cung cấp thêm chi tiết về những gì có thể làm được với dbt MCP server.
MCP Bundle thử nghiệm
Chúng tôi phát hành một Model Context Protocol Bundle thử nghiệm (dbt-mcp.mcpb) với mỗi bản phát hành để các client hỗ trợ MCPB có thể nhập server này mà không cần thiết lập thêm. Tải bundle từ các tài nguyên của bản phát hành mới nhất và làm theo tài liệu mcpb CLI của Anthropic để cài đặt hoặc kiểm tra nó.
Phản hồi
Nếu bạn có nhận xét hoặc câu hỏi, hãy tạo GitHub Issue hoặc tham gia cùng chúng tôi trong Slack cộng đồng tại kênh #tools-dbt-mcp.
Kiến trúc
Kiến trúc của dbt MCP server cho phép agent của bạn kết nối với nhiều công cụ khác nhau.

Công cụ
SQL
Các công cụ để thực thi và tạo SQL trên hạ tầng dbt Platform.
execute_sql: Thực thi SQL trên hạ tầng dbt Platform với hỗ trợ Semantic Layer.text_to_sql: Tạo SQL từ ngôn ngữ tự nhiên bằng ngữ cảnh dự án.
Semantic Layer
Để tìm hiểu thêm về dbt Semantic Layer, nhấn vào đây.
get_dimension_values: Lấy các giá trị riêng biệt cho một dimension; có tùy chọn giới hạn theo các metric cụ thể.get_dimensions: Lấy các dimension cho các metric được chỉ định.get_entities: Lấy các entity cho các metric được chỉ định.get_metrics_compiled_sql: Trả về SQL đã biên dịch cho các metric mà không thực thi truy vấn.list_metrics: Truy xuất tất cả các metric đã định nghĩa.list_saved_queries: Truy xuất tất cả các saved query.query_metrics: Thực thi các truy vấn metric với các tùy chọn lọc và nhóm.
Discovery
Để tìm hiểu thêm về dbt Discovery API, nhấn vào đây.
get_all_macros: Truy xuất các macro; có tùy chọn lọc theo package hoặc chỉ trả về tên package.get_all_models: Truy xuất tên và mô tả của tất cả các model.get_all_sources: Lấy tất cả các source với trạng thái độ tươi mới; có tùy chọn lọc theo tên source.get_exposure_details: (không còn được khuyến nghị — hãy dùngget_node_detailsthay thế)get_exposures: Lấy tất cả các exposure (dashboard, ứng dụng hoặc phân tích ở hạ nguồn).get_lineage: Lấy một đồ thị lineage có giới hạn với bộ lọc theo loại, độ sâu và hướng.get_macro_details: (không còn được khuyến nghị — hãy dùngget_node_detailsthay thế)get_mart_models: Truy xuất tất cả các mart model.get_model_children: (không còn được khuyến nghị — hãy dùngget_lineagethay thế)get_model_details: (không còn được khuyến nghị — hãy dùngget_node_detailsthay thế)get_model_health: Lấy các tín hiệu sức khỏe: trạng thái chạy, kết quả test và độ tươi mới của source ở thượng nguồn.get_model_parents: (không còn được khuyến nghị — hãy dùngget_lineagethay thế)get_model_performance: Lấy lịch sử thực thi cho một model; có tùy chọn bao gồm kết quả test.get_node_details: Lấy thông tin chi tiết đầy đủ cho bất kỳ loại tài nguyên dbt nào (model, source, exposure, test, seed, snapshot, macro, semantic_model).get_related_models: Tìm các model tương tự bằng tìm kiếm ngữ nghĩa.get_seed_details: (không còn được khuyến nghị — hãy dùngget_node_detailsthay thế)get_semantic_model_details: (không còn được khuyến nghị — hãy dùngget_node_detailsthay thế)get_snapshot_details: (không còn được khuyến nghị — hãy dùngget_node_detailsthay thế)get_source_details: (không còn được khuyến nghị — hãy dùngget_node_detailsthay thế)get_test_details: (không còn được khuyến nghị — hãy dùngget_node_detailsthay thế)search: [Alpha] Tìm kiếm tài nguyên trên toàn dự án dbt (chưa được phổ biến rộng rãi).search_public_mesh_models: Tìm các model dbt Mesh công khai trên các dự án và xác nhận danh tính của nhà sản xuất để bạn có thể xây dựng một cross-project ref đã được xác minh (chỉ áp dụng cho cấu hình đa dự án).
dbt CLI
Cho phép client của bạn sử dụng các lệnh dbt thông qua công cụ MCP có thể sửa đổi các model dữ liệu, source và đối tượng trong warehouse của bạn. Chỉ tiếp tục nếu bạn tin tưởng client và hiểu tác động tiềm ẩn.
build: Thực thi các model, test, snapshot và seed theo thứ tự DAG.clone: Sao chép các node được chọn từ trạng thái được chỉ định sang (các) schema đích.compile: Tạo SQL có thể thực thi từ model/test/analysis; hữu ích để xác thực logic Jinja.docs: Tạo tài liệu cho dự án dbt.get_lineage_dev: Truy xuất lineage từ manifest.json cục bộ với bộ lọc theo loại và độ sâu.get_node_details_dev: Truy xuất thông tin chi tiết node từ manifest.json cục bộ (model, seed, snapshot, source).list: Liệt kê các tài nguyên trong dự án dbt theo loại với hỗ trợ selector.parse: Phân tích cú pháp và xác thực các tệp dự án để đảm bảo tính đúng đắn của cú pháp.run: Thực thi các model để materialize chúng trong cơ sở dữ liệu.show: Thực thi SQL trên cơ sở dữ liệu và trả về kết quả.test: Chạy các test để xác thực tính toàn vẹn của dữ liệu và model.
Admin API
Để tìm hiểu thêm về dbt Administrative API, nhấn vào đây.
cancel_job_run: Hủy một job đang chạy.get_job_details: Lấy cấu hình job bao gồm trigger, lịch trình và các lệnh dbt.get_job_run_artifacts: Tải xuống một artifact cụ thể từ một lần chạy job; các artifact lớn sẽ trả về thông báo hướng dẫn thử lại với jq_filter; hỗ trợ lọc jq để trích xuất có mục tiêu.get_job_run_details: Lấy thông tin chi tiết lần chạy bao gồm trạng thái, thời gian, các bước và artifact.get_job_run_error: Lấy thông tin chi tiết lỗi và/hoặc cảnh báo cho một lần chạy job; có tùy chọn bao gồm hoặc chỉ hiển thị cảnh báo.list_job_run_artifacts: Liệt kê các artifact có sẵn từ một lần chạy job.list_jobs: Liệt kê các job trong một tài khoản dbt Platform; có tùy chọn lọc theo dự án hoặc môi trường.list_jobs_runs: Liệt kê các lần chạy job; có tùy chọn lọc theo job, trạng thái hoặc sắp xếp theo trường.list_projects: Liệt kê tất cả các dự án trong tài khoản dbt Platform.retry_job_run: Thử lại một lần chạy job thất bại.trigger_job_run: Kích hoạt một lần chạy job; có tùy chọn ghi đè nhánh git, schema hoặc các cài đặt khác.
dbt Codegen
Các công cụ này giúp tự động hóa việc tạo mã boilerplate cho các tệp dự án dbt.
generate_model_yaml: Tạo YAML model với các cột; có tùy chọn kế thừa mô tả từ thượng nguồn.generate_source: Tạo YAML source bằng cách xem xét nội quan các schema cơ sở dữ liệu; có tùy chọn bao gồm các cột.generate_staging_model: Tạo SQL model staging từ một bảng source.
dbt LSP
Một bộ công cụ tận dụng engine Fusion để biên dịch SQL nâng cao và phân tích lineage ở cấp độ cột.
fusion.compile_sql: Biên dịch SQL trong ngữ cảnh dự án thông qua dbt Platform.fusion.get_column_lineage: Truy vết lineage ở cấp độ cột thông qua dbt Platform.get_column_lineage: Truy vết lineage ở cấp độ cột cục bộ (yêu cầu dbt-lsp thông qua dbt Labs VSCE).
Tài liệu sản phẩm
Các công cụ để tìm kiếm và truy xuất nội dung từ tài liệu dbt chính thức tại docs.getdbt.com.
get_product_doc_pages: Truy xuất toàn bộ nội dung Markdown của một hoặc nhiều trang docs.getdbt.com theo đường dẫn hoặc URL.search_product_docs: Tìm kiếm trên docs.getdbt.com các trang khớp với truy vấn; trả về tiêu đề, URL và mô tả được xếp hạng theo mức độ liên quan. Sử dụng get_product_doc_pages để truy xuất toàn bộ nội dung.
Siêu dữ liệu MCP Server
Các công cụ này cung cấp thông tin về chính MCP server.
get_mcp_server_branch: Trả về nhánh git hiện tại của dbt MCP server đang chạy.get_mcp_server_version: Trả về phiên bản hiện tại của dbt MCP server.
Ví dụ
Thông thường, bạn sẽ kết nối dbt MCP server với một sản phẩm agent như Claude hoặc Cursor. Tuy nhiên, nếu bạn quan tâm đến việc tạo agent của riêng mình, hãy xem thư mục ví dụ để biết cách bắt đầu.
Phụ thuộc
Các phụ thuộc được ghim vào các phiên bản cụ thể và không được cập nhật tự động. Chỉ các cập nhật phụ thuộc liên quan đến bảo mật mới được gửi qua các pull request tự động.
Đóng góp
Đọc CONTRIBUTING.md để biết hướng dẫn về cách tham gia!
Xem đầu vào công cụ và ngữ cảnh đã giải quyết để biết các khai báo selector và hợp đồng context mapper.