Keboola MCP Server
ทางการสร้างเวิร์กโฟลว์ข้อมูล การผสานรวม และการวิเคราะห์ที่แข็งแกร่งบนแพลตฟอร์มที่ใช้งานง่ายเพียงแพลตฟอร์มเดียว
เอกสาร
Keboola MCP Server
เชื่อมต่อ AI Agent, MCP Client (Cursor, Claude, Windsurf, VS Code ...) และผู้ช่วย AI อื่นๆ เข้ากับ Keboola เปิดเผยข้อมูล, การแปลงข้อมูล, คำสั่ง SQL และการสั่งรันงาน—ไม่ต้องเขียนโค้ดเชื่อมต่อเอง ส่งมอบข้อมูลที่ถูกต้องให้กับ Agent เมื่อไหร่และที่ไหนก็ตามที่พวกเขาต้องการ
ภาพรวม
Keboola MCP Server เป็นสะพานเชื่อมโอเพนซอร์สระหว่างโปรเจกต์ Keboola ของคุณกับเครื่องมือ AI สมัยใหม่ มันเปลี่ยนฟีเจอร์ของ Keboola—เช่น การเข้าถึงพื้นที่จัดเก็บข้อมูล, การแปลงข้อมูลด้วย SQL และการสั่งรันงาน—ให้กลายเป็นเครื่องมือที่เรียกใช้ได้สำหรับ Claude, Cursor, CrewAI, LangChain, Amazon Q และอื่นๆ
ฟีเจอร์
ด้วย AI Agent และ MCP Server คุณสามารถ:
- พื้นที่จัดเก็บข้อมูล: สอบถามตารางโดยตรงและจัดการคำอธิบายตารางหรือ Bucket
- คอมโพเนนต์: สร้าง, แสดงรายการ และตรวจสอบการตั้งค่าของ Extractor, Writer, Data App และ Transformation
- SQL: สร้างการแปลงข้อมูลด้วย SQL โดยใช้ภาษาธรรมชาติ
- งาน: รันคอมโพเนนต์และการแปลงข้อมูล และเรียกดูรายละเอียดการดำเนินการของงาน
- โฟลว์: สร้างและจัดการไปป์ไลน์เวิร์กโฟลว์โดยใช้ Conditional Flow และ Orchestrator Flow
- Data Apps: สร้าง, ดีพลอย และจัดการ Keboola Streamlit Data App ที่แสดงผลการสอบถามข้อมูลในพื้นที่จัดเก็บข้อมูลของคุณ
- เมทาดาทา: ค้นหา, อ่าน และอัปเดตเอกสารโปรเจกต์และเมทาดาทาของออบเจกต์โดยใช้ภาษาธรรมชาติ
- Dev Branches: ทำงานอย่างปลอดภัยใน Development Branch นอกเหนือจาก Production ซึ่งการดำเนินการทั้งหมดจะถูกจำกัดขอบเขตไว้ที่ Branch ที่เลือก
🚀 เริ่มต้นอย่างรวดเร็ว: Remote MCP Server (วิธีที่ง่ายที่สุด)
วิธีที่ง่ายที่สุดในการใช้ Keboola MCP Server คือผ่าน Remote MCP Server ของเรา โซลูชันที่โฮสต์นี้ช่วยลดความจำเป็นในการติดตั้ง, กำหนดค่า หรือติดตั้งในเครื่องของคุณ
Remote MCP Server คืออะไร?
Remote Server ของเราโฮสต์อยู่บน Keboola Stack แบบ Multi-tenant ทุกแห่ง และรองรับการยืนยันตัวตนแบบ OAuth คุณสามารถเชื่อมต่อจากผู้ช่วย AI ใดๆ ก็ได้ที่รองรับการเชื่อมต่อแบบ Remote Streamable HTTP และการยืนยันตัวตนแบบ OAuth
วิธีการเชื่อมต่อ
- รับ URL ของ Remote Server: ไปที่ Keboola Project Settings → แท็บ
MCP Server - คัดลอก URL ของเซิร์ฟเวอร์: มันจะมีลักษณะเป็น
https://mcp.<YOUR_REGION>.keboola.com/mcp - กำหนดค่าผู้ช่วย AI ของคุณ: วาง URL ลงในการตั้งค่า MCP ของผู้ช่วย AI ของคุณ
- ยืนยันตัวตน: คุณจะได้รับแจ้งให้ยืนยันตัวตนด้วยบัญชี Keboola ของคุณและเลือกโปรเจกต์ของคุณ
ไคลเอนต์ที่รองรับ
- Cursor: ใช้ปุ่ม "Install In Cursor" ในการตั้งค่า MCP Server ของโปรเจกต์ของคุณ หรือคลิก
ปุ่มนี้
- Claude Desktop: เพิ่มการผสานรวมผ่าน Settings → Integrations
- Claude Code: ติดตั้งโดยใช้
claude mcp add --transport http keboola <URL>(ดูรายละเอียดด้านล่าง) - Windsurf: กำหนดค่าด้วย URL ของ Remote Server
- Make: กำหนดค่าด้วย URL ของ Remote Server
- MCP Client อื่นๆ: กำหนดค่าด้วย URL ของ Remote Server
การติดตั้ง Claude Code
Claude Code เป็นเครื่องมือ Command-Line Interface ที่ให้คุณโต้ตอบกับ Claude โดยใช้เทอร์มินัลของคุณ คุณสามารถติดตั้งการผสานรวม Keboola MCP Server ได้โดยใช้คำสั่งง่ายๆ
การติดตั้ง:
รันคำสั่งต่อไปนี้ในเทอร์มินัลของคุณ โดยแทนที่ <YOUR_REGION> ด้วยภูมิภาค Keboola ของคุณ:
claude mcp add --transport http keboola https://mcp.<YOUR_REGION>.keboola.com/mcp
คำสั่งเฉพาะภูมิภาค:
| ภูมิภาค | คำสั่งติดตั้ง |
|---|---|
| US Virginia AWS | claude mcp add --transport http keboola https://mcp.keboola.com/mcp |
| US Virginia GCP | claude mcp add --transport http keboola https://mcp.us-east4.gcp.keboola.com/mcp |
| EU Frankfurt AWS | claude mcp add --transport http keboola https://mcp.eu-central-1.keboola.com/mcp |
| EU Ireland Azure | claude mcp add --transport http keboola https://mcp.north-europe.azure.keboola.com/mcp |
| EU Frankfurt GCP | claude mcp add --transport http keboola https://mcp.europe-west3.gcp.keboola.com/mcp |
การใช้งาน:
เมื่อติดตั้งแล้ว คุณสามารถใช้ Keboola MCP Server ใน Claude Code ได้โดยพิมพ์ /mcp ในการสนทนาของคุณ และเลือกเครื่องมือ Keboola ที่คุณต้องการใช้
การยืนยันตัวตน:
เมื่อคุณใช้ Keboola MCP Server ใน Claude Code เป็นครั้งแรก หน้าต่างเบราว์เซอร์จะเปิดขึ้นเพื่อแจ้งให้คุณ:
- เข้าสู่ระบบด้วยบัญชี Keboola ของคุณ
- เลือกโปรเจกต์ที่คุณต้องการเชื่อมต่อ
- อนุญาตการเชื่อมต่อ
หลังจากการยืนยันตัวตน คุณสามารถเริ่มใช้เครื่องมือ Keboola ได้โดยตรงจาก Claude Code
สำหรับคำแนะนำการติดตั้งโดยละเอียดและ URL เฉพาะภูมิภาค โปรดดู เอกสารการติดตั้ง Remote Server ของเรา
การใช้ Development Branches
คุณสามารถทำงานได้อย่างปลอดภัยใน Keboola Development Branches โดยไม่ส่งผลกระทบต่อข้อมูล Production ของคุณ Remote MCP Server ที่โฮสต์จะเคารพพารามิเตอร์ KBC_BRANCH_ID และจะจำกัดขอบเขตการดำเนินการทั้งหมดไว้ที่ Branch ที่ระบุ คุณสามารถค้นหา Development Branch ID ได้ใน URL เมื่อนำทางไปยัง Development Branch ใน UI ตัวอย่างเช่น: https://connection.us-east4.gcp.keboola.com/admin/projects/PROJECT_ID/branch/BRANCH_ID/dashboard ต้องรวม Branch ID ไว้ในแต่ละคำขอโดยใช้ Header X-Branch-Id: <branchId> มิฉะนั้น MCP Server จะใช้ Production Branch เป็นค่าเริ่มต้น สิ่งนี้ควรได้รับการจัดการโดย AI Client หรือสภาพแวดล้อมที่จัดการการเชื่อมต่อเซิร์ฟเวอร์
การอนุญาตเครื่องมือและการควบคุมการเข้าถึง
เมื่อใช้การขนส่งแบบ HTTP (Streamable HTTP) คุณสามารถควบคุมได้ว่าเครื่องมือใดบ้างที่พร้อมใช้งานสำหรับไคลเอนต์โดยใช้ HTTP Header สิ่งนี้มีประโยชน์สำหรับการจำกัดความสามารถของ AI Agent หรือการบังคับใช้นโยบายการปฏิบัติตามข้อกำหนด
Authorization Headers
| Header | คำอธิบาย | ตัวอย่าง |
|---|---|---|
X-Allowed-Tools | รายการเครื่องมือที่อนุญาต คั่นด้วยเครื่องหมายจุลภาค | get_configs,get_buckets,query_data |
X-Disallowed-Tools | รายการเครื่องมือที่ยกเว้น คั่นด้วยเครื่องหมายจุลภาค | create_config,run_job |
X-Read-Only-Mode | จำกัดเฉพาะเครื่องมือแบบอ่านอย่างเดียว | true, 1, หรือ yes |
ลักษณะการทำงานของตัวกรอง
ตัวกรองจะถูกใช้ตามลำดับ: อนุญาต → ตัดด้วยอ่านอย่างเดียว → ยกเว้น Header ที่ว่างเปล่า = ไม่มีข้อจำกัด
เครื่องมือแบบอ่านอย่างเดียว
เครื่องมือแบบอ่านอย่างเดียวคือเครื่องมือที่มีคำอธิบายประกอบ readOnlyHint=True เครื่องมือเหล่านี้จะดึงข้อมูลเท่านั้นโดยไม่ทำการเปลี่ยนแปลงใดๆ กับโปรเจกต์ Keboola ของคุณ สำหรับรายการเครื่องมือแบบอ่านอย่างเดียวในปัจจุบัน โปรดดูไฟล์ TOOLS.md ซึ่งเป็นสแนปช็อตที่สร้างขึ้นโดยอัตโนมัติของชุดเครื่องมือจริง
ตัวอย่าง: การเข้าถึงแบบอ่านอย่างเดียว
X-Read-Only-Mode: true
สำหรับเอกสารโดยละเอียด โปรดดู developers.keboola.com/integrate/mcp/#tool-authorization-and-access-control
การติดตั้ง Local MCP Server (วิธีแบบกำหนดเองหรือสำหรับนักพัฒนา)
รัน MCP Server บนเครื่องของคุณเองเพื่อการควบคุมที่สมบูรณ์และการพัฒนาที่ง่ายดาย เลือกวิธีนี้เมื่อคุณต้องการปรับแต่งเครื่องมือ, ดีบักในเครื่อง หรือทำซ้ำอย่างรวดเร็ว คุณจะต้องโคลน Repository, ตั้งค่าข้อมูลรับรอง Keboola ผ่าน Environment Variables หรือ Headers ขึ้นอยู่กับการขนส่งของเซิร์ฟเวอร์, ติดตั้ง Dependencies และเริ่มต้นเซิร์ฟเวอร์ วิธีการนี้ให้ความยืดหยุ่นสูงสุด (เครื่องมือที่กำหนดเอง, การบันทึกในเครื่อง, การทำซ้ำแบบออฟไลน์) แต่ต้องมีการติดตั้งด้วยตนเอง และคุณต้องจัดการการอัปเดตและความลับด้วยตัวเอง
เซิร์ฟเวอร์รองรับตัวเลือก การขนส่ง หลายแบบ ซึ่งสามารถเลือกได้โดยระบุอาร์กิวเมนต์ --transport <transport> เมื่อเริ่มต้นเซิร์ฟเวอร์:
stdio- ค่าเริ่มต้นเมื่อไม่ได้ระบุ--transportอินพุต/เอาต์พุตมาตรฐาน โดยทั่วไปใช้สำหรับการปรับใช้ในเครื่องกับไคลเอนต์เดียวstreamable-http- รันเซิร์ฟเวอร์จากระยะไกลผ่าน HTTP ด้วยช่องทางสตรีมมิ่งแบบสองทิศทาง ทำให้ไคลเอนต์และเซิร์ฟเวอร์สามารถแลกเปลี่ยนข้อความได้อย่างต่อเนื่อง เชื่อมต่อผ่าน /mcp (เช่น http://localhost:8000/mcp)http-compat- นามแฝงสำหรับstreamable-httpซึ่งคงไว้เพื่อความเข้ากันได้แบบย้อนหลัง
สำหรับการสื่อสารระหว่างไคลเอนต์และเซิร์ฟเวอร์ ต้องระบุข้อมูลรับรอง Keboola เพื่อให้สามารถทำงานกับโปรเจกต์ของคุณในภูมิภาค Keboola ของคุณได้ สิ่งที่จำเป็นต้องมีคือ: KBC_STORAGE_TOKEN, KBC_STORAGE_API_URL, KBC_WORKSPACE_SCHEMA และ KBC_BRANCH_ID (ไม่บังคับ) คุณสามารถระบุสิ่งเหล่านี้ได้สองวิธี:
- สำหรับการใช้งานส่วนตัว (ส่วนใหญ่ใช้กับการขนส่งแบบ stdio): ตั้งค่า Environment Variables ก่อนเริ่มต้นเซิร์ฟเวอร์ คำขอทั้งหมดจะใช้ข้อมูลรับรองที่กำหนดไว้ล่วงหน้าเหล่านี้ซ้ำ
- สำหรับการใช้งานแบบหลายผู้ใช้: รวมตัวแปรไว้ใน Request Headers เพื่อให้แต่ละคำขอใช้ข้อมูลรับรองที่ให้มาพร้อมกับคำขอนั้น
KBC_STORAGE_TOKEN
นี่คือโทเค็นการยืนยันตัวตนของคุณสำหรับ Keboola:
สำหรับคำแนะนำเกี่ยวกับวิธีการสร้างและจัดการ Storage API Token โปรดดูที่ เอกสารอย่างเป็นทางการของ Keboola
หมายเหตุ: หากคุณต้องการให้ MCP Server มีการเข้าถึงที่จำกัด ให้ใช้ Custom Storage Token หากคุณต้องการให้ MCP เข้าถึงทุกอย่างในโปรเจกต์ของคุณ ให้ใช้ Master Token
KBC_WORKSPACE_SCHEMA
สิ่งนี้ระบุ Workspace ของคุณใน Keboola และใช้สำหรับคำสั่ง SQL อย่างไรก็ตาม จำเป็นต้องใช้เฉพาะเมื่อคุณใช้ Custom Storage Token แทน Master Token:
- หากใช้ Master Token: Workspace จะถูกสร้างขึ้นโดยอัตโนมัติเบื้องหลัง
- หากใช้ Custom Storage Token: ทำตาม คำแนะนำของ Keboola นี้เพื่อรับ KBC_WORKSPACE_SCHEMA ของคุณ
หมายเหตุ: เมื่อสร้าง Workspace ด้วยตนเอง ให้ตรวจสอบตัวเลือก Grant read-only access to all Project data
หมายเหตุ: KBC_WORKSPACE_SCHEMA เรียกว่า Dataset Name ใน BigQuery Workspace คุณเพียงแค่คลิกเชื่อมต่อและคัดลอก Dataset Name
KBC_STORAGE_API_URL (ภูมิภาค Keboola)
URL ของ Keboola Region API ของคุณขึ้นอยู่กับภูมิภาคที่ปรับใช้ คุณสามารถระบุภูมิภาคของคุณได้โดยดูที่ URL ในเบราว์เซอร์ของคุณเมื่อเข้าสู่ระบบโปรเจกต์ Keboola ของคุณ:
| ภูมิภาค | API URL |
|---|---|
| AWS North America | https://connection.keboola.com |
| AWS Europe | https://connection.eu-central-1.keboola.com |
| Google Cloud EU | https://connection.europe-west3.gcp.keboola.com |
| Google Cloud US | https://connection.us-east4.gcp.keboola.com |
| Azure EU | https://connection.north-europe.azure.keboola.com |
KBC_BRANCH_ID (ไม่บังคับ)
ในการดำเนินการกับ Keboola Development Branch ที่เฉพาะเจาะจง ให้ตั้งค่า Branch ID โดยใช้พารามิเตอร์ KBC_BRANCH_ID MCP Server จะจำกัดขอบเขตการทำงานของมันไว้ที่ Branch ที่ระบุ เพื่อให้แน่ใจว่าการเปลี่ยนแปลงทั้งหมดยังคงแยกออกจากกันและไม่ส่งผลกระทบต่อ Production Branch
- หากไม่ได้ระบุ เซิร์ฟเวอร์จะใช้ Production Branch เป็นค่าเริ่มต้น
- สำหรับงานพัฒนา ให้ตั้งค่า
KBC_BRANCH_IDเป็น ID ตัวเลขของ Branch ของคุณ (เช่น123456) คุณสามารถค้นหา Development Branch ID ได้ใน URL เมื่อนำทางไปยัง Development Branch ใน UI ตัวอย่างเช่น:https://connection.us-east4.gcp.keboola.com/admin/projects/PROJECT_ID/branch/BRANCH_ID/dashboard - สำหรับการขนส่งระยะไกล คุณสามารถแทนที่ต่อคำขอได้ด้วย HTTP Header
X-Branch-Id: <branchId>หรือKBC_BRANCH_ID: <branchId>
การติดตั้ง
ตรวจสอบให้แน่ใจว่าคุณมี:
- ติดตั้ง Python 3.10+ แล้ว
- เข้าถึงโปรเจกต์ Keboola ด้วยสิทธิ์ผู้ดูแลระบบ
- MCP Client ที่คุณต้องการ (Claude, Cursor ฯลฯ)
หมายเหตุ: ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้ง uv แล้ว MCP Client จะใช้มันเพื่อดาวน์โหลดและรัน Keboola MCP Server โดยอัตโนมัติ
การติดตั้ง uv:
macOS/Linux:
#if homebrew is not installed on your machine use:
# /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Install using Homebrew
brew install uv
Windows:
# Using the installer script
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
# Or using pip
pip install uv
# Or using winget
winget install --id=astral-sh.uv -e
สำหรับตัวเลือกการติดตั้งเพิ่มเติม โปรดดู เอกสารอย่างเป็นทางการของ uv
การรัน Keboola MCP Server
มีสี่วิธีในการใช้ Keboola MCP Server ขึ้นอยู่กับความต้องการของคุณ:
ตัวเลือก A: โหมดผสานรวม (แนะนำ)
ในโหมดนี้ Claude หรือ Cursor จะเริ่มต้น MCP Server ให้คุณโดยอัตโนมัติ คุณไม่จำเป็นต้องรันคำสั่งใดๆ ในเทอร์มินัลของคุณ
- กำหนดค่า MCP Client ของคุณ (Claude/Cursor) ด้วยการตั้งค่าที่เหมาะสม
- ไคลเอนต์จะเปิด MCP Server โดยอัตโนมัติเมื่อจำเป็น
การกำหนดค่า Claude Desktop
- ไปที่ Claude (มุมซ้ายบนของหน้าจอ) -> Settings → Developer → Edit Config (หากคุณไม่เห็น claude_desktop_config.json ให้สร้างขึ้นมา)
- เพิ่มการกำหนดค่าต่อไปนี้:
- รีสตาร์ท Claude Desktop เพื่อให้การเปลี่ยนแปลงมีผล
{
"mcpServers": {
"keboola": {
"command": "uvx",
"args": ["keboola_mcp_server --transport <transport>"],
"env": {
"KBC_STORAGE_API_URL": "https://connection.YOUR_REGION.keboola.com",
"KBC_STORAGE_TOKEN": "your_keboola_storage_token",
"KBC_WORKSPACE_SCHEMA": "your_workspace_schema",
"KBC_BRANCH_ID": "your_branch_id_optional"
}
}
}
}
ตำแหน่งไฟล์ Config:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
การกำหนดค่า Cursor
- ไปที่ Settings → MCP
- คลิก "+ Add new global MCP Server"
- กำหนดค่าด้วยการตั้งค่าเหล่านี้:
{
"mcpServers": {
"keboola": {
"command": "uvx",
"args": ["keboola_mcp_server --transport <transport>"],
"env": {
"KBC_STORAGE_API_URL": "https://connection.YOUR_REGION.keboola.com",
"KBC_STORAGE_TOKEN": "your_keboola_storage_token",
"KBC_WORKSPACE_SCHEMA": "your_workspace_schema",
"KBC_BRANCH_ID": "your_branch_id_optional"
}
}
}
}
หมายเหตุ: ใช้ชื่อที่สั้นและสื่อความหมายสำหรับ MCP Server เนื่องจากชื่อเครื่องมือแบบเต็มรวมชื่อเซิร์ฟเวอร์และต้องมีความยาวไม่เกิน ~60 ตัวอักษร ชื่อที่ยาวกว่าอาจถูกกรองออกใน Cursor และจะไม่แสดงต่อ Agent
การกำหนดค่า Cursor สำหรับ Windows WSL
เมื่อรัน MCP Server จาก Windows Subsystem for Linux ด้วย Cursor AI ให้ใช้การกำหนดค่านี้:
{
"mcpServers": {
"keboola":{
"command": "wsl.exe",
"args": [
"bash",
"-c '",
"export KBC_STORAGE_API_URL=https://connection.YOUR_REGION.keboola.com &&",
"export KBC_STORAGE_TOKEN=your_keboola_storage_token &&",
"export KBC_WORKSPACE_SCHEMA=your_workspace_schema &&",
"export KBC_BRANCH_ID=your_branch_id_optional &&",
"/snap/bin/uvx keboola_mcp_server --transport <transport>",
"'"
]
}
}
}
ตัวเลือก B: โหมดการพัฒนาในเครื่อง
สำหรับนักพัฒนาที่ทำงานกับโค้ด MCP Server เอง:
- โคลนที่เก็บโค้ดและตั้งค่าสภาพแวดล้อมภายในเครื่อง
- กำหนดค่า Claude/Cursor ให้ใช้พาธ Python ภายในเครื่องของคุณ:
{
"mcpServers": {
"keboola": {
"command": "/absolute/path/to/.venv/bin/python",
"args": [
"-m",
"keboola_mcp_server --transport <transport>"
],
"env": {
"KBC_STORAGE_API_URL": "https://connection.YOUR_REGION.keboola.com",
"KBC_STORAGE_TOKEN": "your_keboola_storage_token",
"KBC_WORKSPACE_SCHEMA": "your_workspace_schema",
"KBC_BRANCH_ID": "your_branch_id_optional"
}
}
}
}
ตัวเลือก C: โหมด CLI ด้วยตนเอง (สำหรับการทดสอบเท่านั้น)
คุณสามารถรันเซิร์ฟเวอร์ด้วยตนเองในเทอร์มินัลเพื่อการทดสอบหรือดีบัก:
# Set environment variables
export KBC_STORAGE_API_URL=https://connection.YOUR_REGION.keboola.com
export KBC_STORAGE_TOKEN=your_keboola_storage_token
export KBC_WORKSPACE_SCHEMA=your_workspace_schema
export KBC_BRANCH_ID=your_branch_id_optional
uvx keboola_mcp_server --transport streamable-http
หมายเหตุ: โหมดนี้มีไว้สำหรับการดีบักหรือทดสอบเป็นหลัก สำหรับการใช้งานปกติกับ Claude หรือ Cursor คุณไม่จำเป็นต้องรันเซิร์ฟเวอร์ด้วยตนเอง
หมายเหตุ: เซิร์ฟเวอร์จะใช้การขนส่งแบบ Streamable HTTP และรอรับการเชื่อมต่อขาเข้าที่
localhost:8000บน/mcpคุณสามารถใช้พารามิเตอร์--portและ--hostเพื่อให้รอรับที่อื่นได้
ตัวเลือก D: การใช้ Docker
docker pull keboola/mcp-server:latest
docker run \
--name keboola_mcp_server \
--rm \
-it \
-p 127.0.0.1:8000:8000 \
-e KBC_STORAGE_API_URL="https://connection.YOUR_REGION.keboola.com" \
-e KBC_STORAGE_TOKEN="YOUR_KEBOOLA_STORAGE_TOKEN" \
-e KBC_WORKSPACE_SCHEMA="YOUR_WORKSPACE_SCHEMA" \
-e KBC_BRANCH_ID="YOUR_BRANCH_ID_OPTIONAL" \
keboola/mcp-server:latest \
--transport streamable-http \
--host 0.0.0.0
หมายเหตุ: เซิร์ฟเวอร์จะใช้การขนส่งแบบ Streamable HTTP และรอรับการเชื่อมต่อขาเข้าที่
localhost:8000บน/mcpคุณสามารถเปลี่ยน-pเพื่อแมปพอร์ตของคอนเทนเนอร์ไปที่อื่นได้
ฉันจำเป็นต้องเริ่มเซิร์ฟเวอร์ด้วยตนเองหรือไม่?
| สถานการณ์ | ต้องรันด้วยตนเองหรือไม่? | ใช้การตั้งค่านี้ |
|---|---|---|
| การใช้ Claude/Cursor | ไม่ | กำหนดค่า MCP ในการตั้งค่าแอป |
| การพัฒนา MCP ภายในเครื่อง | ไม่ (Claude เริ่มให้) | ชี้การกำหนดค่าไปที่พาธ python |
| การทดสอบ CLI ด้วยตนเอง | ใช่ | ใช้เทอร์มินัลเพื่อรัน |
| การใช้ Docker | ใช่ | รันคอนเทนเนอร์ Docker |
การใช้เซิร์ฟเวอร์ MCP
เมื่อไคลเอนต์ MCP ของคุณ (Claude/Cursor) ได้รับการกำหนดค่าและทำงานแล้ว คุณสามารถเริ่มสอบถามข้อมูล Keboola ของคุณได้:
ตรวจสอบการตั้งค่าของคุณ
คุณสามารถเริ่มต้นด้วยคำถามง่ายๆ เพื่อยืนยันว่าทุกอย่างทำงานได้:
What buckets and tables are in my Keboola project?
ตัวอย่างสิ่งที่คุณสามารถทำได้
การสำรวจข้อมูล:
- "ตารางใดบ้างที่มีข้อมูลลูกค้า?"
- "รันคำถามเพื่อค้นหาลูกค้า 10 อันดับแรกตามรายได้"
การวิเคราะห์ข้อมูล:
- "วิเคราะห์ข้อมูลการขายของฉันตามภูมิภาคสำหรับไตรมาสที่แล้ว"
- "ค้นหาความสัมพันธ์ระหว่างอายุของลูกค้าและความถี่ในการซื้อ"
ไปป์ไลน์ข้อมูล:
- "สร้างการแปลง SQL ที่รวมตารางลูกค้าและคำสั่งซื้อ"
- "เริ่มงานดึงข้อมูลสำหรับคอมโพเนนต์ Salesforce ของฉัน"
ความเข้ากันได้
การสนับสนุนไคลเอนต์ MCP
| ไคลเอนต์ MCP | สถานะการสนับสนุน | วิธีการเชื่อมต่อ |
|---|---|---|
| Claude (เดสก์ท็อปและเว็บ) | ✅ รองรับ | stdio |
| Cursor | ✅ รองรับ | stdio |
| Windsurf, Zed, Replit | ✅ รองรับ | stdio |
| Codeium, Sourcegraph | ✅ รองรับ | Streamable HTTP |
| ไคลเอนต์ MCP แบบกำหนดเอง | ✅ รองรับ | Streamable HTTP หรือ stdio |
เครื่องมือที่รองรับ
หมายเหตุ: เอเจนต์ AI ของคุณจะปรับตัวเข้ากับเครื่องมือใหม่โดยอัตโนมัติ
สำหรับรายการเครื่องมือที่มีทั้งหมดพร้อมคำอธิบายโดยละเอียด พารามิเตอร์ และตัวอย่างการใช้งาน ดู TOOLS.md
การแก้ไขปัญหา
ปัญหาที่พบบ่อย
| ปัญหา | วิธีแก้ไข |
|---|---|
| ข้อผิดพลาดการรับรองความถูกต้อง | ตรวจสอบว่า KBC_STORAGE_TOKEN ถูกต้อง |
| ปัญหาเกี่ยวกับพื้นที่ทำงาน | ยืนยันว่า KBC_WORKSPACE_SCHEMA ถูกต้อง |
| การหมดเวลาการเชื่อมต่อ | ตรวจสอบการเชื่อมต่อเครือข่าย |
การพัฒนา
การติดตั้ง
การตั้งค่าพื้นฐาน:
uv sync --extra dev
ด้วยการตั้งค่าพื้นฐาน คุณสามารถใช้ uv run tox เพื่อรันการทดสอบและตรวจสอบสไตล์โค้ด
การตั้งค่าที่แนะนำ:
uv sync --extra dev --extra tests --extra integtests --extra codestyle
ด้วยการตั้งค่าที่แนะนำ แพ็คเกจสำหรับการทดสอบและการตรวจสอบสไตล์โค้ดจะถูกติดตั้ง ซึ่งช่วยให้ IDE เช่น VsCode หรือ Cursor สามารถตรวจสอบโค้ดหรือรันการทดสอบระหว่างการพัฒนาได้
การทดสอบการรวมระบบ
ในการรันการทดสอบการรวมระบบภายในเครื่อง ให้ใช้ uv run tox -e integtests
หมายเหตุ: คุณจะต้องตั้งค่าตัวแปรสภาพแวดล้อมต่อไปนี้:
INTEGTEST_POOL_STORAGE_API_URLINTEGTEST_STORAGE_TOKENSINTEGTEST_STORAGE_TOKEN_STORAGE_BRANCHES
เพื่อให้ได้ค่าเหล่านี้ คุณต้องมีโปรเจกต์ Keboola เฉพาะสำหรับการทดสอบการรวมระบบ
แต่ละเซสชันการทดสอบจะสร้างพื้นที่ทำงานแบบอ่านอย่างเดียวของตัวเอง ดังนั้นจึงไม่จำเป็นต้องกำหนดค่าสคีมาพื้นที่ทำงาน
ดู integtests/README.md สำหรับคำแนะนำการตั้งค่าโดยละเอียดและเอกสารการออกแบบ
การอัปเดต uv.lock
อัปเดตไฟล์ uv.lock หากคุณได้เพิ่มหรือลบการพึ่งพา นอกจากนี้ ควรพิจารณาอัปเดตล็อกด้วยเวอร์ชันการพึ่งพาที่ใหม่กว่าเมื่อสร้างรุ่น (uv lock --upgrade)
การอัปเดตเอกสารเครื่องมือ
เมื่อคุณทำการเปลี่ยนแปลงคำอธิบายเครื่องมือใดๆ (docstrings ในฟังก์ชันเครื่องมือ) คุณต้องสร้างไฟล์เอกสาร TOOLS.md ใหม่เพื่อสะท้อนการเปลี่ยนแปลงเหล่านี้:
uv run python -m src.keboola_mcp_server.generate_tool_docs
การออกรุ่น
เรา ไม่ ตัดรุ่นสำหรับทุก PR ที่ผสาน งานจะถูกรวมเข้าสู่ trunk (main)
อย่างต่อเนื่อง และเราจะออกรุ่นเป็นระยะเมื่อการเปลี่ยนแปลงได้รับการทดสอบร่วมกันอีกครั้ง —
เพื่อหลีกเลี่ยงการทำลายการตั้งค่าที่ทำงานได้สำหรับผู้ใช้
การออกรุ่นทำได้โดยการพุช แท็ก git หนึ่งหรือสองแท็ก:
vX.Y.Z— รุ่นเซิร์ฟเวอร์ MCP (เสมอ)agent-vX.Y.Z— รุ่น In Platform Agent (เฉพาะเมื่อเอเจนต์กำลังถูกรุ่นด้วย)
แท็กใดแท็กหนึ่งจะทริกเกอร์ release.yml CI ซึ่งสร้างและเผยแพร่อิมเมจ Docker KaiBench
รันเฉพาะบนแท็ก vX.Y.Z สำหรับการผลิต (ไม่ใช่ agent-vX.Y.Z และไม่ใช่รุ่นก่อนหน้าของ -dev.) ใช้
สกิล release-notes — มันเตรียมบันทึกประจำรุ่นและ PR แบบร่าง และแนะนำการแท็กทั้ง vX.Y.Z และ agent-vX.Y.Z
การสนับสนุนและข้อเสนอแนะ
⭐ วิธีหลักในการขอความช่วยเหลือ รายงานข้อบกพร่อง หรือขอคุณสมบัติคือโดย การเปิด issue บน GitHub ⭐
ทีมพัฒนาตรวจสอบ issue อย่างแข็งขันและจะตอบกลับโดยเร็วที่สุด สำหรับข้อมูลทั่วไปเกี่ยวกับ Keboola โปรดใช้ทรัพยากรด้านล่าง
ทรัพยากร
- เอกสารผู้ใช้
- เอกสารนักพัฒนา
- แพลตฟอร์ม Keboola
- ตัวติดตาม issue ← วิธีการติดต่อหลักสำหรับเซิร์ฟเวอร์ MCP