Skip to main content
Glama

Acquire one credential (best-effort)

run_auth_flow
Read-onlyIdempotent

Get a read-only plan for acquiring one credential on a target: the provider URL, exact non-interactive login command, and whether it already exists.

Instructions

Return the acquisition plan for one credential on a target: the provider URL, the exact non-interactive command when one exists (e.g. opencode auth login, opencode mcp auth vercel, gh auth login), and whether it is already present. Read-only and value-blind: it emits guidance and re-checks presence with one read-only probe; it does not run the commands or handle secret values. Parameter semantics: var must be an env var name returned by list_required_credentials (unknown names error); target selects the machine and its home is where the value should be written. Use it for a single credential; it does not replace that listing.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
varYesCredential env var name from list_required_credentials (e.g. OPENCODE_API_KEY).
targetYesThe machine to operate on: this host (local) or a remote host over SSH (ssh).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlNoProvider URL to open.
varYesCredential being acquired.
nextYesWhat to do next.
methodYesAcquisition method.
targetYesLabel of the target.
commandNoCommand for the agent/user to run.
presentYesWhether the credential is present now.
verifiedYesTrue when the credential is present and ready.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv4.0.1

TDQS

A4.8/5.0
Behavior5/5

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

Annotations declare readOnly/openWorld/idempotent, but the description adds substantial context beyond them: it is 'value-blind', 'does not run the commands or handle secret values', performs 'one read-only probe' to re-check presence, and errors on unknown names. This is exactly the extra behavioral disclosure the annotations cannot carry.

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?

Front-loaded with what the tool returns, then behavior, then parameter semantics, then scope. Dense but organized; a couple of clauses border on restating the sibling routing, keeping it just short of tight.

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?

Even though an output schema exists (so return values need not be explained), the definition covers return shape, mutation-free behavior, parameter sourcing and constraints, and its relationship to list_required_credentials. Nothing an agent needs to select or call it 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 the baseline is 3; the description still adds meaning by stating var must come from list_required_credentials and that unknown names error, plus that target selects the machine whose home is the write destination. Incremental value over the schema, but modest.

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 ('Return the acquisition plan for one credential on a target') and enumerates the payload (provider URL, exact non-interactive command, presence). It explicitly distinguishes itself from the sibling list_required_credentials ('Use it for a single credential; it does not replace that listing').

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 the required upstream alternative ('var must be an env var name returned by list_required_credentials') and the scope condition that selects this tool (single credential, not the listing). Explicit when-to-use and a clear boundary against the sibling.

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