dbt MCP Server
ทางการเซิร์ฟเวอร์ MCP อย่างเป็นทางการสำหรับ dbt (เครื่องมือสร้างข้อมูล) ที่ให้การผสานรวมกับ dbt Core/Cloud CLI, การค้นพบเมทาดาทาของโปรเจกต์, ข้อมูลโมเดล, และความสามารถในการสอบถามเลเยอร์เชิงความหมาย
เอกสาร
dbt MCP Server
MCP (Model Context Protocol) เซิร์ฟเวอร์นี้มีเครื่องมือหลากหลายสำหรับการโต้ตอบกับ dbt คุณสามารถใช้ MCP เซิร์ฟเวอร์นี้เพื่อให้บริบทของโปรเจกต์ของคุณใน dbt Core, dbt Fusion และ dbt Platform แก่เอเจนต์ AI
อ่านเอกสารของเรา ที่นี่ เพื่อเรียนรู้เพิ่มเติม บล็อกโพสต์นี้ ให้รายละเอียดเพิ่มเติมเกี่ยวกับสิ่งที่สามารถทำได้ด้วย dbt MCP เซิร์ฟเวอร์
Experimental MCP Bundle
เราเผยแพร่ Model Context Protocol Bundle (dbt-mcp.mcpb) แบบทดลองในแต่ละรุ่น เพื่อให้ไคลเอนต์ที่รองรับ MCPB สามารถนำเข้าเซิร์ฟเวอร์นี้ได้โดยไม่ต้องตั้งค่าเพิ่มเติม ดาวน์โหลดบันเดิลจาก assets ของรุ่นล่าสุด และทำตามเอกสาร mcpb CLI ของ Anthropic เพื่อติดตั้งหรือตรวจสอบ
ข้อเสนอแนะ
หากคุณมีความคิดเห็นหรือคำถาม สร้าง GitHub Issue หรือเข้าร่วมกับเราใน community Slack ในช่อง #tools-dbt-mcp
สถาปัตยกรรม
สถาปัตยกรรมของ dbt MCP เซิร์ฟเวอร์ช่วยให้เอเจนต์ของคุณเชื่อมต่อกับเครื่องมือที่หลากหลาย

เครื่องมือ
SQL
เครื่องมือสำหรับการดำเนินการและสร้าง SQL บนโครงสร้างพื้นฐานของ dbt Platform
execute_sql: ดำเนินการ SQL บนโครงสร้างพื้นฐานของ dbt Platform พร้อมรองรับ Semantic Layertext_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: ดึงข้อมูล saved queries ทั้งหมดquery_metrics: ดำเนินการคิวรีเมตริกพร้อมตัวเลือกการกรองและการจัดกลุ่ม
Discovery
หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ dbt Discovery API คลิก ที่นี่
get_all_macros: ดึงข้อมูลมาโคร; มีตัวเลือกในการกรองตามแพ็กเกจหรือส่งคืนเฉพาะชื่อแพ็กเกจget_all_models: ดึงข้อมูลชื่อและคำอธิบายของโมเดลทั้งหมดget_all_sources: รับแหล่งข้อมูลทั้งหมดพร้อมสถานะความสดใหม่; มีตัวเลือกในการกรองตามชื่อแหล่งข้อมูลget_exposure_details: รับรายละเอียด exposure รวมถึงเจ้าของ, parents และสถานะความสดใหม่get_exposures: รับ exposure ทั้งหมด (แดชบอร์ด, แอป หรือการวิเคราะห์ปลายทาง)get_lineage: รับกราฟ lineage แบบเต็ม (ancestors และ descendants) พร้อมการกรองตามประเภทและความลึกget_macro_details: รับรายละเอียดสำหรับมาโครเฉพาะget_mart_models: ดึงข้อมูล mart models ทั้งหมดget_model_children: รับ dependents ปลายทางของโมเดลget_model_details: รับรายละเอียดโมเดลรวมถึง SQL ที่คอมไพล์แล้ว, คอลัมน์ และ schemaget_model_health: รับสัญญาณสุขภาพ: สถานะการรัน, ผลการทดสอบ และความสดใหม่ของแหล่งข้อมูลต้นทางget_model_parents: รับ dependencies ต้นทางของโมเดลget_model_performance: รับประวัติการดำเนินการสำหรับโมเดล; มีตัวเลือกในการรวมผลการทดสอบget_related_models: ค้นหาโมเดลที่คล้ายกันโดยใช้การค้นหาเชิงความหมายget_seed_details: รับรายละเอียดสำหรับ seed เฉพาะget_semantic_model_details: รับรายละเอียดสำหรับ semantic model เฉพาะget_snapshot_details: รับรายละเอียดสำหรับ snapshot เฉพาะget_source_details: รับรายละเอียดแหล่งข้อมูลรวมถึงคอลัมน์และความสดใหม่get_test_details: รับรายละเอียดสำหรับการทดสอบเฉพาะsearch: [Alpha] ค้นหาทรัพยากรทั่วทั้งโปรเจกต์ dbt (ยังไม่พร้อมใช้งานทั่วไป)
dbt CLI
การอนุญาตให้ไคลเอนต์ของคุณใช้คำสั่ง dbt ผ่านเครื่องมือ MCP อาจปรับเปลี่ยนโมเดลข้อมูล, แหล่งข้อมูล และออบเจกต์คลังข้อมูลของคุณ ดำเนินการต่อเมื่อคุณเชื่อถือไคลเอนต์และเข้าใจผลกระทบที่อาจเกิดขึ้นเท่านั้น
build: ดำเนินการโมเดล, การทดสอบ, snapshots และ seeds ตามลำดับ DAGclone: โคลนโหนดที่เลือกจากสถานะที่ระบุไปยัง schema เป้าหมายcompile: สร้าง SQL ที่ดำเนินการได้จากโมเดล/การทดสอบ/การวิเคราะห์; มีประโยชน์สำหรับการตรวจสอบตรรกะ Jinjadocs: สร้างเอกสารสำหรับโปรเจกต์ dbtget_lineage_dev: ดึงข้อมูล lineage จาก manifest.json ในเครื่อง พร้อมการกรองตามประเภทและความลึกget_node_details_dev: ดึงข้อมูลรายละเอียดโหนดจาก manifest.json ในเครื่อง (โมเดล, seeds, snapshots, แหล่งข้อมูล)list: แสดงรายการทรัพยากรในโปรเจกต์ dbt ตามประเภท พร้อมรองรับตัวเลือกparse: แยกวิเคราะห์และตรวจสอบไฟล์โปรเจกต์เพื่อความถูกต้องของไวยากรณ์run: ดำเนินการโมเดลเพื่อทำให้เป็นรูปธรรมในฐานข้อมูลshow: ดำเนินการ SQL กับฐานข้อมูลและส่งคืนผลลัพธ์test: รันการทดสอบเพื่อตรวจสอบความสมบูรณ์ของข้อมูลและโมเดล
Admin API
หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ dbt Administrative API คลิก ที่นี่
cancel_job_run: ยกเลิกงานที่กำลังทำงานอยู่get_job_details: รับการกำหนดค่างานรวมถึงทริกเกอร์, กำหนดการ และคำสั่ง dbtget_job_run_details: รับรายละเอียดการรันรวมถึงสถานะ, เวลา, ขั้นตอน และ artifactsget_job_run_error: รับรายละเอียดข้อผิดพลาดและ/หรือคำเตือนสำหรับการรันงาน; มีตัวเลือกในการรวมหรือแสดงเฉพาะคำเตือนlist_job_run_artifacts: แสดงรายการ artifacts ที่มีอยู่จากการรันงานlist_jobs: แสดงรายการงานในบัญชี dbt Platform; มีตัวเลือกในการกรองตามโปรเจกต์หรือสภาพแวดล้อมlist_jobs_runs: แสดงรายการการรันงาน; มีตัวเลือกในการกรองตามงาน, สถานะ หรือจัดลำดับตามฟิลด์list_projects: แสดงรายการโปรเจกต์ทั้งหมดในบัญชี dbt Platformretry_job_run: ลองใหม่สำหรับการรันงานที่ล้มเหลวtrigger_job_run: ทริกเกอร์การรันงาน; มีตัวเลือกในการเขียนทับ git branch, schema หรือการตั้งค่าอื่นๆ
dbt Codegen
เครื่องมือเหล่านี้ช่วยสร้างโค้ด boilerplate โดยอัตโนมัติสำหรับไฟล์โปรเจกต์ dbt
generate_model_yaml: สร้างโมเดล YAML พร้อมคอลัมน์; มีตัวเลือกในการสืบทอดคำอธิบายจากต้นทางgenerate_source: สร้าง source YAML โดยการตรวจสอบ schema ฐานข้อมูล; มีตัวเลือกในการรวมคอลัมน์generate_staging_model: สร้าง staging model SQL จากตารางต้นทาง
dbt LSP
ชุดเครื่องมือที่ใช้ประโยชน์จากเอนจิน Fusion สำหรับการคอมไพล์ SQL ขั้นสูงและการวิเคราะห์ lineage ระดับคอลัมน์
fusion.compile_sql: คอมไพล์ SQL ในบริบทของโปรเจกต์ผ่าน dbt Platformfusion.get_column_lineage: ติดตาม lineage ระดับคอลัมน์ผ่าน dbt Platformget_column_lineage: ติดตาม lineage ระดับคอลัมน์ในเครื่อง (ต้องใช้ dbt-lsp ผ่าน dbt Labs VSCE)
เอกสารผลิตภัณฑ์
เครื่องมือสำหรับการค้นหาและดึงเนื้อหาจากเอกสารทางการของ dbt ที่ docs.getdbt.com
get_product_doc_pages: ดึงเนื้อหา Markdown แบบเต็มของหน้าหนึ่งหน้าหรือมากกว่าจาก docs.getdbt.com ตามพาธหรือ URLsearch_product_docs: ค้นหา docs.getdbt.com สำหรับหน้าที่ตรงกับคิวรี; ส่งคืนชื่อเรื่อง, URL และคำอธิบายที่จัดอันดับตามความเกี่ยวข้อง ใช้ get_product_doc_pages เพื่อดึงเนื้อหาฉบับเต็ม
ข้อมูลเมตาของ MCP Server
เครื่องมือเหล่านี้ให้ข้อมูลเกี่ยวกับ MCP เซิร์ฟเวอร์เอง
get_mcp_server_branch: ส่งคืน git branch ปัจจุบันของ dbt MCP เซิร์ฟเวอร์ที่กำลังทำงานอยู่get_mcp_server_version: ส่งคืนเวอร์ชันปัจจุบันของ dbt MCP เซิร์ฟเวอร์
ตัวอย่าง
โดยทั่วไป คุณจะเชื่อมต่อ dbt MCP เซิร์ฟเวอร์กับผลิตภัณฑ์เอเจนต์เช่น Claude หรือ Cursor อย่างไรก็ตาม หากคุณสนใจที่จะสร้างเอเจนต์ของคุณเอง ลองดู ไดเรกทอรีตัวอย่าง สำหรับวิธีการเริ่มต้น
การพึ่งพา
การพึ่งพาถูกตรึงไว้ที่เวอร์ชันเฉพาะและไม่ได้รับการอัปเดตโดยอัตโนมัติ เฉพาะการอัปเดตการพึ่งพาที่เกี่ยวข้องกับความปลอดภัยเท่านั้นที่ถูกส่งผ่าน pull request อัตโนมัติ
การมีส่วนร่วม
อ่าน CONTRIBUTING.md สำหรับคำแนะนำเกี่ยวกับวิธีการเข้าร่วม!