Skip to main content
Glama

Run Bruno collection

run-collection

Execute Bruno API collections via local bru CLI, returning normalized JSON results with request details, failures, and timings; supports environments and secret inheritance.

Instructions

Run a Bruno collection with the local bru CLI and return normalized JSON with success, request summary, per-request details, failures, and execution timings. Provide collection as the collection path; optionally pass environment and non-secret variables as KEY=value strings. For secrets, pass only names through inherited_variables; values are read from the MCP server process and injected via a temporary private --env-file, never via CLI arguments. Collection paths must stay inside the configured workspace roots.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
variablesNoOptional Bruno environment variables passed as repeated `--env-var` values. Use KEY=value strings.
collectionYesPath to the Bruno collection directory, a .bru/.vru request file, or an opencollection.yml file. When opencollection.yml is provided, the server runs its parent collection directory.
environmentNoOptional Bruno environment name or environment file accepted by `bru run --env`.
inherited_variablesNoOptional names of environment variables to read from the MCP server process and inject into Bruno via a temporary private --env-file (values never appear in CLI arguments or logs). Use this for secrets so the LLM only provides variable names, never values.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.1

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does well: it discloses the security mechanism (secrets read from the MCP server process, injected via a temporary private --env-file, never through CLI arguments) and the workspace-root path restriction. It does not state side effects of actually executing requests (real network calls to target systems, possible mutation, timeouts, or failure semantics), which is a notable gap for an execution tool.

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 the action and return shape, followed by parameter and safety guidance. Four dense sentences with little waste, though the phrasing is tightly packed and could be marginally trimmed.

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?

For a 4-param execution tool with no output schema or annotations, the description covers what the tool does, its return shape, secret handling, and path constraints. It omits runtime behavior such as failure/timeout handling and whether execution is destructive to the target system, which leaves a small but real gap.

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 description coverage is 100%, so the baseline is 3. The description adds meaning beyond the schema by explaining the secret-handling protocol for `inherited_variables` and the workspace-root constraint on `collection`, which the schema does not convey.

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 ('Run a Bruno collection with the local `bru` CLI') plus the return shape ('normalized JSON with success, request summary, per-request details, failures, and execution timings'). An agent can distinguish it from the sibling run-filter-scenarios / run-full-validation tools by the explicit reference to running a whole collection.

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 conditional guidance: pass KEY=value variables normally, but for secrets pass only names via `inherited_variables`, and collection paths must stay inside configured workspace roots. It stops short of naming alternative tools (e.g. run-filter-scenarios) or stating when not to use this one, so it is context-rich but not a full routing guide.

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