Skip to main content
Glama

Request upload URL

request_upload_url

プロビジョニングファイル 1 件分の、S3 への presigned PUT URL を発行する(ログインが必要)。ファイルが複数なら batch_request_upload_url が 1 回で N 件を発行する。 返る upload_url は HTTP PUT でファイル本体を受け付ける(有効期限 10 分)。シェルを実行できるクライアントでの例: curl --silent --show-error --fail -X PUT --upload-file <ローカルパス> ''。ファイル中身はディスクから S3 へ直接送られ、会話の出力トークンにならない。シェルを使えないクライアントでは、create_content / save_content が中身を引数で受け取る。 アップロードしたファイルは commit_uploaded_codes で構成図に取り込まれる。ADL 本体(adr)も同じ経路で送れ、commit_uploaded_codes の code_entries で is_root:true を付けると inline の adl_root が要らない。 project_id を省くと新しい project_id を採番する。同じ project_id で同じ code_id を発行し直すと、commit 時に後のものが使われる。staging はユーザ × project_id ごとに分かれ、他ユーザの project_id には発行できない(403)。 入力: code_id, lang, fmt(必須)、project_id(追記・更新時)。 出力: upload_url, content_key, project_id, expires_in。

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
fmtYesファイル形式 (json / yaml / hcl の 3 値のみ。.tf/.tfvars/.hcl→hcl、.yml→yaml)。
langYesカテゴリ。acf=CFn / tfm=Terraform / slf=Serverless / arm=ARM / gdm=GDM / cim=CIM / aro=ROS / oth=その他。【最頻出ミス】拡張子と取り違えるな。yaml/json は fmt フィールドに入れる
code_idYesプロビジョニングファイルのファイル名 (例 "main.tf" / "serverless.yml" / "template.yaml")。S3 のキーに直接使うので [A-Za-z0-9._-] のみ・最大 200 文字。
project_idNo既存プロジェクトに追記する場合のみ指定。新規作成では未指定で呼び出すと、サーバが project_id を採番して返す。同じセッションの 2 回目以降は返ってきた project_id を渡す。

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only declare it is a non-read-only, non-idempotent, non-destructive call. The description adds real behavioral facts: 10-minute URL expiry, HTTP PUT semantics, 403 when targeting another user's project_id, per-user×project_id staging, and last-write-wins when the same code_id is re-issued.

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?

Purpose and the multi-file alternative are front-loaded, and the curl invocation example is directly actionable. It is dense and long, but nearly every sentence carries distinct operational information, so little is wasted.

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

Completeness5/5

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

Covers the full lifecycle – auth requirement, URL issuance, upload mechanics, expiry, project_id handling, and the commit path – and even enumerates the return fields despite no output schema. Nothing an agent needs to call it correctly is missing.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3, but the description adds meaning beyond the schema: omitting project_id makes the server allocate a new one, later calls in a session should reuse the returned project_id, and re-issuing the same code_id overwrites at commit time. The required/optional inputs and outputs are also restated usefully.

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

Purpose5/5

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

States a specific verb and resource: issuing a presigned PUT URL to S3 for one provisioning file, with the login prerequisite noted. It explicitly distinguishes itself from the sibling batch_request_upload_url for multi-file cases, so an agent can route without opening the schema.

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

Usage Guidelines5/5

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

Names alternatives and their selecting conditions: batch_request_upload_url for N files, create_content/save_content for clients that cannot run a shell, and commit_uploaded_codes as the downstream step. It also notes is_root:true in commit_uploaded_codes for the ADL root case.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources