Skip to main content
Glama
antideploy

antideploy-mcp

Official
by antideploy

Put the file storage's variables in .env

storage_env_to_file

Writes S3 bucket credentials and settings into a project .env file, returns only the variable names written, updates .gitignore, and keeps the secret key out of the chat.

Instructions

Write the bucket's name, endpoint, region and access key (AWS_S3_BUCKET, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_ENDPOINT_URL_S3, AWS_REGION and the spellings other S3 libraries read) into a .env file in the project directory, and return only the names of what was written. The key goes into the file and never into this conversation, so do not read the file back out to the user. These are the same variables the deployed app receives, so do not copy them into set_env. Variables already in the file are replaced, everything else is kept, and the file is added to .gitignore. The bucket has to exist first: storage_create makes it. Needs the account token that login (or https://antideploy.com/agent.md) saves on this machine: a project key cannot read the access key.

Input Schema

NameRequiredDescriptionDefault
fileNoA .env file inside the project directory. Default .env; .env.local suits Next.js.
directoryNoThe project folder. Defaults to this server's working directory.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A4.2/5.0
Behavior3/5

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

Annotations only declare openWorldHint=false, so the description must supply behavioral context — and it does: the key stays out of the conversation, existing variables are replaced, others preserved, and the file is added to .gitignore. However, nothing is said about failure modes (e.g. what happens if the bucket doesn't exist or the token is missing) or any rate/conflict behavior, so it's solid but not exhaustive.

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?

It's front-loaded with the core write action, then layers on safety and prerequisite notes; almost every clause carries information. Slightly run-on and dense, keeping it just shy of a 5.

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?

For a two-optional-param tool with no output schema, the description covers what is written, what is returned ("only the names of what was written"), side effects (.gitignore, variable replacement), and prerequisites. Nothing an agent needs to invoke it correctly is missing.

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?

Schema coverage is 100% and both parameters are fully documented in the schema (file, directory), so the description adds little parameter-level detail beyond implicitly referencing "the project directory" and .env. Baseline 3 applies when the schema does the heavy lifting.

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?

The description gives a specific verb ("Write") and enumerates the exact resource (bucket name, endpoint, region, access key) and the destination (.env file in the project directory). It clearly differs from sibling tools like set_env and database_env_to_file by targeting the storage bucket's credentials.

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?

It explicitly names what not to do (don't copy into set_env, don't read the file back to the user), gives prerequisites ("The bucket has to exist first: storage_create makes it"), and states the auth requirement (account token saved by login, and that a project key cannot read the access key). This is a complete routing and prerequisite picture.

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