MCP Server to interact with data in Couchbase Clusters
Drift inferred · capture-to-capture
- HIGH code analysis flagged hidden prompt content in couchbase/mcp-server-couchbase
- HIGH code analysis flagged hidden prompt content in couchbase/mcp-server-couchbase
tools
-
delete_document_by_id
Delete a document by ID from a specified scope and collection. Disabled by default when CB_MCP_READ_ONLY_MODE=true.
-
explain_sql_plus_plus_query
Generate and evaluate an EXPLAIN plan for a SQL++ query. Returns query metadata, extracted plan, and plan evaluation findings.
-
get_buckets_in_cluster
Get a list of all the buckets in the cluster
-
get_cluster_health_and_services
Get cluster health status and list of all running services
-
get_collections_in_scope
Get a list of all the collections in a specified scope and bucket. Note that this tool requires the cluster to have Query service.
-
get_document_by_id
Get a document by ID from a specified scope and collection
-
get_index_advisor_recommendations
Get index recommendations from Couchbase Index Advisor for a given SQL++ query to optimize query performance
-
get_longest_running_queries
Get longest running queries by average service time
-
get_most_frequent_queries
Get most frequently executed queries
-
get_queries_not_selective
Get queries that are not selective (index scans return many more documents than final result)
-
get_queries_not_using_covering_index
Get queries that don't use a covering index
-
get_queries_using_primary_index
Get queries that use a primary index (potential performance concern)
-
get_queries_with_large_result_count
Get queries with the largest result counts
-
get_queries_with_largest_response_sizes
Get queries with the largest response sizes
-
get_schema_for_collection
Get the structure for a collection
-
get_scopes_and_collections_in_bucket
Get a list of all the scopes and collections in the specified bucket
-
get_scopes_in_bucket
Get a list of all the scopes in the specified bucket
-
get_server_configuration_status
Get the status of the MCP server
-
insert_document_by_id
Insert a new document by ID (fails if document exists). Disabled by default when CB_MCP_READ_ONLY_MODE=true.
-
list_indexes
List all indexes in the cluster with their definitions, with optional filtering by bucket, scope, collection and index name. Set return_raw_index_stats=true to return the unprocessed index information
-
replace_document_by_id
Replace an existing document by ID (fails if document doesn't exist). Disabled by default when CB_MCP_READ_ONLY_MODE=true.
-
run_sql_plus_plus_query
Run a [SQL++ query](https://www.couchbase.com/sqlplusplus/) on a specified scope.<br><br>Queries are automatically scoped to the specified bucket and scope, so use collection names directly (e.g., SEL
-
test_cluster_connection
Check the cluster credentials by connecting to the cluster
-
upsert_document_by_id
Upsert a document by ID to a specified scope and collection. Disabled by default when CB_MCP_READ_ONLY_MODE=true.
filesystem 1
- fs couchbase-mcp-server-couchbase-7ebd527/src/cb_mcp/utils/config.py :3
from pathlib import Path
network 2
- net couchbase-mcp-server-couchbase-7ebd527/scripts/setup_test_data.py :29
import urllib.error - net couchbase-mcp-server-couchbase-7ebd527/src/cb_mcp/utils/index_utils.py :12
from urllib.parse import urlparse
declared dependencies 10
- click@>=8.2.1,<9.0.0
- couchbase@>=4.4.0,<5.0.0
- lark-sqlpp@>=0.1.0
- fastmcp@>=3.2.0,<4.0.0
- ruff@==0.12.5
- pre-commit@==4.2.0
- pytest@==9.0.3
- pytest-asyncio@==1.3.0
- pytest-cov@>=7.0.0
- openai@>=2.0.0,<3.0.0
obfuscation 9
- dynamic require()/import() couchbase-mcp-server-couchbase-7ebd527/src/cb_mcp/auth.py :28
from .utils.constants import ( - dynamic require()/import() couchbase-mcp-server-couchbase-7ebd527/src/cb_mcp/tool_registration.py :12
from .utils.scope_enforcement import ( - dynamic require()/import() couchbase-mcp-server-couchbase-7ebd527/src/cb_mcp/tools/__init__.py :19
from .kv import ( - dynamic require()/import() couchbase-mcp-server-couchbase-7ebd527/src/cb_mcp/tools/index.py :13
from ..utils.constants import ( - dynamic require()/import() couchbase-mcp-server-couchbase-7ebd527/src/cb_mcp/tools/query.py :18
from ..utils.query_utils import ( - dynamic require()/import() couchbase-mcp-server-couchbase-7ebd527/src/cb_mcp/tools/server.py :16
from ..utils.context import ( - dynamic require()/import() couchbase-mcp-server-couchbase-7ebd527/src/cb_mcp/utils/__init__.py :11
from .config import ( - dynamic require()/import() couchbase-mcp-server-couchbase-7ebd527/src/cb_mcp/utils/logging.py :19
from .constants import ( - dynamic require()/import() couchbase-mcp-server-couchbase-7ebd527/src/mcp_server.py :18
from cb_mcp.utils import (