Couchbase

ทางการ

โต้ตอบกับข้อมูลที่เก็บอยู่ในคลัสเตอร์ Couchbase โดยใช้ภาษาธรรมชาติ

คุณทำอะไรได้บ้างด้วย Couchbase MCP?

  • Check cluster health and connectivity — Ask the assistant to verify the cluster is reachable and review running services using test_cluster_connection and get_cluster_health_and_services.
  • Explore the data model — Discover buckets, scopes, and collections with get_buckets_in_cluster, get_scopes_in_bucket, and get_collections_in_scope, then inspect a collection’s structure via get_schema_for_collection.
  • Retrieve and manage documents — Fetch documents by ID with get_document_by_id, and when write mode is enabled, create, update, or delete documents using upsert_document_by_id, insert_document_by_id, replace_document_by_id, or delete_document_by_id.
  • Run and optimize SQL++ queries — Execute read-only queries with run_sql_plus_plus_query, review execution plans via explain_sql_plus_plus_query, and get index recommendations from get_index_advisor_recommendations.
  • Analyze query performance — Identify slow or resource-heavy queries using tools like get_longest_running_queries, get_most_frequent_queries, and get_queries_using_primary_index.

เอกสาร

Couchbase MCP Server

Couchbase MCP Server เป็น MCP Server แบบ self-hosted ที่อนุญาตให้ AI agent เชื่อมต่อและโต้ตอบกับข้อมูลใน Couchbase cluster ไม่ว่าจะโฮสต์บน Capella หรือแบบ self-managed โดยมีเครื่องมือในหมวดหมู่ต่างๆ เช่น Cluster Health, Data Schema, Key-Value, Query และ Performance — พร้อมการควบคุมความปลอดภัยผ่านโหมดอ่านอย่างเดียวและการปิดใช้งานเครื่องมือแบบละเอียด รองรับการขนส่งทั้งแบบ STDIO และ Streamable HTTP

Couchbase MCP server แจกจ่ายในรูปแบบแพ็คเกจ Python Package Index (PyPI) และผ่าน Docker การสนับสนุนระดับองค์กรสำหรับ Couchbase MCP Server มีให้ใช้งานโดยการขอใบอนุญาต Couchbase AI Data Plane ซึ่งให้สิทธิ์การใช้งานและการสนับสนุนระดับองค์กรสำหรับ Couchbase Agent Memory และ Couchbase Agent Catalog ด้วย

Docs License Python 3.10+ PyPI version Install in Cursor Verified on MseeP Trust Score

สำหรับเอกสารฉบับเต็ม โปรดเยี่ยมชม mcp-server.couchbase.com

Couchbase Server MCP server

คุณสมบัติ/เครื่องมือ

เครื่องมือตั้งค่าและตรวจสอบความสมบูรณ์ของคลัสเตอร์

ชื่อเครื่องมือคำอธิบาย
get_server_configuration_statusรับสถานะและการกำหนดค่าเซิร์ฟเวอร์โดยไม่ต้องเชื่อมต่อกับคลัสเตอร์ — รายงานโหมดอ่านอย่างเดียว, เครื่องมือที่ถูกปิดใช้งาน/ต้องยืนยัน, การตั้งค่า OAuth และการกำหนดค่าการบันทึกที่แก้ไขแล้ว
test_cluster_connectionตรวจสอบข้อมูลประจำตัวของคลัสเตอร์โดยการเชื่อมต่อกับคลัสเตอร์
get_cluster_health_and_servicesรับสถานะความสมบูรณ์ของคลัสเตอร์และรายการบริการทั้งหมดที่กำลังทำงาน

เครื่องมือค้นหาโมเดลข้อมูลและสคีมา

ชื่อเครื่องมือคำอธิบาย
get_buckets_in_clusterรับรายการ bucket ทั้งหมดในคลัสเตอร์
get_scopes_in_bucketรับรายการ scope ทั้งหมดใน bucket ที่ระบุ
get_collections_in_scopeรับรายการ collection ทั้งหมดใน scope และ bucket ที่ระบุ โปรดทราบว่าเครื่องมือนี้ต้องการให้คลัสเตอร์มีบริการ Query
get_scopes_and_collections_in_bucketรับรายการ scope และ collection ทั้งหมดใน bucket ที่ระบุ
get_schema_for_collectionรับโครงสร้างสำหรับ collection

เครื่องมือดำเนินการ KV ของเอกสาร

ชื่อเครื่องมือคำอธิบาย
get_document_by_idรับเอกสารตาม ID จาก scope และ collection ที่ระบุ
upsert_document_by_idUpsert เอกสารตาม ID ไปยัง scope และ collection ที่ระบุ ถูกปิดใช้งานโดยค่าเริ่มต้นเมื่อ CB_MCP_READ_ONLY_MODE=true
insert_document_by_idแทรกเอกสารใหม่ตาม ID (ล้มเหลวหากเอกสารมีอยู่แล้ว) ถูกปิดใช้งานโดยค่าเริ่มต้นเมื่อ CB_MCP_READ_ONLY_MODE=true
replace_document_by_idแทนที่เอกสารที่มีอยู่ตาม ID (ล้มเหลวหากไม่มีเอกสาร) ถูกปิดใช้งานโดยค่าเริ่มต้นเมื่อ CB_MCP_READ_ONLY_MODE=true
delete_document_by_idลบเอกสารตาม ID จาก scope และ collection ที่ระบุ ถูกปิดใช้งานโดยค่าเริ่มต้นเมื่อ CB_MCP_READ_ONLY_MODE=true

เครื่องมือคิวรีและดัชนี

ชื่อเครื่องมือคำอธิบาย
list_indexesแสดงรายการดัชนีทั้งหมดในคลัสเตอร์พร้อมคำจำกัดความ พร้อมตัวกรองเสริมตาม bucket, scope, collection และชื่อดัชนี ตั้งค่า return_raw_index_stats=true เพื่อส่งคืนข้อมูลดัชนีที่ยังไม่ได้ประมวลผล
get_index_advisor_recommendationsรับคำแนะนำดัชนีจาก Couchbase Index Advisor สำหรับคิวรี SQL++ ที่กำหนดเพื่อเพิ่มประสิทธิภาพคิวรี
run_sql_plus_plus_queryรัน คิวรี SQL++ บน scope ที่ระบุ

คิวรีจะถูกกำหนดขอบเขตไปยัง bucket และ scope ที่ระบุโดยอัตโนมัติ ดังนั้นให้ใช้ชื่อ collection โดยตรง (เช่น SELECT * FROM users แทน SELECT * FROM bucket.scope.users)

CB_MCP_READ_ONLY_MODE เป็น true โดยค่าเริ่มต้น ซึ่งหมายความว่า การดำเนินการเขียนทั้งหมด (KV และ Query) จะถูกปิดใช้งาน เมื่อเปิดใช้งาน เครื่องมือเขียน KV จะไม่ถูกโหลดและคิวรี SQL++ ที่แก้ไขข้อมูลจะถูกบล็อก
explain_sql_plus_plus_queryสร้างและประเมินแผน EXPLAIN สำหรับคิวรี SQL++ ส่งคืนเมตาดาต้าคิวรี, แผนที่แยกออกมา และผลการประเมินแผน

เครื่องมือวิเคราะห์ประสิทธิภาพคิวรี

ชื่อเครื่องมือคำอธิบาย
get_longest_running_queriesรับคิวรีที่ทำงานนานที่สุดตามเวลาให้บริการเฉลี่ย
get_most_frequent_queriesรับคิวรีที่ถูกดำเนินการบ่อยที่สุด
get_queries_with_largest_response_sizesรับคิวรีที่มีขนาดการตอบสนองใหญ่ที่สุด
get_queries_with_large_result_countรับคิวรีที่มีจำนวนผลลัพธ์มากที่สุด
get_queries_using_primary_indexรับคิวรีที่ใช้ดัชนีหลัก (อาจเป็นปัญหาด้านประสิทธิภาพ)
get_queries_not_using_covering_indexรับคิวรีที่ไม่ได้ใช้ covering index
get_queries_not_selectiveรับคิวรีที่ไม่ selective (การสแกนดัชนีส่งคืนเอกสารมากกว่าผลลัพธ์สุดท้ายมาก)

ข้อกำหนดเบื้องต้น

  • Python 3.10 หรือสูงกว่า
  • Couchbase cluster ที่กำลังทำงาน วิธีที่ง่ายที่สุดในการเริ่มต้นคือใช้ Capella แบบฟรีเทียร์ ซึ่งเป็นเวอร์ชันที่มีการจัดการเต็มรูปแบบของเซิร์ฟเวอร์ Couchbase คุณสามารถทำตาม คำแนะนำ เพื่อนำเข้าชุดข้อมูลตัวอย่างหรือนำเข้าข้อมูลของคุณเอง
  • ติดตั้ง uv เพื่อรันเซิร์ฟเวอร์
  • ติดตั้ง MCP client เช่น Claude Desktop เพื่อเชื่อมต่อเซิร์ฟเวอร์กับ Claude มีคำแนะนำสำหรับ Claude Desktop และ Cursor สามารถใช้ MCP client อื่นๆ ได้เช่นกัน

การกำหนดค่า

MCP server สามารถรันได้จากแพ็คเกจ PyPI ที่สร้างไว้ล่วงหน้าหรือจากซอร์สโดยใช้ uv

การรันจาก PyPI

เราเผยแพร่ แพ็คเกจ PyPI ที่สร้างไว้ล่วงหน้าสำหรับ MCP server

การกำหนดค่าเซิร์ฟเวอร์โดยใช้แพ็คเกจที่สร้างไว้ล่วงหน้าสำหรับ MCP Clients

การรับรองความถูกต้องแบบพื้นฐาน

{
  "mcpServers": {
    "couchbase": {
      "command": "uvx",
      "args": ["couchbase-mcp-server"],
      "env": {
        "CB_CONNECTION_STRING": "couchbases://connection-string",
        "CB_USERNAME": "username",
        "CB_PASSWORD": "password"
      }
    }
  }
}

หรือ

mTLS

{
  "mcpServers": {
    "couchbase": {
      "command": "uvx",
      "args": ["couchbase-mcp-server"],
      "env": {
        "CB_CONNECTION_STRING": "couchbases://connection-string",
        "CB_CLIENT_CERT_PATH": "/path/to/client-certificate.pem",
        "CB_CLIENT_KEY_PATH": "/path/to/client.key"
      }
    }
  }
}

หมายเหตุ: หากคุณมี MCP server อื่นที่ใช้งานอยู่ใน client คุณสามารถเพิ่มลงในออบเจกต์ mcpServers ที่มีอยู่ได้

การรันจากซอร์ส

MCP server สามารถรันจากซอร์สโดยใช้ที่เก็บนี้

โคลนที่เก็บไปยังเครื่องของคุณ

git clone https://github.com/couchbase/mcp-server-couchbase.git

การกำหนดค่าเซิร์ฟเวอร์โดยใช้ซอร์สสำหรับ MCP Clients

นี่คือการกำหนดค่าทั่วไปสำหรับ MCP clients เช่น Claude Desktop, Cursor, Windsurf Editor

{
  "mcpServers": {
    "couchbase": {
      "command": "uv",
      "args": [
        "--directory",
        "path/to/cloned/repo/mcp-server-couchbase/",
        "run",
        "src/mcp_server.py"
      ],
      "env": {
        "CB_CONNECTION_STRING": "couchbases://connection-string",
        "CB_USERNAME": "username",
        "CB_PASSWORD": "password"
      }
    }
  }
}

หมายเหตุ: path/to/cloned/repo/mcp-server-couchbase/ ควรเป็นพาธไปยังที่เก็บที่โคลนบนเครื่องของคุณ อย่าลืมเครื่องหมายทับต่อท้าย!

หมายเหตุ: หากคุณมี MCP server อื่นที่ใช้งานอยู่ใน client คุณสามารถเพิ่มลงในออบเจกต์ mcpServers ที่มีอยู่ได้

การกำหนดค่าเพิ่มเติมสำหรับ MCP Server

เซิร์ฟเวอร์สามารถกำหนดค่าได้โดยใช้ตัวแปรสภาพแวดล้อมหรืออาร์กิวเมนต์บรรทัดคำสั่ง:

ตัวแปรสภาพแวดล้อมอาร์กิวเมนต์ CLIคำอธิบายค่าเริ่มต้น
CB_CONNECTION_STRING--connection-stringสตริงการเชื่อมต่อไปยัง Couchbase clusterจำเป็น
CB_USERNAME--usernameชื่อผู้ใช้ที่มีสิทธิ์เข้าถึง bucket ที่จำเป็นสำหรับการรับรองความถูกต้องแบบพื้นฐานจำเป็น (หรือต้องใช้ Client Certificate และ Key สำหรับ mTLS)
CB_PASSWORD--passwordรหัสผ่านสำหรับการรับรองความถูกต้องแบบพื้นฐานจำเป็น (หรือต้องใช้ Client Certificate และ Key สำหรับ mTLS)
CB_CLIENT_CERT_PATH--client-cert-pathพาธไปยังไฟล์ client certificate สำหรับการรับรองความถูกต้องแบบ mTLSจำเป็นหากใช้ mTLS (หรือต้องใช้ชื่อผู้ใช้และรหัสผ่าน)
CB_CLIENT_KEY_PATH--client-key-pathพาธไปยังไฟล์ client key สำหรับการรับรองความถูกต้องแบบ mTLSจำเป็นหากใช้ mTLS (หรือต้องใช้ชื่อผู้ใช้และรหัสผ่าน)
CB_CA_CERT_PATH--ca-cert-pathพาธไปยัง server root certificate สำหรับ TLS หากเซิร์ฟเวอร์ถูกกำหนดค่าด้วยใบรับรองแบบ self-signed/untrusted สิ่งนี้ไม่จำเป็นหากคุณกำลังเชื่อมต่อกับ Capella
CB_MCP_READ_ONLY_MODE--read-only-modeป้องกันการแก้ไขข้อมูลทั้งหมด (KV และ Query) เมื่อเปิดใช้งาน เครื่องมือเขียน KV จะไม่ถูกโหลดtrue
CB_MCP_TRANSPORT--transportโหมดการขนส่ง: stdio, http, ssestdio
CB_MCP_HOST--hostโฮสต์สำหรับโหมดการขนส่ง HTTP/SSE127.0.0.1
CB_MCP_PORT--portพอร์ตสำหรับโหมดการขนส่ง HTTP/SSE8000
CB_MCP_DISABLED_TOOLS--disabled-toolsเครื่องมือที่จะปิดใช้งาน (ดู การปิดใช้งานเครื่องมือ)ไม่มี
CB_MCP_CONFIRMATION_REQUIRED_TOOLS--confirmation-required-toolsเครื่องมือที่ต้องการการยืนยันจากผู้ใช้อย่างชัดเจนก่อนดำเนินการผ่าน MCP elicitation (ดู เครื่องมือที่ต้องการการเรียก/ยืนยัน)ไม่มี
CB_MCP_LOG_LEVEL--log-levelระดับการบันทึกสำหรับ MCP server: off, debug, info, warning, error (ดู การบันทึก)info
CB_MCP_LOG_SINKS--log-sinksปลายทางการบันทึกที่คั่นด้วยเครื่องหมายจุลภาค: stderr, file หรือทั้งสองอย่าง (ดู การบันทึก)stderr
CB_MCP_LOG_FILE--log-fileพาธฐานสำหรับไฟล์บันทึกต่อระดับ (ใช้เมื่อเปิดใช้งาน sink file เท่านั้น)mcp_server.log
CB_MCP_LOG_MAX_BYTES--log-max-bytesขนาดสูงสุดเป็นไบต์ต่อไฟล์บันทึกก่อนที่จะหมุนเวียน1048576 (1 MB)
CB_MCP_OAUTH_JWT_JWKS_URI--oauth-jwks-uriปลายทาง JWKS ของผู้ให้บริการข้อมูลประจำตัวที่ใช้ในการตรวจสอบ bearer JWT เปิดใช้งาน OAuth เมื่อตั้งค่าพร้อมกับผู้ออกและผู้ชม (ดู การอนุญาต OAuth 2.1)ไม่มี
CB_MCP_OAUTH_JWT_ISSUER--oauth-issuerการอ้างสิทธิ์ JWT iss ที่คาดหวัง จำเป็นต้องเปิดใช้งาน OAuthไม่มี
CB_MCP_OAUTH_JWT_AUDIENCE--oauth-audienceการอ้างสิทธิ์ JWT aud ที่คาดหวัง จำเป็นต้องเปิดใช้งาน OAuthไม่มี
CB_MCP_OAUTH_JWT_ALGORITHM--oauth-algorithmอัลกอริทึมการลงนาม JWT: หนึ่งใน RS256/384/512, ES256/384/512, PS256/384/512RS256
CB_MCP_OAUTH_MCP_BASE_URL--oauth-mcp-base-urlURL ฐานสาธารณะของเซิร์ฟเวอร์นี้ เมื่อตั้งค่า จะเผยแพร่ RFC 9728 Protected Resource Metadata เพื่อให้ไคลเอนต์ที่รับรู้ PRM สามารถค้นพบ IdPไม่มี

การกำหนดค่าโหมดอ่านอย่างเดียว

CB_MCP_READ_ONLY_MODE เป็นสวิตช์เดียวที่ควบคุมการดำเนินการเขียน:

  • เมื่อ true (ค่าเริ่มต้น): การดำเนินการเขียนทั้งหมด (KV และ Query) จะถูกปิดใช้งาน เครื่องมือเขียน KV (upsert, insert, replace, delete) จะ ไม่ถูกโหลด และจะไม่พร้อมใช้งานสำหรับ LLM และคิวรี SQL++ ที่แก้ไขข้อมูลหรือโครงสร้างจะถูกบล็อก
  • เมื่อ false: เครื่องมือเขียน KV จะถูกโหลดและอนุญาตให้ใช้คิวรี SQL++ ที่แก้ไขข้อมูล/โครงสร้าง

นี่คือค่าเริ่มต้นที่ปลอดภัยที่แนะนำเพื่อป้องกันการแก้ไขข้อมูลโดยไม่ได้ตั้งใจโดย LLM

หมายเหตุ: สำหรับการรับรองความถูกต้อง คุณต้องใช้ชื่อผู้ใช้และรหัสผ่าน หรือพาธ Client Certificate และ key หรือจะระบุพาธ CA root certificate ที่จะใช้ในการตรวจสอบใบรับรองเซิร์ฟเวอร์ก็ได้ หากระบุทั้งพาธ Client Certificate & key และชื่อผู้ใช้และรหัสผ่าน client certificates จะถูกใช้สำหรับการรับรองความถูกต้อง

การปิดใช้งานเครื่องมือ

คุณสามารถปิดใช้งานเครื่องมือเฉพาะเพื่อป้องกันไม่ให้ถูกโหลดและเปิดเผยต่อ MCP client เครื่องมือที่ถูกปิดใช้งานจะไม่ปรากฏในการค้นพบเครื่องมือและ LLM ไม่สามารถเรียกใช้ได้

รูปแบบที่รองรับ

รายการที่คั่นด้วยเครื่องหมายจุลภาค:

# Environment variable
CB_MCP_DISABLED_TOOLS="upsert_document_by_id, delete_document_by_id"

# Command line
uvx couchbase-mcp-server --disabled-tools upsert_document_by_id, delete_document_by_id

พาธไฟล์ (หนึ่งชื่อเครื่องมือต่อบรรทัด):

# Environment variable
CB_MCP_DISABLED_TOOLS=disabled_tools.txt

# Command line
uvx couchbase-mcp-server --disabled-tools disabled_tools.txt

รูปแบบไฟล์ (เช่น disabled_tools.txt):

# Write operations
upsert_document_by_id
delete_document_by_id

# Index advisor
get_index_advisor_recommendations

บรรทัดที่ขึ้นต้นด้วย # จะถือเป็นความคิดเห็นและถูกละเว้น

ตัวอย่างการกำหนดค่า MCP Client

การใช้รายการที่คั่นด้วยเครื่องหมายจุลภาค:

{
  "mcpServers": {
    "couchbase": {
      "command": "uvx",
      "args": ["couchbase-mcp-server"],
      "env": {
        "CB_CONNECTION_STRING": "couchbases://connection-string",
        "CB_USERNAME": "username",
        "CB_PASSWORD": "password",
        "CB_MCP_DISABLED_TOOLS": "upsert_document_by_id,delete_document_by_id"
      }
    }
  }
}

การใช้พาธไฟล์ (แนะนำสำหรับเครื่องมือจำนวนมาก):

{
  "mcpServers": {
    "couchbase": {
      "command": "uvx",
      "args": ["couchbase-mcp-server"],
      "env": {
        "CB_CONNECTION_STRING": "couchbases://connection-string",
        "CB_USERNAME": "username",
        "CB_PASSWORD": "password",
        "CB_MCP_DISABLED_TOOLS": "/path/to/disabled_tools.txt"
      }
    }
  }
}

หมายเหตุด้านความปลอดภัยที่สำคัญ

คำเตือน: การปิดใช้งานเครื่องมือเพียงอย่างเดียวไม่ได้รับประกันว่าจะไม่สามารถดำเนินการบางอย่างได้ สิทธิ์ RBAC (การควบคุมการเข้าถึงตามบทบาท) ของผู้ใช้ฐานข้อมูลพื้นฐานคือการควบคุมความปลอดภัยที่เชื่อถือได้

ตัวอย่างเช่น แม้ว่าคุณจะปิดใช้งาน upsert_document_by_id และ delete_document_by_id การแก้ไขข้อมูลก็ยังสามารถเกิดขึ้นได้ผ่านเครื่องมือ run_sql_plus_plus_query โดยใช้คำสั่ง SQL++ DML (INSERT, UPDATE, DELETE, MERGE) เว้นแต่:

  • CB_MCP_READ_ONLY_MODE ถูกตั้งค่าเป็น true (ค่าเริ่มต้น) หรือ
  • ผู้ใช้ฐานข้อมูลไม่มีสิทธิ์ RBAC ที่จำเป็นสำหรับการแก้ไขข้อมูล

แนวทางปฏิบัติที่ดีที่สุด: กำหนดค่าสิทธิ์ RBAC ที่เหมาะสมบนข้อมูลประจำตัวผู้ใช้ Couchbase ของคุณเสมอเพื่อเป็นมาตรการรักษาความปลอดภัยหลัก ใช้การปิดใช้งานเครื่องมือเป็นชั้นเพิ่มเติมเพื่อชี้นำพฤติกรรมของ LLM และลดพื้นผิวการโจมตี ไม่ใช่เป็นการควบคุมความปลอดภัยเพียงอย่างเดียว

การเรียกถาม/การยืนยันสำหรับการเรียกใช้เครื่องมือ

คุณสามารถกำหนดให้มีการยืนยันจากผู้ใช้อย่างชัดเจนสำหรับเครื่องมือเฉพาะก่อนดำเนินการ (เมื่อไคลเอนต์ MCP รองรับการเรียกถาม)

CB_MCP_CONFIRMATION_REQUIRED_TOOLS / --confirmation-required-tools รองรับรูปแบบเหล่านี้:

  • รายการที่คั่นด้วยเครื่องหมายจุลภาค
  • เส้นทางไฟล์ (หนึ่งชื่อเครื่องมือต่อบรรทัด รองรับความคิดเห็น #)

ตัวอย่าง:

# Environment variable
CB_MCP_CONFIRMATION_REQUIRED_TOOLS="delete_document_by_id,replace_document_by_id"

# Command line
uvx couchbase-mcp-server --confirmation-required-tools delete_document_by_id,replace_document_by_id

เมื่อมีการเรียกใช้เครื่องมือที่อยู่ในรายการ:

  • หากไคลเอนต์รองรับการเรียกถาม ผู้ใช้จะได้รับแจ้งให้ยืนยัน
  • หากไคลเอนต์ไม่รองรับการเรียกถาม เครื่องมือจะทำงานโดยไม่มีการยืนยันเพื่อความเข้ากันได้แบบย้อนหลัง

คุณยังสามารถตรวจสอบเวอร์ชันของเซิร์ฟเวอร์ได้โดยใช้:

uvx couchbase-mcp-server --version

การบันทึก

เซิร์ฟเวอร์ MCP จะบันทึกไปที่ stderr ตามค่าเริ่มต้น การบันทึกถูกกำหนดค่าด้วยตัวแปร CB_MCP_LOG_* ที่ระบุไว้ใน การกำหนดค่าเพิ่มเติม:

  • CB_MCP_LOG_LEVEL — จำนวนที่บันทึก: info (ค่าเริ่มต้น) บันทึกเหตุการณ์วงจรชีวิตและการเรียกใช้เครื่องมือ debug เพิ่มรายละเอียดภายในที่ครอบคลุม และ off ปิดใช้งานการบันทึกทั้งหมด
  • CB_MCP_LOG_SINKS — ตำแหน่งที่บันทึก: stderr (ค่าเริ่มต้น) ไฟล์หมุนเวียนตามระดับ (file) หรือทั้งสองอย่าง ด้วย file จะมีการเขียนหนึ่งไฟล์ต่อระดับ (ตัวอย่างเช่น mcp_server.info.log และ mcp_server.error.log) ที่เส้นทางที่กำหนดโดย CB_MCP_LOG_FILE
# Enable debug logging to both stderr and rotating per-level files
uvx couchbase-mcp-server --log-level=debug --log-sinks=stderr,file

สำหรับรายละเอียดเพิ่มเติม โปรดดู เอกสาร

การกำหนดค่าเฉพาะไคลเอนต์

Claude Desktop

ทำตามขั้นตอนด้านล่างเพื่อใช้เซิร์ฟเวอร์ Couchbase MCP กับไคลเอนต์ Claude Desktop MCP

  1. ขณะนี้สามารถเพิ่มเซิร์ฟเวอร์ MCP ลงใน Claude Desktop ได้โดยการแก้ไขไฟล์การกำหนดค่า สามารถดูคำแนะนำโดยละเอียดเพิ่มเติมได้ใน คู่มือเริ่มต้นใช้งาน MCP อย่างรวดเร็ว

    • บน Mac ไฟล์การกำหนดค่าจะอยู่ที่ ~/Library/Application Support/Claude/claude_desktop_config.json
    • บน Windows ไฟล์การกำหนดค่าจะอยู่ที่ %APPDATA%\Claude\claude_desktop_config.json

    เปิดไฟล์การกำหนดค่าและเพิ่ม การกำหนดค่า ลงในส่วน mcpServers

  2. รีสตาร์ท Claude Desktop เพื่อใช้การเปลี่ยนแปลง

  3. ขณะนี้คุณสามารถใช้เซิร์ฟเวอร์ใน Claude Desktop เพื่อเรียกใช้คิวรีบนคลัสเตอร์ Couchbase โดยใช้ภาษาธรรมชาติและดำเนินการ CRUD บนเอกสารได้

บันทึก

สามารถพบบันทึกสำหรับ Claude Desktop ได้ในตำแหน่งต่อไปนี้:

  • MacOS: ~/Library/Logs/Claude
  • Windows: %APPDATA%\Claude\Logs

สามารถใช้บันทึกเพื่อวินิจฉัยปัญหาการเชื่อมต่อหรือปัญหาอื่นๆ เกี่ยวกับการกำหนดค่าเซิร์ฟเวอร์ MCP ของคุณ สำหรับรายละเอียดเพิ่มเติม โปรดดู เอกสารอย่างเป็นทางการ

Cursor

ทำตามขั้นตอนด้านล่างเพื่อใช้เซิร์ฟเวอร์ Couchbase MCP กับ Cursor:

  1. ติดตั้ง Cursor บนเครื่องของคุณ

  2. ใน Cursor ไปที่ Cursor > Cursor Settings > Tools & Integrations > MCP Tools นอกจากนี้ โปรดดูเอกสารเกี่ยวกับ การตั้งค่าการกำหนดค่าเซิร์ฟเวอร์ MCP จาก Cursor

  3. ระบุ การกำหนดค่า เดียวกันด้วยตนเอง หรือใช้ลิงก์ ติดตั้งใน Cursor เพียงคลิกเดียว คุณอาจต้องเพิ่มการกำหนดค่าเซิร์ฟเวอร์ภายใต้คีย์หลักของ mcpServers

    หมายเหตุ: ลิงก์การติดตั้งใช้ค่าตัวยึดตำแหน่งจากตัวอย่างการกำหนดค่าด้านบน อัปเดตสตริงการเชื่อมต่อและข้อมูลประจำตัวหลังการติดตั้ง

  4. บันทึกการกำหนดค่า

  5. คุณจะเห็น couchbase เป็นเซิร์ฟเวอร์ที่เพิ่มในรายการเซิร์ฟเวอร์ MCP รีเฟรชเพื่อดูว่าเซิร์ฟเวอร์เปิดใช้งานอยู่หรือไม่

  6. ขณะนี้คุณสามารถใช้เซิร์ฟเวอร์ Couchbase MCP ใน Cursor เพื่อคิวรีคลัสเตอร์ Couchbase ของคุณโดยใช้ภาษาธรรมชาติและดำเนินการ CRUD บนเอกสารได้

สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการรวม MCP กับ Cursor โปรดดู เอกสาร Cursor MCP อย่างเป็นทางการ

บันทึก

ในแผงด้านล่างของ Cursor คลิกที่ "Output" และเลือก "Cursor MCP" จากเมนูแบบเลื่อนลงเพื่อดูบันทึกของเซิร์ฟเวอร์ วิธีนี้สามารถช่วยวินิจฉัยปัญหาการเชื่อมต่อหรือปัญหาอื่นๆ เกี่ยวกับการกำหนดค่าเซิร์ฟเวอร์ MCP ของคุณ

Windsurf Editor

ทำตามขั้นตอนด้านล่างเพื่อใช้เซิร์ฟเวอร์ Couchbase MCP กับ Windsurf Editor

  1. ติดตั้ง Windsurf Editor บนเครื่องของคุณ

  2. ใน Windsurf Editor ไปที่ Command Palette > Windsurf MCP Configuration Panel หรือ Windsurf - Settings > Advanced > Cascade > Model Context Protocol (MCP) Servers สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการกำหนดค่า โปรดดู เอกสารอย่างเป็นทางการ

  3. คลิกที่ Add Server จากนั้น Add custom server ในการกำหนดค่าที่เปิดขึ้นในตัวแก้ไข ให้เพิ่ม การกำหนดค่า Couchbase MCP Server จากด้านบน

  4. บันทึกการกำหนดค่า

  5. คุณจะเห็น couchbase เป็นเซิร์ฟเวอร์ที่เพิ่มในรายการ MCP Servers ภายใต้ Advanced Settings รีเฟรชเพื่อดูว่าเซิร์ฟเวอร์เปิดใช้งานอยู่หรือไม่

  6. ขณะนี้คุณสามารถใช้เซิร์ฟเวอร์ Couchbase MCP ใน Windsurf Editor เพื่อคิวรีคลัสเตอร์ Couchbase ของคุณโดยใช้ภาษาธรรมชาติและดำเนินการ CRUD บนเอกสารได้

สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการรวม MCP กับ Windsurf Editor โปรดดู เอกสาร Windsurf MCP อย่างเป็นทางการ

VS Code

ทำตามขั้นตอนด้านล่างเพื่อใช้เซิร์ฟเวอร์ Couchbase MCP กับ VS Code

  1. ติดตั้ง VS Code

  2. ต่อไปนี้เป็นสองสามวิธีในการกำหนดค่าเซิร์ฟเวอร์ MCP

    • สำหรับการกำหนดค่าเซิร์ฟเวอร์ Workspace

      • สร้างไฟล์ใหม่ในพื้นที่ทำงานเป็น .vscode/mcp.json
      • เพิ่ม การกำหนดค่า และบันทึกไฟล์
    • สำหรับการกำหนดค่าเซิร์ฟเวอร์ส่วนกลาง:

      • เรียกใช้ MCP: Open User Configuration ใน Command Palette (Ctrl+Shift+P หรือ Cmd+Shift+P)
      • เพิ่ม การกำหนดค่า และบันทึกไฟล์
    • หมายเหตุ: VS Code ใช้ servers เป็นคุณสมบัติ JSON ระดับบนสุดในไฟล์ mcp.json เพื่อกำหนดเซิร์ฟเวอร์ MCP (Model Context Protocol) ในขณะที่ Cursor ใช้ mcpServers สำหรับการกำหนดค่าที่เทียบเท่ากัน ตรวจสอบ การกำหนดค่าไคลเอนต์ VS Code สำหรับการเปลี่ยนแปลงหรือรายละเอียดเพิ่มเติมใดๆ ตัวอย่างการกำหนดค่า VS Code มีให้ด้านล่าง

        {
          "servers": {
            "couchbase": {
              "command": "uvx",
              "args": ["couchbase-mcp-server"],
              "env": {
                "CB_CONNECTION_STRING": "couchbases://connection-string",
                "CB_USERNAME": "username",
                "CB_PASSWORD": "password"
              }
            }
          }
        }
      
  3. เมื่อคุณบันทึกไฟล์ เซิร์ฟเวอร์จะเริ่มทำงานและรายการการดำเนินการขนาดเล็กจะปรากฏขึ้นพร้อมกับ Running|Stop|n Tools|More..

  4. คลิกที่ตัวเลือกจากรายการตัวเลือกเพื่อ Start/Stop/จัดการเซิร์ฟเวอร์

  5. ขณะนี้คุณสามารถใช้เซิร์ฟเวอร์ Couchbase MCP ใน VS Code เพื่อคิวรีคลัสเตอร์ Couchbase ของคุณโดยใช้ภาษาธรรมชาติและดำเนินการ CRUD บนเอกสารได้

บันทึก: ใน Command Palette (Ctrl+Shift+P หรือ Cmd+Shift+P)

  • เรียกใช้คำสั่ง MCP: List Servers และเลือกเซิร์ฟเวอร์ couchbase
  • เลือก “Show Output” เพื่อดูบันทึกในแท็บ Output
JetBrains IDEs

ทำตามขั้นตอนด้านล่างเพื่อใช้เซิร์ฟเวอร์ Couchbase MCP กับ JetBrains IDEs

  1. ติดตั้ง JetBrains IDEs ตัวใดตัวหนึ่ง
  2. ติดตั้งปลั๊กอิน JetBrains ตัวใดตัวหนึ่ง - AI Assistant หรือ Junie
  3. ไปที่ Settings > Tools > AI Assistant หรือ Junie > MCP Server
  4. คลิก "+" เพื่อเพิ่ม การกำหนดค่า Couchbase MCP และคลิก Save
  5. คุณจะเห็นเซิร์ฟเวอร์ Couchbase MCP เพิ่มลงในรายการเซิร์ฟเวอร์ เมื่อคุณคลิก Apply เซิร์ฟเวอร์ Couchbase MCP จะเริ่มทำงานและเมื่อวางเมาส์เหนือสถานะ จะแสดงเครื่องมือทั้งหมดที่มีอยู่
  6. ขณะนี้คุณสามารถใช้เซิร์ฟเวอร์ Couchbase MCP ใน JetBrains IDEs เพื่อคิวรีคลัสเตอร์ Couchbase ของคุณโดยใช้ภาษาธรรมชาติและดำเนินการ CRUD บนเอกสารได้

บันทึก: สามารถสำรวจไฟล์บันทึกได้ที่ Help > Show Log in Finder (Explorer) > mcp > couchbase

โหมดการขนส่ง HTTP แบบสตรีมได้

เซิร์ฟเวอร์ MCP สามารถทำงานในโหมดการขนส่ง HTTP แบบสตรีมได้ ซึ่งอนุญาตให้ไคลเอนต์หลายตัวเชื่อมต่อกับอินสแตนซ์เซิร์ฟเวอร์เดียวกันผ่าน HTTP ตรวจสอบว่า ไคลเอนต์ MCP ของคุณรองรับการขนส่ง HTTP แบบสตรีมได้ก่อนที่จะพยายามเชื่อมต่อกับเซิร์ฟเวอร์ MCP ในโหมดนี้

หมายเหตุ: รองรับการอนุญาต OAuth 2.1 ในการขนส่งนี้ ดู การอนุญาต OAuth 2.1 หากไม่มีการกำหนดค่า OAuth ปลายทาง HTTP จะไม่มีการตรวจสอบสิทธิ์

การใช้งาน

ตามค่าเริ่มต้น เซิร์ฟเวอร์ MCP จะทำงานบนพอร์ต 8000 แต่สามารถกำหนดค่าได้โดยใช้ตัวแปรสภาพแวดล้อม --port หรือ CB_MCP_PORT

uvx couchbase-mcp-server \
  --connection-string='<couchbase_connection_string>' \
  --username='<database_username>' \
  --password='<database_password>' \
  --read-only-mode=true \
  --transport=http

เซิร์ฟเวอร์จะพร้อมใช้งานบน http://localhost:8000/mcp ซึ่งสามารถใช้ในไคลเอนต์ MCP ที่รองรับโหมดการขนส่ง HTTP แบบสตรีมได้ เช่น Cursor

การกำหนดค่าไคลเอนต์ MCP

{
  "mcpServers": {
    "couchbase-http": {
      "url": "http://localhost:8000/mcp"
    }
  }
}

โหมดการขนส่ง SSE

มีตัวเลือกให้เรียกใช้เซิร์ฟเวอร์ MCP ในโหมดการขนส่ง Server-Sent Events (SSE)

หมายเหตุ: โหมด SSE ถูก เลิกใช้ โดย MCP เรามีการสนับสนุนสำหรับ HTTP แบบสตรีมได้

SSE: การใช้งาน

ตามค่าเริ่มต้น เซิร์ฟเวอร์ MCP จะทำงานบนพอร์ต 8000 แต่สามารถกำหนดค่าได้โดยใช้ตัวแปรสภาพแวดล้อม --port หรือ CB_MCP_PORT

uvx couchbase-mcp-server \
  --connection-string='<couchbase_connection_string>' \
  --username='<database_username>' \
  --password='<database_password>' \
  --read-only-mode=true \
  --transport=sse

เซิร์ฟเวอร์จะพร้อมใช้งานบน http://localhost:8000/sse ซึ่งสามารถใช้ในไคลเอนต์ MCP ที่รองรับโหมดการขนส่ง SSE เช่น Cursor

SSE: การกำหนดค่าไคลเอนต์ MCP

{
  "mcpServers": {
    "couchbase-sse": {
      "url": "http://localhost:8000/sse"
    }
  }
}

การอนุญาต OAuth 2.1

เมื่อทำงานกับ --transport=http เซิร์ฟเวอร์ MCP สามารถทำหน้าที่เป็น เซิร์ฟเวอร์ทรัพยากร OAuth 2.1: จะตรวจสอบความถูกต้องของ JWT แบบ bearer ที่เข้ามากับ JWKS ของผู้ให้บริการข้อมูลประจำตัวของคุณ โดยไม่ขึ้นอยู่กับผู้ให้บริการ (ผู้ให้บริการ OAuth 2.1 / OIDC ใดๆ ที่เผยแพร่ JWKS — Auth0, Okta, Keycloak, AWS Cognito, Microsoft Entra ฯลฯ) และ ไม่ ออกโทเค็นหรือจัดการผู้ใช้ การตั้งค่า OAuth จะถูกละเว้นใน stdio

OAuth ถูกกำหนดค่าด้วยตัวแปร CB_MCP_OAUTH_* ที่ระบุไว้ใน การกำหนดค่าเพิ่มเติม:

  • OAuth จะเปิดใช้งานก็ต่อเมื่อตั้งค่าทั้งสามอย่างของ CB_MCP_OAUTH_JWT_JWKS_URI, CB_MCP_OAUTH_JWT_ISSUER และ CB_MCP_OAUTH_JWT_AUDIENCE การตั้งค่าเพียงบางส่วนจะทำให้เกิดความล้มเหลวเมื่อเริ่มต้นระบบ
  • การตั้งค่า CB_MCP_OAUTH_MCP_BASE_URL จะเผยแพร่ข้อมูลเมตาทรัพยากรที่ได้รับการป้องกัน RFC 9728 เพิ่มเติม เพื่อให้ไคลเอนต์ที่รับรู้ PRM สามารถค้นพบเซิร์ฟเวอร์การอนุญาตได้
  • การเข้าถึงถูกควบคุมโดยสองขอบเขตที่อ่านจากการอ้างสิทธิ์ scope/scp ของโทเค็น: couchbase-mcp:read (เครื่องมืออ่าน รวมถึง SQL++) และ couchbase-mcp:write (เครื่องมือการเปลี่ยนแปลง KV) การเข้าถึงแบบเต็มจำเป็นต้องมีทั้งสองอย่าง
uvx couchbase-mcp-server \
  --connection-string='<couchbase_connection_string>' \
  --username='<database_username>' \
  --password='<database_password>' \
  --transport=http \
  --oauth-jwks-uri='https://auth.example.com/.well-known/jwks.json' \
  --oauth-issuer='https://auth.example.com/' \
  --oauth-audience='couchbase-mcp-server' \
  --oauth-mcp-base-url='<public_base_url_of_this_server>'

สำหรับรายละเอียดทั้งหมด โปรดดู เอกสาร

อิมเมจ Docker

เซิร์ฟเวอร์ MCP ยังสามารถสร้างและเรียกใช้เป็นคอนเทนเนอร์ Docker ได้ สามารถพบอิมเมจที่สร้างไว้ล่วงหน้าได้บน DockerHub หรือดึงผ่าน docker pull docker.io/couchbase/mcp-server:latest

อีกทางหนึ่ง เราเป็นส่วนหนึ่งของ Docker MCP Catalog

การสร้างอิมเมจ

docker build -t mcp/couchbase-src .
การสร้างด้วยอาร์กิวเมนต์ หากคุณต้องการสร้างด้วยอาร์กิวเมนต์บิลด์สำหรับแฮชคอมมิตและเวลาบิลด์ คุณสามารถสร้างโดยใช้:
docker build --build-arg GIT_COMMIT_HASH=$(git rev-parse HEAD) \
  --build-arg BUILD_DATE=$(date -u +'%Y-%m-%dT%H:%M:%SZ') \
  -t mcp/couchbase-src .

หรือใช้สคริปต์บิลด์ที่ให้มา:

# Build with default image name (mcp/couchbase-src)
./build.sh

# Build with custom image name
./build.sh my-custom/image-name

สคริปต์นี้จะดำเนินการต่อไปนี้โดยอัตโนมัติ:

  • ยอมรับพารามิเตอร์ชื่ออิมเมจที่เป็นทางเลือก (ค่าเริ่มต้นคือ mcp/couchbase-src)
  • สร้างแฮชของคอมมิต git และเวลาที่สร้าง
  • สร้างแท็กที่มีประโยชน์หลายรายการ (latest, <short-commit>)
  • แสดงข้อมูลการสร้างและผลลัพธ์
  • ใช้อาร์กิวเมนต์เดียวกันกับบิลด์ CI/CD

ตรวจสอบป้ายกำกับอิมเมจ:

# View git commit hash in image
docker inspect --format='{{index .Config.Labels "org.opencontainers.image.revision"}}' mcp/couchbase-src:latest

# View all metadata labels
docker inspect --format='{{json .Config.Labels}}' mcp/couchbase-src:latest

การรัน

เซิร์ฟเวอร์ MCP สามารถรันได้โดยใช้ตัวแปรสภาพแวดล้อมเพื่อกำหนดการตั้งค่า Couchbase ตัวแปรสภาพแวดล้อมเหมือนกับที่อธิบายไว้ใน ส่วนการกำหนดค่าเพิ่มเติม

คอนเทนเนอร์ Docker แบบอิสระ

docker run --rm -i \
  -e CB_CONNECTION_STRING='<couchbase_connection_string>' \
  -e CB_USERNAME='<database_user>' \
  -e CB_PASSWORD='<database_password>' \
  -e CB_MCP_TRANSPORT='<http|sse|stdio>' \
  -e CB_MCP_READ_ONLY_MODE='<true|false>' \
  -e CB_MCP_CONFIRMATION_REQUIRED_TOOLS='delete_document_by_id' \
  -e CB_MCP_PORT=9001 \
  -e CB_MCP_HOST=0.0.0.0 \
  -p 9001:9001 \
  mcp/couchbase-src

ตัวแปรสภาพแวดล้อม CB_MCP_PORT และ CB_MCP_HOST ใช้ได้เฉพาะในกรณีของโหมดการขนส่ง HTTP เช่น http และ sse

Docker: การกำหนดค่าไคลเอนต์ MCP

อิมเมจ Docker สามารถใช้ในโหมดการขนส่ง stdio ด้วยการกำหนดค่าต่อไปนี้

{
  "mcpServers": {
    "couchbase-mcp-docker": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-e",
        "CB_CONNECTION_STRING=<couchbase_connection_string>",
        "-e",
        "CB_USERNAME=<database_user>",
        "-e",
        "CB_PASSWORD=<database_password>",
        "mcp/couchbase-src"
      ]
    }
  }
}

หมายเหตุ

  • ค่า couchbase_connection_string ขึ้นอยู่กับว่าเซิร์ฟเวอร์ Couchbase กำลังทำงานบนเครื่องโฮสต์เดียวกัน ในคอนเทนเนอร์ Docker อื่น หรือบนโฮสต์ระยะไกล หากเซิร์ฟเวอร์ Couchbase ของคุณกำลังทำงานบนเครื่องโฮสต์ของคุณ สตริงการเชื่อมต่อของคุณน่าจะอยู่ในรูปแบบ couchbase://host.docker.internal สำหรับรายละเอียด โปรดดู เอกสารประกอบ docker
  • คุณสามารถระบุเครือข่ายของคอนเทนเนอร์ได้โดยใช้ตัวเลือก --network=<your_network> เครือข่ายที่คุณเลือกขึ้นอยู่กับสภาพแวดล้อมของคุณ ค่าเริ่มต้นคือ bridge สำหรับรายละเอียด โปรดดู ไดรเวอร์เครือข่ายใน docker

ความเสี่ยงที่เกี่ยวข้องกับ LLM

  • การใช้โมเดลภาษาขนาดใหญ่และเทคโนโลยีที่คล้ายคลึงกันมีความเสี่ยง รวมถึงโอกาสที่จะได้ผลลัพธ์ที่ไม่ถูกต้องหรือเป็นอันตราย
  • Couchbase ไม่ได้ตรวจสอบหรือประเมินคุณภาพหรือความถูกต้องของผลลัพธ์ดังกล่าว และผลลัพธ์ดังกล่าวอาจไม่สะท้อนมุมมองของ Couchbase
  • คุณมีหน้าที่รับผิดชอบแต่เพียงผู้เดียวในการตัดสินใจว่าจะใช้โมเดลภาษาขนาดใหญ่และเทคโนโลยีที่เกี่ยวข้องหรือไม่ และปฏิบัติตามข้อกำหนดใบอนุญาต ข้อกำหนดการใช้งาน และนโยบายขององค์กรของคุณที่ควบคุมการใช้งานสิ่งเดียวกัน

เคล็ดลับการแก้ไขปัญหา

  • ตรวจสอบให้แน่ใจว่าพาธไปยังที่เก็บเซิร์ฟเวอร์ MCP ของคุณถูกต้องในการกำหนดค่า หากรันจากซอร์ส
  • ตรวจสอบว่าสตริงการเชื่อมต่อ Couchbase ชื่อผู้ใช้ฐานข้อมูล รหัสผ่าน หรือพาธไปยังใบรับรองของคุณถูกต้อง
  • หากใช้ Couchbase Capella ตรวจสอบให้แน่ใจว่าคลัสเตอร์สามารถ เข้าถึงได้ จากเครื่องที่เซิร์ฟเวอร์ MCP กำลังทำงานอยู่
  • ตรวจสอบว่าผู้ใช้ฐานข้อมูลมีสิทธิ์ที่เหมาะสมในการเข้าถึงอย่างน้อยหนึ่งบัคเก็ต
  • ยืนยันว่าตัวจัดการแพ็คเกจ uv ได้รับการติดตั้งและเข้าถึงได้อย่างถูกต้อง คุณอาจต้องระบุพาธแบบสัมบูรณ์ไปยัง uv/uvx ในฟิลด์ command ในการกำหนดค่า
  • ตรวจสอบบันทึกเพื่อหาข้อผิดพลาดหรือคำเตือนใดๆ ที่อาจบ่งบอกถึงปัญหากับเซิร์ฟเวอร์ MCP ตำแหน่งของบันทึกขึ้นอยู่กับไคลเอนต์ MCP ของคุณ
  • หากคุณพบปัญหาในการรันเซิร์ฟเวอร์ MCP จากซอร์สหลังจากอัปเดตที่เก็บเซิร์ฟเวอร์ MCP ในเครื่องของคุณ ให้ลองรัน uv sync เพื่ออัปเดต การพึ่งพา

การทดสอบการรวมระบบ

เรามีการทดสอบการรวมระบบ MCP ระดับสูงเพื่อตรวจสอบว่าเซิร์ฟเวอร์เปิดเผยเครื่องมือที่คาดหวังและสามารถเรียกใช้กับคลัสเตอร์ Couchbase สาธิตได้

  1. ส่งออกข้อมูลประจำตัวของคลัสเตอร์สาธิต:
    • CB_CONNECTION_STRING
    • CB_USERNAME
    • CB_PASSWORD
    • ทางเลือก: CB_MCP_TEST_BUCKET (บัคเก็ตที่จะตรวจสอบระหว่างการทดสอบ)
  2. รันการทดสอบ:
uv run pytest tests/ -v

👩‍💻 การมีส่วนร่วม

เรายินดีต้อนรับการมีส่วนร่วมจากชุมชน! ไม่ว่าคุณต้องการแก้ไขข้อบกพร่อง เพิ่มคุณสมบัติ หรือปรับปรุงเอกสารประกอบ ความช่วยเหลือของคุณเป็นที่ชื่นชม

หากคุณต้องการความช่วยเหลือ พบบั๊ก หรือต้องการมีส่วนร่วมในการปรับปรุง สถานที่ที่ดีที่สุดในการดำเนินการคือที่นี่ — โดย การเปิด GitHub issue

สำหรับนักพัฒนา

หากคุณสนใจที่จะมีส่วนร่วมในการเขียนโค้ดหรือตั้งค่าสภาพแวดล้อมการพัฒนา:

📖 ดู CONTRIBUTING.md สำหรับคำแนะนำการตั้งค่านักพัฒนาที่ครอบคลุม รวมถึง:

  • การตั้งค่าสภาพแวดล้อมการพัฒนาด้วย uv
  • การตรวจสอบและจัดรูปแบบโค้ดด้วย Ruff
  • การติดตั้ง pre-commit hooks
  • ภาพรวมโครงสร้างโปรเจกต์
  • ขั้นตอนการทำงานและแนวปฏิบัติในการพัฒนา

เริ่มต้นอย่างรวดเร็วสำหรับผู้มีส่วนร่วม

# Clone and setup
git clone https://github.com/couchbase/mcp-server-couchbase.git
cd mcp-server-couchbase

# Install with development dependencies
uv sync --extra dev

# Install pre-commit hooks
uv run pre-commit install

# Run linting
./scripts/lint.sh

📢 นโยบายการสนับสนุน

เราขอขอบคุณอย่างยิ่งสำหรับความสนใจของคุณในโปรเจกต์นี้! โปรเจกต์นี้ ดูแลโดยชุมชน Couchbase ซึ่งหมายความว่า ไม่ได้รับการสนับสนุนอย่างเป็นทางการ จากทีมสนับสนุนของเรา อย่างไรก็ตาม วิศวกรของเรากำลังติดตามและดูแล repo นี้อย่างแข็งขัน และจะพยายามแก้ไขปัญหาตามความสามารถที่ดีที่สุด

พอร์ทัลสนับสนุนของเราไม่สามารถให้ความช่วยเหลือเกี่ยวกับคำขอที่เกี่ยวข้องกับโปรเจกต์นี้ได้ ดังนั้นเราจึงขอให้สอบถามทั้งหมดอยู่ใน GitHub

การทำงานร่วมกันของคุณช่วยให้เราทุกคนก้าวไปข้างหน้าด้วยกัน — ขอบคุณ!