Skip to main content
Glama

Set environment variable

eurobase_set_env
DestructiveIdempotent

Sets one public (non-secret) environment variable of a permitted project for its app build and runtime, creating it or replacing its value. Saving starts a redeploy of the live app release when that release reads its variables at activation (returned as redeploy); otherwise the value applies from the next deployment. A value used at build time needs a new deploy. A variable stored as a secret is refused with ENV_CHANGE_REFUSED: secret values are added and changed by the user in the Eurobase dashboard. Public values can appear in published assets. Setting the same value again changes nothing and starts no second redeploy.

Input Schema

NameRequiredDescriptionDefault
keyYes
valueYes
projectIdYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior5/5

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

Adds substantial context beyond the annotations: an explicit refusal path with error code ENV_CHANGE_REFUSED for secrets, the side effect of triggering a redeploy (surfaced as `redeploy`), the warning that public values can appear in published assets, and the no-op behavior on identical value. These consequences and the failure mode are exactly what an agent needs before invoking a destructive, open-world mutation.

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 scope are front-loaded in the first clause, and each following sentence carries a distinct behavioral fact (redeploy trigger, build-time caveat, secret refusal, idempotency). It is dense but noticeably long for a three-parameter setter; the final idempotency sentence could be folded into the redeploy sentence.

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

Completeness4/5

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

No output schema exists, and the description compensates by explaining that a redeploy outcome is returned, plus failure behavior for secrets. With only three required parameters and rich annotation coverage, the remaining gap is the unexplained `projectId` semantics and absence of any mention of listing/removing counterparts.

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 description coverage is 0%, so the description must carry parameter meaning, and it only partly does: it clarifies that `value` is public/non-secret, size-relevant in that build-time values need a new deploy, and that re-setting the same value is a no-op. It never explains `projectId` (the 'permitted project' phrase is only suggestive) or the key naming pattern enforced by the schema.

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 ('Sets one public (non-secret) environment variable of a permitted project') plus the effect scope (app build and runtime, create-or-replace). The parenthetical '(non-secret)' immediately separates it from secret management, and the create/replace semantics distinguish it from eurobase_unset_env.

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

Usage Guidelines4/5

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

Gives clear conditions: redeploy starts when the live release reads variables at activation, otherwise the value applies at next deployment, and build-time values need a new deploy. It also names the escape hatch for secrets (change them in the Eurobase dashboard). It stops short of explicitly routing to siblings like eurobase_list_env or eurobase_unset_env, so a 4 rather than a 5.

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.