Skip to main content
Glama
pickstar-2002

MinIO Storage MCP

get_object_info

Retrieve metadata and details for specific objects in MinIO storage buckets to inspect file properties and storage information.

Instructions

获取对象信息

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bucketNameYes存储桶名称
objectNameYes对象名称

Implementation Reference

  • Core implementation of the getObjectInfo tool handler using MinIO client's statObject method to fetch and return object metadata.
    async getObjectInfo(bucketName: string, objectName: string): Promise<ObjectInfo> {
      this.ensureConnected();
      
      const stat = await this.client!.statObject(bucketName, objectName);
      return {
        name: objectName,
        size: stat.size,
        lastModified: stat.lastModified,
        etag: stat.etag,
        contentType: stat.metaData['content-type'],
        isDir: false
      };
    }
  • MCP CallTool handler case for 'get_object_info' that validates input, invokes the minioClient handler, and formats response.
    case 'get_object_info': {
      const { bucketName, objectName } = z.object({
        bucketName: z.string(),
        objectName: z.string()
      }).parse(args);
      
      const info = await this.minioClient.getObjectInfo(bucketName, objectName);
      return {
        content: [
          {
            type: 'text',
            text: `对象信息:\n- 名称: ${info.name}\n- 大小: ${info.size} 字节\n- 最后修改: ${info.lastModified.toISOString()}\n- ETag: ${info.etag}\n- 内容类型: ${info.contentType || '未知'}`
          }
        ]
      };
  • src/index.ts:200-210 (registration)
    Tool registration entry in ListTools response defining name, description, and input schema for get_object_info.
    {
      name: 'get_object_info',
      description: '获取对象信息',
      inputSchema: {
        type: 'object',
        properties: {
          bucketName: { type: 'string', description: '存储桶名称' },
          objectName: { type: 'string', description: '对象名称' }
        },
        required: ['bucketName', 'objectName']
      }
  • Input schema definition for the get_object_info tool.
    inputSchema: {
      type: 'object',
      properties: {
        bucketName: { type: 'string', description: '存储桶名称' },
        objectName: { type: 'string', description: '对象名称' }
      },
      required: ['bucketName', 'objectName']
    }
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure but offers minimal information. It implies a read-only operation ('get'), but doesn't specify whether it requires authentication, returns metadata or content, has rate limits, or what happens if the object doesn't exist. For a tool with no annotation coverage, this is inadequate, though it doesn't contradict any annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise (three Chinese characters), but this brevity comes at the cost of under-specification rather than efficiency. It's front-loaded but lacks necessary detail, making it feel incomplete rather than optimally structured. While not verbose, it fails to provide value beyond the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (2 required parameters, no output schema, no annotations), the description is insufficient. It doesn't explain what information is returned (e.g., metadata, size, last modified), error conditions, or how it fits with sibling tools like 'list_objects'. With no annotations or output schema, the description should compensate with more behavioral and usage context, which it lacks.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage (both parameters are documented in Chinese), so the baseline score is 3. The description adds no additional parameter semantics beyond what the schema provides—it doesn't explain format expectations, constraints, or relationships between 'bucketName' and 'objectName'. The schema alone handles the parameter documentation adequately.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description '获取对象信息' (Get object information) is a tautology that essentially restates the tool name 'get_object_info' in Chinese. While it indicates the tool retrieves information about an object, it doesn't specify what type of information (metadata, properties, details) or distinguish it from sibling tools like 'list_objects' or 'download_file' that also involve object information. The purpose is vague without additional context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing a connected MinIO instance), differentiate from similar tools like 'list_objects' (which lists multiple objects) or 'download_file' (which retrieves content), or specify use cases (e.g., checking object metadata before operations). This leaves the agent without context for tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/pickstar-2002/minio-storage-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server