Skip to main content
Glama

Get Deploy Outputs

tfoutputs
Read-only

INSPECTION: Retrieve Terraform outputs from a completed deployment Returns structured output values (VPC IDs, endpoints, cluster names, etc.) after a successful deploy. Sensitive outputs are redacted (shown as '(sensitive)').

By default returns outputs for the latest successful deploy. Optionally specify job_id to get outputs for a specific deployment.

REQUIRES: session_id from convoopen response (format: sess_v2_...). OPTIONAL: job_id (specific deployment), lifecycle (filter by step e.g. 'cloud-provision').

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "session_id": "<session_id>"
    },
    "name": "tfoutputs"
  }
}

Input Schema

NameRequiredDescriptionDefault
job_idNoOptional. Specific job ID to fetch outputs from. When omitted, returns outputs from the latest successful apply.
lifecycleNoOptional Oracle deploy-step filter for the outputs. Common values are 'provision', 'cloud-provision', 'k8s-provision' — these correspond to the lifecycle stages of the deployed stack. When omitted, returns outputs from all lifecycle steps.
session_idYesSession ID from convoopen — pass back EXACTLY as returned, including the ?token=... suffix (format: sess_v2_*?token=*). The suffix is part of the session credential; never strip it when summarizing.

Output Schema

NameRequiredDescriptionDefault
errorNoWhy no outputs were found, when found is false.
foundNoFalse when no successful deploy with outputs was found.
hintsNoGuidance for the calling agent: what to do next and which tools relate to this result.
job_idNoID of the deploy job the outputs come from.
sourceNoWhere the outputs were read from.
session_idNoSession ID these outputs belong to.
step_outputsNoTerraform outputs, one entry per deploy lifecycle step.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "error": {
      +      "description": "Why no outputs were found, when found is false.",
      +      "type": "string"
      +    },
      +    "found": {
      +      "description": "False when no successful deploy with outputs was found.",
      +      "type": "boolean"
      +    },
      +    "hints": {
      +      "description": "Guidance for the calling agent: what to do next and which tools relate to this result.",
      +      "properties": {
      +        "next_actions": {
      +          "description": "Suggested next steps, in order, often as ready-to-run tool calls.",
      +          "items": {
      +            "description": "One suggested next step.",
      +            "type": "string"
      +          },
      +          "type": [
      +            "null",
      +            "array"
      +          ]
      +        },
      +        "related_tools": {
      +          "description": "Names of tools that are useful after this result.",
      +          "items": {
      +            "description": "A tool name.",
      +            "type": "string"
      +          },
      +          "type": [
      +            "null",
      +            "array"
      +          ]
      +        }
      +      },
      +      "type": [
      +        "null",
      +        "object"
      +      ]
      +    },
      +    "job_id": {
      +      "description": "ID of the deploy job the outputs come from.",
      +      "type": "string"
      +    },
      +    "session_id": {
      +      "description": "Session ID these outputs belong to.",
      +      "type": "string"
      +    },
      +    "source": {
      +      "description": "Where the outputs were read from.",
      +      "type": "string"
      +    },
      +    "step_outputs": {
      +      "description": "Terraform outputs, one entry per deploy lifecycle step.",
      +      "items": {
      +        "description": "Outputs of one lifecycle step.",
      +        "properties": {
      +          "lifecycle": {
      +            "description": "Lifecycle step name (for example 'cloud-provision').",
      +            "type": "string"
      +          },
      +          "outputs": {
      +            "additionalProperties": {
      +              "description": "One Terraform output.",
      +              "properties": {
      +                "sensitive": {
      +                  "description": "True when Terraform marks the output as sensitive.",
      +                  "type": "boolean"
      +                },
      +                "type": {
      +                  "description": "Terraform type of the value (a string such as 'string', or a nested type expression)."
      +                },
      +                "value": {
      +                  "description": "Output value; any JSON type. Redacted when sensitive is true."
      +                }
      +              },
      +              "type": [
      +                "null",
      +                "object"
      +              ]
      +            },
      +            "description": "Terraform outputs of the step, keyed by output name; each has value, type and sensitive.",
      +            "type": [
      +              "null",
      +              "object"
      +            ]
      +          }
      +        },
      +        "type": [
      +          "null",
      +          "object"
      +        ]
      +      },
      +      "type": [
      +        "null",
      +        "array"
      +      ]
      +    }
      +  },
      +  "type": "object"
      +}
  2. Changed4 schema fields changed
    • addedInput schema / properties / job_id / description
      Added value: +"Optional. Specific job ID to fetch outputs from. When omitted, returns outputs from the latest successful apply."
    • addedInput schema / properties / lifecycle / description
      Added value: +"Optional Oracle deploy-step filter for the outputs. Common values are 'provision', 'cloud-provision', 'k8s-provision' — these correspond to the lifecycle stages of the deployed stack. When omitted, returns outputs from all lifecycle steps."
    • addedInput schema / properties / session_id / description
      Added value: +"Session ID from convoopen — pass back EXACTLY as returned, including the ?token=... suffix (format: sess_v2_*?token=*). The suffix is part of the session credential; never strip it when summarizing."
    • addedInput schema / properties / session_id / pattern
      Added value: +"^sess_v2_[0-9A-Za-z]+\\?token=[0-9a-f]+$"
  3. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Adds real context beyond the annotations: sensitive outputs are redacted as '(sensitive)', outputs are only available after a successful deploy, and lifecycle filters restrict which step's outputs are returned. With readOnlyHint/openWorldHint already covering the safety profile, this is solid supplementary disclosure, though nothing is said about staleness or size of the returned set.

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

Conciseness3/5

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

Front-loaded with the core purpose and the redaction/default behavior, but the trailing REQUIRES/OPTIONAL block duplicates the input schema near-verbatim, and the 'INSPECTION:' prefix adds no information. Serviceable but with redundant bulk.

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?

An output schema exists so return values need not be explained, and the description covers the essentials an agent needs: prerequisite session_id, default selection behavior, filtering options, and redaction of sensitive values. Only minor gaps (failure behavior when no successful deploy exists) remain.

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 100%, so the baseline is 3. The description largely restates the schema (job_id as specific deployment, lifecycle as a step filter) and adds only the 'cloud-provision' example already present in the schema, so it contributes little new meaning despite being accurate.

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?

Specific verb+resource ('Retrieve Terraform outputs from a completed deployment') with a clear scope statement about default (latest successful deploy) versus explicit job_id. It implies but never explicitly contrasts itself with siblings like tflogs/tfstatus, which also read deployment state, so differentiation is only partial.

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?

Clear context for use: outputs come from a *completed* deployment, default selects the latest successful apply, and job_id/lifecycle narrow the scope. It also names convoopen as the source of the required session_id, giving a prerequisite chain, but it names no explicit alternative tool or exclusion.

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