Couchbase-Ecosystem/mcp-server-couchbase

Couchbase-Ecosystem/mcp-server-couchbase

от couchbase-ecosystem
MCP-сервер для Couchbase, который даёт языковым моделям прямой доступ к кластерам: выполнять SQL++ запросы, управлять документами, проверять здоровье и производительность. Полезен разработчикам, интегрирующим ИИ-агенты с Couchbase.

Couchbase MCP Server

Couchbase MCP Server is a self-hosted Model Context Protocol (MCP) server that connects AI agents and LLM-powered assistants — Claude, Cursor, Windsurf, VS Code Copilot, and other MCP clients — to data in Couchbase clusters, whether hosted on Capella or self-managed. MCP is an open standard for letting AI assistants call tools and query external data sources; this server implements that standard for Couchbase, so an AI agent can inspect your cluster, run SQL++ queries, read and write documents, and analyze query performance using natural language instead of hand-written code.

It provides tools across categories including Cluster Health, Data Schema, Key-Value, Query, and Performance — with safety controls via read-only mode (on by default) and fine-grained tool disabling, so you can let an AI agent explore and query your data without risking unintended writes. It supports both STDIO and Streamable HTTP transports.

Couchbase MCP server is distributed as a Python Package Index (PyPI) package and via Docker. Enterprise support for Couchbase MCP Server is available by licensing Couchbase AI Data Plane, which also entitles use and enterprise support of Couchbase Agent Memory and Couchbase Agent Catalog.

Часто задаваемые вопросы

Инструменты были проиндексированы:
explain_sql_plus_plus_queryтолько чтение

Генерирует и оценивает план EXPLAIN для SQL++ запроса. Он предоставляет информацию о плане выполнения запроса. Оператор EXPLAIN выполняется в указанной области в указанном bucket. Он возвращает метаданные запроса вместе с извлечённым планом и оценкой плана.

Параметры
  • bucket_namestringобязательный
  • querystringобязательный
  • scope_namestringобязательный
get_buckets_in_clusterтолько чтение

Получает имена всех доступных бакетов в кластере.

Параметры

Без параметров.

get_cluster_health_and_servicesтолько чтение

Получает состояние кластера и список всех запущенных сервисов. Инструмент отслеживает состояние через: - Получение состояния здоровья всех сервисов с информацией о задержках (через ping) - Перечисление всех сервисов, работающих на кластере, с их эндпоинтами - Отображение статуса соединения и информации об узле для каждого сервиса Если указан bucket_name, инструмент активно пингует сервисы со стороны этого bucket'а. В противном случае использует кластерный ping, чтобы получить состояние кластера. Возвращает: - Состояние кластера с деталями соединения по каждому сервису и измерениями задержек

Параметры
  • bucket_namestring | null
get_collections_in_scopeтолько чтение

Получить имена всех коллекций в указанной области и корзине.

Параметры
  • bucket_namestringобязательный
  • scope_namestringобязательный
get_document_by_idтолько чтение

Получить документ по его идентификатору из указанной области и коллекции. Если документ не найден, будет вызвано исключение.

Параметры
  • bucket_namestringобязательный
  • collection_namestringобязательный
  • document_idstringобязательный
  • scope_namestringобязательный
get_index_advisor_recommendationsтолько чтение

Получает рекомендации по индексам от Couchbase Index Advisor для заданного SQL++ запроса. Index Advisor анализирует запрос и выдаёт рекомендации по оптимальным индексам. Инструмент работает с запросами SELECT, UPDATE, DELETE или MERGE. Запросы выполняются в указанном scope в указанном bucket. Возвращает словарь с: - current_used_indexes: массив используемых в данный момент индексов (если есть) - recommended_indexes: массив рекомендуемых вторичных индексов (если есть) - recommended_covering_indexes: массив рекомендуемых покрывающих индексов (если есть) Каждый объект индекса содержит: - index: команда CREATE INDEX SQL++ - statements: массив объектов инструкций с запросом и количеством запусков

Параметры
  • bucket_namestringобязательный
  • querystringобязательный
  • scope_namestringобязательный
get_longest_running_queriesтолько чтение

Получить N самых долго выполняющихся запросов из каталога system:completed_requests.

Параметры
  • limitinteger

    Количество запросов для возврата (по умолчанию: 10)

get_most_frequent_queriesтолько чтение

Получить N самых частых запросов из каталога system:completed_requests.

Параметры
  • limitinteger

    Количество запросов для возврата (по умолчанию: 10)

get_queries_not_selectiveтолько чтение

Получить запросы, которые не очень селективны, из каталога system:completed_requests.

Параметры
  • limitinteger

    Количество запросов для возврата (по умолчанию: 10)

get_queries_not_using_covering_indexтолько чтение

Получает запросы, не использующие покрывающий индекс, из каталога system:completed_requests. Это предпочтительнее, чем написание прямого запроса к system:completed_requests через run_sql_plus_plus_query.

Параметры
  • limitinteger

    Количество запросов для возврата (по умолчанию: 10)

get_queries_using_primary_indexтолько чтение

Получает запросы, использующие первичный индекс, из каталога system:completed_requests.

Параметры
  • limitinteger

    Количество запросов для возврата (по умолчанию: 10)

get_queries_with_large_result_countтолько чтение

Получить запросы с наибольшим количеством результатов из каталога system:completed_requests.

Параметры
  • limitinteger

    Количество запросов для возврата (по умолчанию: 10)

get_queries_with_largest_response_sizesтолько чтение

Получить запросы с наибольшими размерами ответов из каталога system:completed_requests.

Параметры
  • limitinteger

    Количество запросов для возврата (по умолчанию: 10)

get_schema_for_collectionтолько чтение

Получить схему для коллекции в указанном скоупе. Возвращает словарь с именем коллекции и схемой, полученной при выполнении запроса INFER для коллекции Couchbase.

Параметры
  • bucket_namestringобязательный
  • collection_namestringобязательный
  • scope_namestringобязательный
get_scopes_and_collections_in_bucketтолько чтение

Получить имена всех scope и collection в bucket. Возвращает словарь, где ключи - имена scope, а значения - списки имён collection.

Параметры
  • bucket_namestringобязательный
get_scopes_in_bucketтолько чтение

Получить имена всех scopes в указанном bucket.

Параметры
  • bucket_namestringобязательный
get_server_configuration_statusтолько чтение

Получает статус и конфигурацию сервера без установки соединения. Этот инструмент можно использовать, чтобы проверить, запущен ли сервер, и проверить конфигурацию.

Параметры

Без параметров.

list_indexesтолько чтение

Выводит список индексов в кластере с возможностью фильтрации по bucket, scope, collection и имени индекса. Фильтры нужно задавать иерархически: для scope требуется bucket, для collection — оба, для индекса — все три. Установите return_raw_index_stats=True, чтобы получить необработанную исходную строку для каждого индекса. Каждый результат содержит: name, definition (выражение CREATE INDEX), status, isPrimary, bucket, scope, collection, lastScanTime. Если обязательное поле отсутствует, запись содержит warning и raw_index_stats. Источник зависит от версии кластера: начиная с v8 запрашивает system:indexes через query service (ограничено RBAC — подключенный пользователь видит только индексы на keyspaces, к которым у него есть доступ); старые кластеры возвращаются к административному REST API Index Service /getIndexStatus.

Параметры
  • bucket_namestring | null
  • collection_namestring | null
  • index_namestring | null
  • return_raw_index_statsboolean
  • scope_namestring | null
lookup_subdocumentтолько чтение

Ищет части документа без загрузки целиком, используя поддокументные операции Couchbase. Используй это вместо get_document_by_id, когда нужны всего несколько полей, проверка наличия или размер массива/объекта внутри документа — И ты уже знаешь точные пути к полям для поиска (например, из предыдущего вызова get_document_by_id по этому же документу, из явно названного пользователем поля или из известной/подтверждённой схемы для этой коллекции). ВАЖНО: Не угадывай пути к полям. Если ты ещё не знаешь точные имена/структуру полей документа, сначала (или вместо этого) вызови get_document_by_id — угаданный путь, который не существует, вернёт по нему ошибку, а не настоящие данные, и сообщать «не найдено» для неверной догадки хуже, чем просто загрузить весь документ и прочитать правильное поле. Укажи один или несколько из следующих параметров. Каждый — список путей к поддокументам в синтаксисе Couchbase с точками/скобками (например, "address.city", "tags[0]", "tags[-1]" для последнего элемента массива): - get_paths: получает ЗНАЧЕНИЕ по каждому пути. - exists_paths: проверяет, существует ли каждый путь, не получая его значение (дешевле, чем get_paths — нет передачи содержимого — когда нужен только ответ да/нет). - count_paths: возвращает количество элементов в массиве или объекте по каждому пути (возвращает ошибку для этого пути, если путь не является массивом/объектом). Хотя бы один из get_paths, exists_paths или count_paths должен быть указан. По общему правилу, старайся, чтобы общее количество путей во всех трёх не превышало 16 — Couchbase ограничивает количество поддокументных операций за вызов, хотя точный лимит устанавливается на стороне сервера и может измениться. Если сервер отклоняет вызов (слишком много путей или другое ограничение, например длина пути или глубина вложенности), весь вызов завершается ошибкой с {"error": "..."}. Путь, который не существует (или завершается ошибкой, например count на не-массиве/объекте), НЕ приводит к сбою всего вызова — по нему возвращается отдельная ошибка {"error": ...} в возвращаемом словаре, чтобы остальные запрошенные пути могли быть обработаны.

Параметры
  • bucket_namestringобязательный
  • collection_namestringобязательный
  • count_pathsstring[] | null
  • document_idstringобязательный
  • exists_pathsstring[] | null
  • get_pathsstring[] | null
  • scope_namestringобязательный
run_sql_plus_plus_query

Выполняет SQL++ запрос на скоупе и возвращает результаты в виде списка JSON-объектов. Запрос выполняется на указанном скоупе в указанном бакете. В запросе используйте имена коллекций напрямую, без префиксов бакета или скоупа — контекст скоупа устанавливается автоматически. Используйте named_parameters, чтобы связать значения с плейсхолдерами $name в запросе, вместо того чтобы конкатенировать пользовательский ввод в строку. Это предотвращает SQL++-инъекции. Пример: query = "SELECT * FROM users WHERE age > 18" # Неправильно: "SELECT * FROM bucket.scope.users WHERE age > 18"

Параметры
  • bucket_namestringобязательный
  • named_parametersobject | null
  • querystringобязательный
  • scope_namestringобязательный
test_cluster_connectionтолько чтение

Тестирует соединение с кластером Couchbase и опционально с бакетом. Этот инструмент проверяет соединение с кластером и бакетом Couchbase, устанавливая его, если оно еще не установлено. Если имя бакета не указано, он не будет пытаться подключиться к бакету, указанному в настройках MCP-сервера. Возвращает статус подключения и базовую информацию о кластере.

Параметры
  • bucket_namestring | null
1.0.1.post1основная
1.0.2rc4
1.0.2rc3
1.0.2rc2
1.0.2rc1
1.0.1
1.0.1rc1
1.0.0.post1
1.0.0
0.8.0.post1
0.8.1rc2
0.8.1rc1
0.8.0
0.7.1
0.7.0
0.6.1
0.6.0
0.5.3
0.5.2
0.5.2rc6
0.5.2rc5
0.5.2rc4
0.5.2rc3
0.5.2rc2
0.5.2rc1
0.5.1
0.5.0
0.4.0
0.4.0rc1
0.3.1rc3
0.3.1rc2

Выберите клиент, чтобы установить Couchbase-Ecosystem/mcp-server-couchbase:

Любой клиент

Конфиг добавления MCP сервера стандартный, обычно он не меняется вообще, поэтому подходит практически к любому ИИ клиенту, поддерживающему MCP.

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

Перейдите по ссылке и сервер автоматически будет добавлен в Cursor. Либо откройте/создайте файл ~/.cursor/mcp.json(%USERPROFILE%\.cursor\mcp.json на Windows) и добавьте конфиг сервера:

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

Создайте .vscode/mcp.json в проекте (ключ верхнего уровня — servers):

{
  "servers": {
    "couchbase-ecosystem-mcp-server-couchbase-1erdscovws": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "couchbase-mcp-server"
      ],
      "env": {
        "CB_CONNECTION_STRING": "couchbases://connection-string",
        "CB_USERNAME": "username",
        "CB_PASSWORD": "password"
      }
    }
  }
}

Либо добавьте сервер через терминал:

code --add-mcp "{\"name\":\"couchbase-ecosystem-mcp-server-couchbase-1erdscovws\",\"type\":\"stdio\",\"command\":\"uvx\",\"args\":[\"couchbase-mcp-server\"],\"env\":{\"CB_CONNECTION_STRING\":\"couchbases://connection-string\",\"CB_USERNAME\":\"username\",\"CB_PASSWORD\":\"password\"}}"
ClaudeClaude Desktop

Откройте Settings → Developer → Edit Config — это откроет файл claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Впишите сервер и полностью перезапустите Claude Desktop:

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

Добавьте сервер одной командой в терминале:

claude mcp add couchbase-ecosystem-mcp-server-couchbase-1erdscovws --env CB_CONNECTION_STRING=couchbases://connection-string --env CB_USERNAME=username --env CB_PASSWORD=password -- uvx couchbase-mcp-server

Либо через JSON-конфиг:

claude mcp add-json couchbase-ecosystem-mcp-server-couchbase-1erdscovws "{\"command\":\"uvx\",\"args\":[\"couchbase-mcp-server\"],\"env\":{\"CB_CONNECTION_STRING\":\"couchbases://connection-string\",\"CB_USERNAME\":\"username\",\"CB_PASSWORD\":\"password\"}}"
CodexCodex

Добавьте сервер командой в терминале:

codex mcp add couchbase-ecosystem-mcp-server-couchbase-1erdscovws --env CB_CONNECTION_STRING=couchbases://connection-string --env CB_USERNAME=username --env CB_PASSWORD=password -- uvx couchbase-mcp-server

Либо вручную в ~/.codex/config.toml(%USERPROFILE%\.codex\config.toml на Windows):

[mcp_servers.couchbase-ecosystem-mcp-server-couchbase-1erdscovws]
command = "uvx"
args = ["couchbase-mcp-server"]

[mcp_servers.couchbase-ecosystem-mcp-server-couchbase-1erdscovws.env]
CB_CONNECTION_STRING = "couchbases://connection-string"
CB_USERNAME = "username"
CB_PASSWORD = "password"
PerplexityPerplexity

MCP доступен подписчикам Perplexity Pro / Max / Enterprise. Локальные серверы — только в приложении для macOS.

  1. Откройте Настройки аккаунта → Connectors.
  2. Установите вспомогательное приложение PerplexityXPC (один раз).
  3. Нажмите Add Connector → вкладка Simple.
  4. В поле Server Name укажите Couchbase-Ecosystem/mcp-server-couchbase, а в поле команды запуска — строку ниже:
uvx couchbase-mcp-server

Нажмите Save и дождитесь статуса Running.

WindsurfWindsurf

Откройте Windsurf Settings → Cascade → MCP Servers или отредактируйте файл ~/.codeium/windsurf/mcp_config.json:

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

В панели Cline нажмите иконку MCP Servers → Configure → Configure MCP Servers (или отредактируйте ~/.cline/mcp.json) и добавьте сервер:

{
  "mcpServers": {
    "couchbase-ecosystem-mcp-server-couchbase-1erdscovws": {
      "command": "uvx",
      "args": [
        "couchbase-mcp-server"
      ],
      "env": {
        "CB_CONNECTION_STRING": "couchbases://connection-string",
        "CB_USERNAME": "username",
        "CB_PASSWORD": "password"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}
Continue

Создайте файл в .continue/mcpServers/ (например couchbase-ecosystem-mcp-server-couchbase-1erdscovws.yaml) или добавьте блок в config.yaml. MCP работает только в режиме agent:

mcpServers:
  - name: couchbase-ecosystem-mcp-server-couchbase-1erdscovws
    command: uvx
    args:
      - "couchbase-mcp-server"
    env:
      CB_CONNECTION_STRING: couchbases://connection-string
      CB_USERNAME: username
      CB_PASSWORD: password
Zed

Выполните agent: add context server или откройте настройки (zed: open settings file) и добавьте сервер в объект context_servers:

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

Похожие MCP-сервера

crystaldba/postgres-mcp

crystaldba/postgres-mcp

от crystaldba

Подбирает оптимальные индексы, объясняет планы запросов и проверяет здоровье PostgreSQL. Выполняет SQL в безопасном режиме только для чтения.

Python⭐ 3413
f4ww4z/mcp-mysql-server

f4ww4z/mcp-mysql-server

от f4ww4z

MCP сервер для MySQL: управляет подключениями, выполняет SQL-запросы и описывает таблицы. Поддерживает безопасные параметризованные запросы (prepared statements). Идеален для ИИ-агентов, которым ну...

JavaScript⭐ 169
JaviMaligno/postgres_mcp

JaviMaligno/postgres_mcp

от javimaligno

MCP сервер для работы с PostgreSQL: выполняет SQL-запросы, исследует схемы, таблицы и индексы, помогает с производительностью через EXPLAIN. Работает read-only по умолчанию — безопасность на первом месте. Подходит для Claude Desktop, Cursor и других MCP-клиентов.

Python⭐ 12
wenb1n-dev/mysql_mcp_server_pro

wenb1n-dev/mysql_mcp_server_pro

от wenb1n-dev

mcp_mysql_server_pro — это MCP-сервер для работы с MySQL: выполняет SQL-запросы, анализирует аномалии и здоровье базы, проверяет блокировки и предлагает оптимизацию. Поддерживает OAuth2.0, три роли...

Python⭐ 250
jparkerweb/mcp-sqlite

jparkerweb/mcp-sqlite

от jparkerweb

MCP сервер для работы с SQLite: выполняет CRUD-операции, исследование схемы таблиц и произвольные SQL-запросы. Полезен разработчикам, управляющим базами данных через ИИ-ассистентов.

JavaScript⭐ 130
amineelkouhen/mcp-cockroachdb

amineelkouhen/mcp-cockroachdb

от amineelkouhen

MCP сервер для CockroachDB дает AI-агентам управлять базой через естественный язык: мониторинг кластера, выполнение запросов и администрирование. Строгая проверка прав и read-only режим для безопасности.

Python⭐ 12
© Каталог MCP, 2026. Все права защищены.
Проект не аффилирован с Anthropic и любыми упомянутыми продуктами.
Все названия и торговые марки принадлежат их владельцам.
Контакты для связи: hi@mcp-katalog.ru

Лука Никитин