delete_bucket
Remove a bucket from the Memory Box MCP Server. Specify the bucket name to delete; optionally use force to delete even when it contains memories.
Instructions
Delete a bucket (empty by default, use force to delete with content)
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| bucket_name | Yes | Name of the bucket to delete | |
| force | No | Force deletion even if bucket contains memories (default: false) |
Implementation Reference
- src/index.ts:405-426 (handler)Core implementation of bucket deletion: sends HTTP DELETE request to Memory Box API endpoint `/api/v2/buckets/{bucketName}` with optional force parameter, handles errors with McpError.async deleteBucket(bucketName: string, force: boolean = false): Promise<any> { try { const response = await axios.delete( `${this.baseUrl}/api/v2/buckets/${bucketName}`, { params: { force }, headers: { "Authorization": `Bearer ${this.token}` } } ); return response.data; } catch (error) { if (axios.isAxiosError(error)) { throw new McpError( ErrorCode.InternalError, `Failed to delete bucket: ${error.response?.data?.detail || error.message}` ); } throw error; } }
- src/index.ts:799-816 (schema)Input schema definition for the delete_bucket tool, specifying required 'bucket_name' string and optional 'force' boolean.name: "delete_bucket", description: "Delete a bucket (empty by default, use force to delete with content)", inputSchema: { type: "object", properties: { bucket_name: { type: "string", description: "Name of the bucket to delete" }, force: { type: "boolean", description: "Force deletion even if bucket contains memories (default: false)" } }, required: ["bucket_name"] } }, {
- src/index.ts:1186-1203 (handler)MCP CallTool request handler case for delete_bucket: extracts and validates parameters, invokes MemoryBoxClient.deleteBucket, returns formatted success response.case "delete_bucket": { const bucketName = String(request.params.arguments?.bucket_name || ""); const force = Boolean(request.params.arguments?.force || false); if (!bucketName) { throw new McpError(ErrorCode.InvalidParams, "Bucket name is required"); } // Delete the bucket const result = await memoryBoxClient.deleteBucket(bucketName, force); return { content: [{ type: "text", text: `Bucket "${bucketName}" deleted successfully!\n\n${result.message || "The bucket has been removed."}` }] }; }