list_object_versions
Retrieve all versions of objects stored in an S3-compatible bucket, including previous versions when versioning is enabled, to track object history and manage storage.
Instructions
List all versions of objects in a bucket (if versioning enabled)
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| bucket | Yes | Bucket name | |
| prefix | No | Prefix to filter objects |
Implementation Reference
- src/server.ts:302-307 (handler)The MCP tool handler for 'list_object_versions' that invokes the S3 client to list object versions and returns a JSON-formatted response.async ({ bucket, prefix }) => { const versions = await this.s3Client.listObjectVersions(bucket, prefix); return { content: [{ type: "text", text: JSON.stringify(versions) }], }; }
- src/server.ts:299-301 (schema)Zod input schema defining parameters: bucket (required string) and optional prefix (string).bucket: z.string().describe("Bucket name"), prefix: z.string().optional().describe("Prefix to filter objects"), },
- src/server.ts:295-308 (registration)Registration of the 'list_object_versions' tool on the MCP server, including name, description, schema, and inline handler.this.server.tool( "list_object_versions", "List all versions of objects in a bucket (if versioning enabled)", { bucket: z.string().describe("Bucket name"), prefix: z.string().optional().describe("Prefix to filter objects"), }, async ({ bucket, prefix }) => { const versions = await this.s3Client.listObjectVersions(bucket, prefix); return { content: [{ type: "text", text: JSON.stringify(versions) }], }; } );
- src/s3Client.ts:183-189 (helper)S3Client helper method that wraps AWS SDK's ListObjectVersionsCommand to list versions in a bucket with optional prefix.async listObjectVersions(bucket: string, prefix?: string) { const command = new ListObjectVersionsCommand({ Bucket: bucket, Prefix: prefix, }); return await this.client.send(command); }