Skip to main content
Glama
stufently

yandex-s3-mcp-ai-cli

s3_presign_get

Generate a signed GET URL for a Yandex Cloud S3 object to grant temporary download or preview access. Specify bucket, key, optional version, and expiry seconds.

Instructions

Create signed GET URL; default 3600 seconds, provider maximum is unverified.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
keyYes
bucketYes
version_idNo
expires_secondsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

C2.9/5.0
Behavior3/5

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

Annotations are absent, so the description carries the full burden, and it does disclose two real behaviors: the default expiry is 3600 seconds and the provider's maximum is unverified. What it omits is significant for a credential-issuing tool — that the returned URL grants temporary anonymous access, which credentials/permits are needed to sign, and whether the URL is reusable.

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

Conciseness4/5

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

One compact clause plus a semicolon-joined caveat; nothing is padded and the core action is front-loaded. It is terse to the point of under-specification, but that is a completeness problem rather than a verbosity one.

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?

With no annotations, no output schema, and 0% schema coverage, the description should carry more. It never states what is returned (a URL string), what expiry bounds are valid, or what permission the caller needs to sign the URL, so an agent cannot reliably invoke it without prior S3 knowledge.

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

Parameters2/5

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

Schema description coverage is 0% across 4 parameters. The description supplies a default for expires_seconds (3600) that the schema does not encode, which is genuine added value, but bucket, key, and version_id receive no explanatory text anywhere, leaving the majority of parameters undocumented.

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

Purpose4/5

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

States a specific verb and artifact: 'Create signed GET URL'. This clearly separates it from siblings like s3_get_object (which returns object bytes) and the many s3_list_* / s3_get_*_config tools. It stops short of naming the resource (an S3 object identified by bucket/key), so it isn't a 5.

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

Usage Guidelines2/5

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

No guidance on when to use presigning versus just fetching the object with s3_get_object, nor any note about handing the URL to an external party or credential requirements. The agent must infer the use case entirely.

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