LLM数据库交互服务器

一个使大型语言模型能够直接与Couchbase数据库交互的服务器,支持查询、CRUD操作、N1QL查询等数据管理功能。

  • by karthik-couchbase
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 karthik-couchbase/mcp-server-couchbase

使用说明

🗄️ LLM的Couchbase MCP服务器

一种模型上下文协议(MCP)服务器,使LLM能够直接与Capella集群上的Couchbase数据库交互。查询bucket,执行CRUD操作,执行N1QL查询,并通过自然语言无缝管理数据。

🚀 快速开始

  1. 先决条件

    • Node.js 16或更高版本
    • Capella上正在运行的Couchbase实例
    • Claude桌面应用程序
  2. 安装

    Couchbase MCP服务器可以通过两种方式安装:

    选项1:使用NPX(推荐)

    最快的入门方法是使用NPX:

    npx -y @couchbasedatabase/couchbase-mcp
    

    选项2:手动安装

    如果您更喜欢手动克隆和运行项目:

    # Clone the repository
    git clone https://github.com/karthik-couchbase/MCP-Server-Couchbase.git
    cd MCP-Server-Couchbase
    
    # Install dependencies
    npm install
    
    # Build the project
    npm run build
    
  3. Claude桌面集成

    将此配置添加到您的Claude Desktop配置文件中:

    视窗: %APPDATA%/Claude/claude_desktop_config.json
    MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json

    选项1:带软件包安装

    {
      "mcpServers": {
        "couchbase": {
          "command": "npx",
          "args": ["-y", "@couchbasedatabase/couchbase-mcp"],
          "env": {
            "COUCHBASE_URL": "<COUCHBASE CONNECTION STRING>",
            "COUCHBASE_BUCKET": "<BUCKET NAME>",
            "COUCHBASE_USERNAME": "<COUCHBASE USERNAME>",
            "COUCHBASE_PASSWORD": "<COUCHBASE PASSWORD>"
          }
        }
      }
    }
    

    选项2:手动安装

    {
      "mcpServers": {
        "couchbase": {
          "command": "node",
          "args": ["path/to/MCP-Server-Couchbase/dist/index.js"],
          "env": {
            "COUCHBASE_URL": "<COUCHBASE CONNECTION STRING>",
            "COUCHBASE_BUCKET": "<BUCKET NAME>",
            "COUCHBASE_USERNAME": "<COUCHBASE USERNAME>",
            "COUCHBASE_PASSWORD": "<COUCHBASE PASSWORD>"
          }
        }
      }
    }
    
  4. 验证连接

    • 重新启动克劳德桌面
    • Couchbase MCP服务器工具现在应该可以在您的对话中使用了

📝 可用工具

基本操作

  • query:执行N1QL查询
  • listBuckets:列出可用桶

范围管理

  • createScope:在bucket中创建新作用域
  • deleteScope:删除现有作用域
  • listScopes:列出bucket中的所有作用域

收集管理

  • createCollection:在作用域中创建新集合
  • dropCollection:从作用域中删除集合

文档操作

  • createDocument:创建新文档
  • getDocument:按ID检索文档
  • updateDocument:更新现有文档
  • deleteDocument:按ID删除文档
  • bulkCreateDocuments:一次创建多个文档

索引管理

  • createIndex:在指定字段上创建新索引
  • createPrimaryIndex:在集合上创建主索引
  • listIndexes:列出bucket中的所有索引
  • dropIndex:删除现有索引

每个工具都支持可选 collection 和 scope 用于定位特定数据容器的参数。

🔒 安全考虑

  • 始终对敏感凭据使用环境变量
  • 考虑在反向代理后运行服务器以供生产使用
  • 根据需要实施适当的访问控制和身份验证

📚 例子

以下是使用MCP服务器与Claude进行交互的一些示例:

  1. 列出所有桶:

    Could you show me all available buckets in the database?
    
  2. 创建范围和集合:

    Create a new scope called "users" and a collection called "profiles" in it
    
  3. 查询文档:

    Find all users who signed up in the last 30 days
    
  4. 创建文档:

    Create a new user document with name "John Doe" and email "john@example.com"
    

🤝 贡献

欢迎投稿!请随时提交拉取请求。