Skip to main content
Glama

Couchbase MCP Server for LLMs

by Aniket310101
index.ts1.59 kB
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js'; import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js"; import { connect, Cluster } from 'couchbase'; import { registerTools } from './registry'; require('dotenv').config(); // Load environment variables async function main() { const COUCHBASE_URL = process.env.COUCHBASE_URL; const BUCKET = process.env.COUCHBASE_BUCKET; const USERNAME = process.env.COUCHBASE_USERNAME; const PASSWORD = process.env.COUCHBASE_PASSWORD; // console.log(JSON.stringify(process.env, null, 2)) if (!COUCHBASE_URL || !BUCKET || !USERNAME || !PASSWORD) { console.error("Error: Missing Couchbase connection environment variables."); console.error("Please set COUCHBASE_URL, COUCHBASE_BUCKET, COUCHBASE_USERNAME, and COUCHBASE_PASSWORD."); process.exit(1); } // Connect to Couchbase const cluster: Cluster = await connect(COUCHBASE_URL, { username: USERNAME, password: PASSWORD, }); // Get the default bucket const defaultBucket = cluster.bucket(BUCKET); // Create MCP server instance const server = new McpServer({ name: 'couchbase-mcp-server', version: '1.0.0', }); // Register all tools registerTools(server, cluster, defaultBucket); // Start the server const transport = new StdioServerTransport(); await server.connect(transport); console.log('Couchbase MCP Server is running...'); } main().catch((error) => { console.error('Failed to start server:', error); process.exit(1); }); export { registerQueryTools } from './tools/query';

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Aniket310101/MCP-Server-Couchbase'

If you have feedback or need assistance with the MCP directory API, please join our Discord server