IronShard Object Storage Sandbox
Create a free sandbox object storage bucket; upload, download, list, inspect, and delete objects.
Sollte ich dies verwenden
Qualität und Sicherheit
Befunde (4)
- LOWin get_bucket_permissions
- LOWin get_bucket
- LOWin upload_object
- LOWin get_object_metadata
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"agent-storage-sandbox": {
"url": "https://agents-mcp.ironshard.ai/mcp"
}
}
}Remote-Endpunkte
https://agents-mcp.ironshard.ai/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (8)
🟡create_bucket
Creates a 30-day bucket and its secret bearer token.
Eingabe-Schema
{
"type": "object",
"properties": {},
"additionalProperties": false
}Ausgabe-Schema
{
"type": "object",
"properties": {
"bucket_name": {
"description": "Name of the newly created bucket.",
"minLength": 1,
"type": "string"
},
"bucket_token": {
"description": "Bearer credential required with the bucket name for all other operations.",
"minLength": 1,
"type": "string"
}
},
"required": [
"bucket_name",
"bucket_token"
],
"description": "Credentials for a newly created sandbox bucket."
}🟢get_bucket_permissions(bucket_name, bucket_token)
Return currently permitted buckets and operations.
Eingabe-Schema
{
"type": "object",
"properties": {
"bucket_name": {
"description": "Bucket to operate on.",
"examples": [
"photos"
],
"minLength": 1,
"type": "string"
},
"bucket_token": {
"description": "Secret bearer token returned with the public bucket.",
"examples": [
"<bucket-token>"
],
"minLength": 1,
"type": "string"
}
},
"required": [
"bucket_name",
"bucket_token"
],
"additionalProperties": false
}Ausgabe-Schema
{
"type": "object",
"properties": {
"buckets": {
"items": {
"properties": {
"bucketRef": {
"anyOf": [
{
"description": "An existing bucket owned by the grantee's team.",
"properties": {
"type": {
"const": "existing",
"type": "string"
},
"bucketName": {
"type": "string"
}
},
"required": [
"type",
"bucketName"
],
"type": "object"
},
{
"description": "A named bucket to create while installing the policy.",
"properties": {
"type": {
"const": "provisioned",
"type": "string"
},
"bucketName": {
"type": "string"
}
},
"required": [
"type",
"bucketName"
],
"type": "object"
},
{
"description": "Buckets the credential holder may create while using the policy.",
"properties": {
"type": {
"const": "__new__",
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
]
},
"permissions": {
"items": {
"enum": [
"read",
"write",
"delete"
],
"type": "string"
},
"type": "array"
}
},
"required": [
"bucketRef",
"permissions"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"buckets"
],
"description": "What operations are allowed on which buckets"
}🟢get_bucket(bucket_name, bucket_token)
Return bucket details with storage and egress usage.
Eingabe-Schema
{
"type": "object",
"properties": {
"bucket_name": {
"description": "Bucket to operate on.",
"examples": [
"photos"
],
"minLength": 1,
"type": "string"
},
"bucket_token": {
"description": "Secret bearer token returned with the public bucket.",
"examples": [
"<bucket-token>"
],
"minLength": 1,
"type": "string"
}
},
"required": [
"bucket_name",
"bucket_token"
],
"additionalProperties": false
}Ausgabe-Schema
{
"type": "object",
"properties": {
"bucket_name": {
"description": "Bucket to operate on.",
"examples": [
"photos"
],
"minLength": 1,
"type": "string"
},
"created_at": {
"description": "UTC creation time",
"format": "date-time",
"type": "string"
},
"object_count": {
"description": "Number of objects",
"minimum": 0,
"type": "integer"
},
"versioning_enabled": {
"description": "Whether object versioning is enabled.",
"type": "boolean"
},
"storage": {
"description": "Storage quota and current usage in bytes.",
"properties": {
"quota": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"usage": {
"type": "integer"
}
},
"required": [
"quota",
"usage"
],
"type": "object"
},
"egress": {
"description": "Monthly egress quota and current UTC-calendar-month usage in bytes.",
"properties": {
"quota": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"usage": {
"type": "integer"
}
},
"required": [
"quota",
"usage"
],
"type": "object"
}
},
"required": [
"bucket_name",
"created_at",
"object_count",
"versioning_enabled",
"storage",
"egress"
],
"description": "Public bucket details including its bucket-scoped quota and usage."
}🟡upload_object(bucket_name, object_key, bucket_token)
Return a secret, short-lived PUT URL for an object up to 5 GB.
Eingabe-Schema
{
"type": "object",
"properties": {
"bucket_name": {
"description": "Bucket to operate on.",
"examples": [
"photos"
],
"minLength": 1,
"type": "string"
},
"object_key": {
"description": "Complete object key, including path-like prefixes.",
"examples": [
"data.parquet",
"reports/summary.json"
],
"minLength": 1,
"type": "string"
},
"bucket_token": {
"description": "Secret bearer token returned with the public bucket.",
"examples": [
"<bucket-token>"
],
"minLength": 1,
"type": "string"
}
},
"required": [
"bucket_name",
"object_key",
"bucket_token"
],
"additionalProperties": false
}Ausgabe-Schema
{
"type": "object",
"properties": {
"url": {
"description": "Short-lived presigned HTTPS URL containing all authorization information.",
"type": "string"
},
"http_method": {
"description": "HTTP method that must be used with the presigned URL.",
"enum": [
"GET",
"PUT"
],
"type": "string"
}
},
"required": [
"url",
"http_method"
],
"description": "A short-lived URL and the HTTP method required to use it."
}🟢download_object(bucket_name, object_key, bucket_token)
Return a secret, short-lived GET URL for an object's bytes.
Eingabe-Schema
{
"type": "object",
"properties": {
"bucket_name": {
"description": "Bucket to operate on.",
"examples": [
"photos"
],
"minLength": 1,
"type": "string"
},
"object_key": {
"description": "Complete object key, including path-like prefixes.",
"examples": [
"data.parquet",
"reports/summary.json"
],
"minLength": 1,
"type": "string"
},
"bucket_token": {
"description": "Secret bearer token returned with the public bucket.",
"examples": [
"<bucket-token>"
],
"minLength": 1,
"type": "string"
}
},
"required": [
"bucket_name",
"object_key",
"bucket_token"
],
"additionalProperties": false
}Ausgabe-Schema
{
"type": "object",
"properties": {
"url": {
"description": "Short-lived presigned HTTPS URL containing all authorization information.",
"type": "string"
},
"http_method": {
"description": "HTTP method that must be used with the presigned URL.",
"enum": [
"GET",
"PUT"
],
"type": "string"
}
},
"required": [
"url",
"http_method"
],
"description": "A short-lived URL and the HTTP method required to use it."
}🟢list_objects(bucket_name, bucket_token, prefix, recursive, page_size, ...)
List one page of objects and path-like prefixes, ordered by key.
Eingabe-Schema
{
"type": "object",
"properties": {
"bucket_name": {
"description": "Bucket to operate on.",
"examples": [
"photos"
],
"minLength": 1,
"type": "string"
},
"bucket_token": {
"description": "Secret bearer token returned with the public bucket.",
"examples": [
"<bucket-token>"
],
"minLength": 1,
"type": "string"
},
"prefix": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Only return keys beginning with this prefix.",
"examples": [
"reports/"
]
},
"recursive": {
"default": false,
"description": "True for a flat listing; false for immediate children.",
"examples": [
false
],
"type": "boolean"
},
"page_size": {
"default": 100,
"description": "Maximum objects to return, from 1 to 1000.",
"examples": [
100
],
"maximum": 1000,
"minimum": 1,
"type": "integer"
},
"page_token": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Opaque continuation token from the preceding page.",
"examples": [
"<next-page-token>"
]
}
},
"required": [
"bucket_name",
"bucket_token"
],
"additionalProperties": false
}Ausgabe-Schema
{
"type": "object",
"properties": {
"bucket_name": {
"description": "Bucket to operate on.",
"examples": [
"photos"
],
"minLength": 1,
"type": "string"
},
"objects": {
"items": {
"description": "Compact information about an object returned by a listing.",
"properties": {
"object_key": {
"description": "Complete object key, including path-like prefixes.",
"examples": [
"data.parquet",
"reports/summary.json"
],
"minLength": 1,
"type": "string"
},
"size_bytes": {
"description": "Object size in bytes.",
"minimum": 0,
"type": "integer"
},
"last_modified": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "UTC time of the most recent modification."
},
"etag": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Storage entity tag; it is not always a content checksum."
},
"version_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null
},
"content_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null
}
},
"required": [
"object_key",
"size_bytes"
],
"type": "object"
},
"type": "array"
},
"common_prefixes": {
"description": "Immediate child prefixes when recursive is false. They behave like directories, although object storage has no real directories.",
"items": {
"type": "string"
},
"type": "array"
},
"next_page_token": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Opaque token for the next page. Pass it unchanged as page_token; null means there are no more results."
}
},
"required": [
"bucket_name"
],
"description": "One page of objects and the token needed to retrieve the next page."
}🔴delete_object(bucket_name, object_key, bucket_token)
Delete an object; versioned buckets may retain older versions.
Eingabe-Schema
{
"type": "object",
"properties": {
"bucket_name": {
"description": "Bucket to operate on.",
"examples": [
"photos"
],
"minLength": 1,
"type": "string"
},
"object_key": {
"description": "Complete object key, including path-like prefixes.",
"examples": [
"data.parquet",
"reports/summary.json"
],
"minLength": 1,
"type": "string"
},
"bucket_token": {
"description": "Secret bearer token returned with the public bucket.",
"examples": [
"<bucket-token>"
],
"minLength": 1,
"type": "string"
}
},
"required": [
"bucket_name",
"object_key",
"bucket_token"
],
"additionalProperties": false
}Ausgabe-Schema
{
"type": "object",
"properties": {
"bucket_name": {
"description": "Bucket to operate on.",
"examples": [
"photos"
],
"minLength": 1,
"type": "string"
},
"object_key": {
"description": "Complete object key, including path-like prefixes.",
"examples": [
"data.parquet",
"reports/summary.json"
],
"minLength": 1,
"type": "string"
},
"deleted": {
"description": "True when the object was deleted.",
"type": "boolean"
},
"version_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null
}
},
"required": [
"bucket_name",
"object_key",
"deleted"
],
"description": "Confirmation that an object was deleted."
}🟢get_object_metadata(bucket_name, object_key, bucket_token)
Return an object's size, timestamps, ETag, content type, metadata, and tags.
Eingabe-Schema
{
"type": "object",
"properties": {
"bucket_name": {
"description": "Bucket to operate on.",
"examples": [
"photos"
],
"minLength": 1,
"type": "string"
},
"object_key": {
"description": "Complete object key, including path-like prefixes.",
"examples": [
"data.parquet",
"reports/summary.json"
],
"minLength": 1,
"type": "string"
},
"bucket_token": {
"description": "Secret bearer token returned with the public bucket.",
"examples": [
"<bucket-token>"
],
"minLength": 1,
"type": "string"
}
},
"required": [
"bucket_name",
"object_key",
"bucket_token"
],
"additionalProperties": false
}Ausgabe-Schema
{
"type": "object",
"properties": {
"object_key": {
"description": "Complete object key, including path-like prefixes.",
"examples": [
"data.parquet",
"reports/summary.json"
],
"minLength": 1,
"type": "string"
},
"size_bytes": {
"description": "Object size in bytes.",
"minimum": 0,
"type": "integer"
},
"last_modified": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "UTC time of the most recent modification."
},
"etag": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Storage entity tag; it is not always a content checksum."
},
"version_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null
},
"content_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null
},
"bucket_name": {
"description": "Bucket to operate on.",
"examples": [
"photos"
],
"minLength": 1,
"type": "string"
},
"metadata": {
"additionalProperties": {
"type": "string"
},
"description": "User-defined object metadata.",
"type": "object"
},
"tags": {
"additionalProperties": {
"type": "string"
},
"type": "object"
}
},
"required": [
"object_key",
"size_bytes",
"bucket_name"
],
"description": "Detailed metadata for one object."
}Empfohlene Prompts
get_bucket_permissionsget_bucket_permissionslist_objectslist_objectslist_objectsget_bucket_permissionsCommunity
Nachweis