MCP 服务器

IronShard Object Storage Sandbox

ai.ironshard/agent-storage-sandbox
云与基础设施 公开且可连接 MCP 2025-11-25

此 MCP 可以做什么

Provides sandbox object storage operations including bucket creation, object upload, download, listing, inspection, and deletion.

create_bucket
Create Bucket
Creates a 30-day bucket and its secret bearer token.
输入模式
{'type': 'object', 'properties': {}, 'additionalProperties': False}
输出模式
{'type': 'object', 'required': ['bucket_name', 'bucket_token'], 'properties': {'bucket_name': {'type': 'string', 'minLength': 1, 'description': 'Name of the newly created bucket.'}, 'bucket_token': {'type': 'string', 'minLength': 1, 'description': 'Bearer credential required with the bucket name for all other operations.'}}, 'description': 'Credentials for a newly created sandbox bucket.'}
delete_object
Delete Object
Delete an object; versioned buckets may retain older versions.
可能执行破坏性操作
输入模式
{'type': 'object', 'required': ['bucket_name', 'object_key', 'bucket_token'], 'properties': {'object_key': {'type': 'string', 'examples': ['data.parquet', 'reports/summary.json'], 'minLength': 1, 'description': 'Complete object key, including path-like prefixes.'}, 'bucket_name': {'type': 'string', 'examples': ['photos'], 'minLength': 1, 'description': 'Bucket to operate on.'}, 'bucket_token': {'type': 'string', 'examples': ['<bucket-token>'], 'minLength': 1, 'description': 'Secret bearer token returned with the public bucket.'}}, 'additionalProperties': False}
输出模式
{'type': 'object', 'required': ['bucket_name', 'object_key', 'deleted'], 'properties': {'deleted': {'type': 'boolean', 'description': 'True when the object was deleted.'}, 'object_key': {'type': 'string', 'examples': ['data.parquet', 'reports/summary.json'], 'minLength': 1, 'description': 'Complete object key, including path-like prefixes.'}, 'version_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'bucket_name': {'type': 'string', 'examples': ['photos'], 'minLength': 1, 'description': 'Bucket to operate on.'}}, 'description': 'Confirmation that an object was deleted.'}
download_object
Download Object
Return a secret, short-lived GET URL for an object's bytes.
只读 幂等
输入模式
{'type': 'object', 'required': ['bucket_name', 'object_key', 'bucket_token'], 'properties': {'object_key': {'type': 'string', 'examples': ['data.parquet', 'reports/summary.json'], 'minLength': 1, 'description': 'Complete object key, including path-like prefixes.'}, 'bucket_name': {'type': 'string', 'examples': ['photos'], 'minLength': 1, 'description': 'Bucket to operate on.'}, 'bucket_token': {'type': 'string', 'examples': ['<bucket-token>'], 'minLength': 1, 'description': 'Secret bearer token returned with the public bucket.'}}, 'additionalProperties': False}
输出模式
{'type': 'object', 'required': ['url', 'http_method'], 'properties': {'url': {'type': 'string', 'description': 'Short-lived presigned HTTPS URL containing all authorization information.'}, 'http_method': {'enum': ['GET', 'PUT'], 'type': 'string', 'description': 'HTTP method that must be used with the presigned URL.'}}, 'description': 'A short-lived URL and the HTTP method required to use it.'}
get_bucket
Get Bucket
Return bucket details with storage and egress usage.
只读 幂等
输入模式
{'type': 'object', 'required': ['bucket_name', 'bucket_token'], 'properties': {'bucket_name': {'type': 'string', 'examples': ['photos'], 'minLength': 1, 'description': 'Bucket to operate on.'}, 'bucket_token': {'type': 'string', 'examples': ['<bucket-token>'], 'minLength': 1, 'description': 'Secret bearer token returned with the public bucket.'}}, 'additionalProperties': False}
输出模式
{'type': 'object', 'required': ['bucket_name', 'created_at', 'object_count', 'versioning_enabled', 'storage', 'egress'], 'properties': {'egress': {'type': 'object', 'required': ['quota', 'usage'], 'properties': {'quota': {'anyOf': [{'type': 'integer'}, {'type': 'null'}]}, 'usage': {'type': 'integer'}}, 'description': 'Monthly egress quota and current UTC-calendar-month usage in bytes.'}, 'storage': {'type': 'object', 'required': ['quota', 'usage'], 'properties': {'quota': {'anyOf': [{'type': 'integer'}, {'type': 'null'}]}, 'usage': {'type': 'integer'}}, 'description': 'Storage quota and current usage in bytes.'}, 'created_at': {'type': 'string', 'format': 'date-time', 'description': 'UTC creation time'}, 'bucket_name': {'type': 'string', 'examples': ['photos'], 'minLength': 1, 'description': 'Bucket to operate on.'}, 'object_count': {'type': 'integer', 'minimum': 0, 'description': 'Number of objects'}, 'versioning_enabled': {'type': 'boolean', 'description': 'Whether object versioning is enabled.'}}, 'description': 'Public bucket details including its bucket-scoped quota and usage.'}
get_bucket_permissions
Get Bucket Permissions
Return currently permitted buckets and operations.
只读 幂等
输入模式
{'type': 'object', 'required': ['bucket_name', 'bucket_token'], 'properties': {'bucket_name': {'type': 'string', 'examples': ['photos'], 'minLength': 1, 'description': 'Bucket to operate on.'}, 'bucket_token': {'type': 'string', 'examples': ['<bucket-token>'], 'minLength': 1, 'description': 'Secret bearer token returned with the public bucket.'}}, 'additionalProperties': False}
输出模式
{'type': 'object', 'required': ['buckets'], 'properties': {'buckets': {'type': 'array', 'items': {'type': 'object', 'required': ['bucketRef', 'permissions'], 'properties': {'bucketRef': {'anyOf': [{'type': 'object', 'required': ['type', 'bucketName'], 'properties': {'type': {'type': 'string', 'const': 'existing'}, 'bucketName': {'type': 'string'}}, 'description': "An existing bucket owned by the grantee's team."}, {'type': 'object', 'required': ['type', 'bucketName'], 'properties': {'type': {'type': 'string', 'const': 'provisioned'}, 'bucketName': {'type': 'string'}}, 'description': 'A named bucket to create while installing the policy.'}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': '__new__'}}, 'description': 'Buckets the credential holder may create while using the policy.'}]}, 'permissions': {'type': 'array', 'items': {'enum': ['read', 'write', 'delete'], 'type': 'string'}}}}}}, 'description': 'What operations are allowed on which buckets'}
get_object_metadata
Get Object Metadata
Return an object's size, timestamps, ETag, content type, metadata, and tags.
只读 幂等
输入模式
{'type': 'object', 'required': ['bucket_name', 'object_key', 'bucket_token'], 'properties': {'object_key': {'type': 'string', 'examples': ['data.parquet', 'reports/summary.json'], 'minLength': 1, 'description': 'Complete object key, including path-like prefixes.'}, 'bucket_name': {'type': 'string', 'examples': ['photos'], 'minLength': 1, 'description': 'Bucket to operate on.'}, 'bucket_token': {'type': 'string', 'examples': ['<bucket-token>'], 'minLength': 1, 'description': 'Secret bearer token returned with the public bucket.'}}, 'additionalProperties': False}
输出模式
{'type': 'object', 'required': ['object_key', 'size_bytes', 'bucket_name'], 'properties': {'etag': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Storage entity tag; it is not always a content checksum.'}, 'tags': {'type': 'object', 'additionalProperties': {'type': 'string'}}, 'metadata': {'type': 'object', 'description': 'User-defined object metadata.', 'additionalProperties': {'type': 'string'}}, 'object_key': {'type': 'string', 'examples': ['data.parquet', 'reports/summary.json'], 'minLength': 1, 'description': 'Complete object key, including path-like prefixes.'}, 'size_bytes': {'type': 'integer', 'minimum': 0, 'description': 'Object size in bytes.'}, 'version_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'bucket_name': {'type': 'string', 'examples': ['photos'], 'minLength': 1, 'description': 'Bucket to operate on.'}, 'content_type': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'last_modified': {'anyOf': [{'type': 'string', 'format': 'date-time'}, {'type': 'null'}], 'default': None, 'description': 'UTC time of the most recent modification.'}}, 'description': 'Detailed metadata for one object.'}
list_objects
List Objects
List one page of objects and path-like prefixes, ordered by key.
只读 幂等
输入模式
{'type': 'object', 'required': ['bucket_name', 'bucket_token'], 'properties': {'prefix': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['reports/'], 'description': 'Only return keys beginning with this prefix.'}, 'page_size': {'type': 'integer', 'default': 100, 'maximum': 1000, 'minimum': 1, 'examples': [100], 'description': 'Maximum objects to return, from 1 to 1000.'}, 'recursive': {'type': 'boolean', 'default': False, 'examples': [False], 'description': 'True for a flat listing; false for immediate children.'}, 'page_token': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['<next-page-token>'], 'description': 'Opaque continuation token from the preceding page.'}, 'bucket_name': {'type': 'string', 'examples': ['photos'], 'minLength': 1, 'description': 'Bucket to operate on.'}, 'bucket_token': {'type': 'string', 'examples': ['<bucket-token>'], 'minLength': 1, 'description': 'Secret bearer token returned with the public bucket.'}}, 'additionalProperties': False}
输出模式
{'type': 'object', 'required': ['bucket_name'], 'properties': {'objects': {'type': 'array', 'items': {'type': 'object', 'required': ['object_key', 'size_bytes'], 'properties': {'etag': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Storage entity tag; it is not always a content checksum.'}, 'object_key': {'type': 'string', 'examples': ['data.parquet', 'reports/summary.json'], 'minLength': 1, 'description': 'Complete object key, including path-like prefixes.'}, 'size_bytes': {'type': 'integer', 'minimum': 0, 'description': 'Object size in bytes.'}, 'version_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'content_type': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None}, 'last_modified': {'anyOf': [{'type': 'string', 'format': 'date-time'}, {'type': 'null'}], 'default': None, 'description': 'UTC time of the most recent modification.'}}, 'description': 'Compact information about an object returned by a listing.'}}, 'bucket_name': {'type': 'string', 'examples': ['photos'], 'minLength': 1, 'description': 'Bucket to operate on.'}, 'common_prefixes': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Immediate child prefixes when recursive is false. They behave like directories, although object storage has no real directories.'}, 'next_page_token': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Opaque token for the next page. Pass it unchanged as page_token; null means there are no more results.'}}, 'description': 'One page of objects and the token needed to retrieve the next page.'}
upload_object
Upload Object
Return a secret, short-lived PUT URL for an object up to 5 GB.
输入模式
{'type': 'object', 'required': ['bucket_name', 'object_key', 'bucket_token'], 'properties': {'object_key': {'type': 'string', 'examples': ['data.parquet', 'reports/summary.json'], 'minLength': 1, 'description': 'Complete object key, including path-like prefixes.'}, 'bucket_name': {'type': 'string', 'examples': ['photos'], 'minLength': 1, 'description': 'Bucket to operate on.'}, 'bucket_token': {'type': 'string', 'examples': ['<bucket-token>'], 'minLength': 1, 'description': 'Secret bearer token returned with the public bucket.'}}, 'additionalProperties': False}
输出模式
{'type': 'object', 'required': ['url', 'http_method'], 'properties': {'url': {'type': 'string', 'description': 'Short-lived presigned HTTPS URL containing all authorization information.'}, 'http_method': {'enum': ['GET', 'PUT'], 'type': 'string', 'description': 'HTTP method that must be used with the presigned URL.'}}, 'description': 'A short-lived URL and the HTTP method required to use it.'}
已添加
get_object_metadata
2026年9月17日 07:57
已添加
delete_object
2026年9月17日 07:57
已添加
list_objects
2026年9月17日 07:57
已添加
download_object
2026年9月17日 07:57
已添加
upload_object
2026年9月17日 07:57
已添加
get_bucket
2026年9月17日 07:57
已添加
get_bucket_permissions
2026年9月17日 07:57
已添加
create_bucket
2026年9月17日 07:57