IronShard Object Storage Sandbox

Create a free sandbox object storage bucket; upload, download, list, inspect, and delete objects.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
80%
Integridad del esquema
90%
Calidad de los nombres
100%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Hallazgos (4)

  • LOWTool 'get_bucket_permissions' description lacks action verben get_bucket_permissions
  • LOWTool 'get_bucket' description lacks action verben get_bucket
  • LOWTool 'upload_object' description lacks action verben upload_object
  • LOWTool 'get_object_metadata' description lacks action verben get_object_metadata

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~2,600Tokens (definiciones de herramientas)
~3.7 KBTamaño de respuesta típico
Impacto significativo en la atención (2.03% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "agent-storage-sandbox": {
      "url": "https://agents-mcp.ironshard.ai/mcp"
    }
  }
}

Puntos de conexión remotos

https://agents-mcp.ironshard.ai/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (8)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟡create_bucket

Creates a 30-day bucket and its secret bearer token.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}

Esquema de salida

{
  "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.

Esquema de entrada

{
  "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
}

Esquema de salida

{
  "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.

Esquema de entrada

{
  "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
}

Esquema de salida

{
  "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.

Esquema de entrada

{
  "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
}

Esquema de salida

{
  "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.

Esquema de entrada

{
  "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
}

Esquema de salida

{
  "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.

Esquema de entrada

{
  "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
}

Esquema de salida

{
  "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.

Esquema de entrada

{
  "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
}

Esquema de salida

{
  "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.

Esquema de entrada

{
  "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
}

Esquema de salida

{
  "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."
}

Prompts recomendados

retrieve_data
Get details about [item] from IronShard Object Storage Sandbox
Herramientas esperadas: get_bucket_permissions
fetch_info
Fetch [information type] using IronShard Object Storage Sandbox
Herramientas esperadas: get_bucket_permissions
list_items
List all [items] available in IronShard Object Storage Sandbox
Herramientas esperadas: list_objects
browse_collection
Show me the [collection] from IronShard Object Storage Sandbox
Herramientas esperadas: list_objects
explore_workflow
List available [items], then get details for each one using IronShard Object Storage Sandbox
Herramientas esperadas: list_objectsget_bucket_permissions

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada8 herramientas
verificadoversión no registrada8 herramientas