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 MCP Server that allows AI agents to connect to and interact with data in Couchbase clusters, whether hosted on Capella or self-managed. It provides tools across categories including Cluster Health, Data Schema, Key-Value, Query, and Performance — with safety controls via read-only mode and fine-grained tool disabling. 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.

Docs License Python 3.10+ PyPI version [Install in Cursor][cursor-install-basic] Verified on MseeP Trust Score

For full documentation, visit mcp-server.couchbase.com.

Couchbase Server MCP server

Features/Tools

Cluster setup & health tools
Tool Name Description
get_server_configuration_status Get the server status and configuration without connecting to the cluster — reports read-only mode, disabled/confirmation-required tools, OAuth settings, and the resolved logging configuration
test_cluster_connection Check the cluster credentials by connecting to the cluster
get_cluster_health_and_services Get cluster health status and list of all running services
Инструменты были проиндексированы:
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

    Number of queries to return (default: 10)

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

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

Параметры
  • limitinteger

    Number of queries to return (default: 10)

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

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

Параметры
  • limitinteger

    Number of queries to return (default: 10)

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

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

Параметры
  • limitinteger

    Number of queries to return (default: 10)

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

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

Параметры
  • limitinteger

    Number of queries to return (default: 10)

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

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

Параметры
  • limitinteger

    Number of queries to return (default: 10)

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

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

Параметры
  • limitinteger

    Number of queries to return (default: 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

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

f4ww4z/mcp-mysql-server

f4ww4z/mcp-mysql-server

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

JavaScript168
quantgeekdev/mongo-mcp

quantgeekdev/mongo-mcp

MCP сервер для MongoDB: LLM выполняет запросы, инспектирует схемы и управляет документами с индексами на естественном языке. Полезен разработчикам для автоматизации работы с базами данных.

TypeScript175
jparkerweb/mcp-sqlite

jparkerweb/mcp-sqlite

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

JavaScript127
crystaldba/postgres-mcp

crystaldba/postgres-mcp

MCP сервер для Postgres, который помогает AI-агентам и разработчикам повышать производительность: диагностика здоровья БД, тюнинг индексов, explain plans и безопасное выполнение SQL. Ускоряет разра...

Python3286
cr7258/elasticsearch-mcp-server

cr7258/elasticsearch-mcp-server

MCP сервер для Elasticsearch и OpenSearch: поиск документов, управление индексами, анализ текста и мониторинг кластера. Помогает разработчикам встраивать поиск в AI-агентов и управлять ES через MCP.

Python306
amineelkouhen/mcp-cockroachdb

amineelkouhen/mcp-cockroachdb

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

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

Лука Никитин