delete_document_by_id
Remove a specific document from Couchbase using its ID, scope, and collection. Returns True if successful, False if the deletion fails.
Instructions
Delete a document by its ID. Returns True on success, False on failure.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| collection_name | Yes | ||
| document_id | Yes | ||
| scope_name | Yes |
Implementation Reference
- src/tools/kv.py:62-80 (handler)The core handler function that executes the logic to delete a document by its ID from the specified Couchbase bucket, scope, and collection. It connects to the cluster, removes the document, logs the result, and returns True on success or False on failure.def delete_document_by_id( ctx: Context, bucket_name: str, scope_name: str, collection_name: str, document_id: str, ) -> bool: """Delete a document by its ID. Returns True on success, False on failure.""" cluster = get_cluster_connection(ctx) bucket = connect_to_bucket(cluster, bucket_name) try: collection = bucket.scope(scope_name).collection(collection_name) collection.remove(document_id) logger.info(f"Successfully deleted document {document_id}") return True except Exception as e: logger.error(f"Error deleting document {document_id}: {e}") return False
- src/tools/__init__.py:35-50 (registration)The delete_document_by_id tool is included in the ALL_TOOLS list in tools/__init__.py, which collects all available tools for registration.ALL_TOOLS = [ get_buckets_in_cluster, get_server_configuration_status, test_cluster_connection, get_scopes_and_collections_in_bucket, get_collections_in_scope, get_scopes_in_bucket, get_document_by_id, upsert_document_by_id, delete_document_by_id, get_schema_for_collection, run_sql_plus_plus_query, get_index_advisor_recommendations, list_indexes, get_cluster_health_and_services, ]
- src/mcp_server.py:176-177 (registration)The MCP server registers all tools from ALL_TOOLS, including delete_document_by_id, by calling mcp.add_tool(tool) in a loop.for tool in ALL_TOOLS: mcp.add_tool(tool)
- src/tools/__init__.py:10-15 (registration)Import of the delete_document_by_id handler from kv.py into the tools package for exposure.# Key-Value tools from .kv import ( delete_document_by_id, get_document_by_id, upsert_document_by_id, )