Command Palette

Search for a command to run...

Home / Servers

arazzo-cli

by strefethen

arazzo-cli

CI Rust License: MIT

Execute multi-step API workflows from a YAML spec — no code generation, no glue scripts.

arazzo-cli is a standalone executor for Arazzo, the OpenAPI Initiative's spec for describing sequences of API calls as declarative workflows. Define your steps, parameters, success criteria, and control flow in YAML, then run them directly from the command line or step through them in VS Code.

Why?

Testing a sequence of API calls today means writing imperative scripts, maintaining collections, or building custom test harnesses. The Arazzo spec (part of the OpenAPI ecosystem) lets you describe these sequences declaratively — but without a runtime, the spec is just documentation.

arazzo-cli makes Arazzo specs executable: validate them, run them, trace them, and debug them interactively.

Demo

asciicast

Quick Start

git clone https://github.com/strefethen/arazzo-cli.git
cd arazzo-cli
cargo run -p arazzo-cli -- validate examples/httpbin-get.arazzo.yaml
cargo run -p arazzo-cli -- run examples/httpbin-get.arazzo.yaml get-origin

Or install it:

cargo install --path ./crates/arazzo-cli --locked
arazzo-cli validate examples/httpbin-get.arazzo.yaml
arazzo-cli run examples/httpbin-get.arazzo.yaml get-origin

Features

FeatureWhat it does
Run workflowsExecute HTTP steps, resolve expressions, evaluate success criteria, route control flow
Run single stepsExecute one step with automatic dependency resolution (--step)
Generate workflowsScaffold CRUD workflows from OpenAPI 3.x specs (generate)
Validate specsParse and structurally validate Arazzo YAML before running
Parallel executionRun independent steps concurrently with DAG-based scheduling (--parallel)
Dry-run modeResolve all requests without sending them (--dry-run)
Input validationType-check and require workflow inputs, with strict mode (--strict-inputs)
Execution tracesWrite detailed trace.v1 JSON artifacts with automatic sensitive value redaction
Deterministic replayRe-execute trace artifacts offline with response injection and drift checks (replay)
Sub-workflowsCall workflows from workflows with input/output passing (up to 10 levels deep)
VS Code debuggerSet breakpoints, step through workflows, inspect variables, evaluate expressions
JSON output--json on every command for scripting and CI integration
Expression language$inputs, $steps, $response, $env, XPath, JSON Pointer, interpolation
Arazzo 1.1 selectorsTyped JSONPath, JSON Pointer, and XPath Selector Objects across values and outputs
Success criteriaSimple expressions, regex, XPath, and JSONPath criterion types
Control flowonSuccess/onFailure actions with goto, retry (with backoff), and end
Multiple API sourcesRoute steps to different APIs via sourceDescriptions
SOAP supportExecute SOAP workflows with XPath-based success criteria
Rate limitingBuilt-in token-bucket rate limiter (10 req/sec default, configurable burst)
.env loadingAutomatic .env file loading — reference secrets as $env.VAR_NAME
Reusable components$ref to shared parameters, inputs, and action handlers via components
MCP serverExpose workflows as tools for AI agents via Model Context Protocol (serve), plus authoring

Related servers

n8n

Updated today

by n8n-io

Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.

199,260

mcp-server-git

OfficialUpdated today

by modelcontextprotocol

A Model Context Protocol server providing tools to read, search, and manipulate Git repositories programmatically via LLMs

89,176

mcp-server-fetch

OfficialUpdated today

by modelcontextprotocol

A Model Context Protocol server providing tools to fetch and convert web content for usage by LLMs

89,176

@modelcontextprotocol/server-everything

OfficialUpdated today

by modelcontextprotocol

MCP server that exercises all the features of the MCP protocol

89,176