## Tool: `create_bucket`

Creates a bucket in a project.

The following sample demonstrates how to use `curl` to invoke the `create_bucket` MCP tool.

| Curl Request |
|---|
| ```bash curl --location 'https://storage.googleapis.com/storage/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "create_bucket", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' ``` |

## Input Schema

### CreateBucketRequest

| JSON representation |
|---|
| ``` { "projectId": string, "bucketName": string, "location": string, "uniformBucketLevelAccess": boolean } ``` |

| Fields ||
|---|---|
| `projectId` | `string` Required. |
| `bucketName` | `string` Required. The name of the bucket to create. |
| `location` | `string` Optional. The location of the bucket. Object data for objects in the bucket resides in physical storage within this region. Region names are case-insensitive (e.g., 'us-central1', 'us'). Defaults to 'us' if not specified. |
| `uniformBucketLevelAccess` | `boolean` Optional. If true, enables uniform bucket-level access on the bucket. When enabled, access checks only use bucket-level IAM policies, and Access Control Lists (ACLs) on individual objects are ignored. |

## Output Schema

Response message for CreateBucket.

### Tool Annotations

Destructive Hint: ❌ \| Idempotent Hint: ✅ \| Read Only Hint: ❌ \| Open World Hint: ✅