Rust API testing tool with YAML tests, structured JSON failures, and an MCP companion for agent-driven debugging.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
One-click editor setup isnβt available for this listing yet β we donβt have a confirmed install command, and weβd rather show nothing than point your editor at the wrong package or host. Follow the projectβs own setup instructions, linked above.
Inspect callable tools, capabilities, and parameters exposed to AI agents by Tarn.
tarn_runRun tests, returns structured JSON results
tarn_validateValidate YAML syntax without executing
tarn_listList all tests and their steps
tarn_fix_planAnalyze a Tarn JSON report and return prioritized next actions
Tarn
API tests an AI agent can write, run, and debug.
Docs Β· Get started Β· MCP integration Β· Agent loop demo
Tarn is a CLI-first API testing tool written in Rust. Tests are .tarn.yaml files. Output is structured JSON with categorized failures and remediation hints, so an agent β Claude Code, Codex, opencode, Cursor, Windsurf, pi β can write a test, run it, read what broke, and fix it without scraping logs.
When something breaks, --format json returns the same run as machine-readable data with failure_category, error_code, and the offending request/response. The tarn-mcp companion exposes a tarn_fix_plan tool that turns that report into actionable suggestions an agent can apply directly.
tarn-mcp exposes list, validate, run, and fix_plan as structured tools for Claude Code, Codex, opencode, Cursor, and Windsurf (and pi via the skill + CLI). See AI agent integrations..tarn.yaml and ships.curl | sh install, no runtime, drops into any CI image.Pre-built binaries for macOS (Intel + Apple Silicon), Linux (amd64 + arm64), and Windows (amd64 zip) are on the releases page, each with a tarn-checksums.txt for SHA-256 verification and a generated tarn.rb Homebrew formula artifact. The installer also lays down tarn-mcp and tarn-lsp when present in the archive. Set TARN_INSTALL_DIR to install elsewhere. Container path: ghcr.io/<owner>/tarn:<tag> from the release workflow. Manual verification works with shasum -a 256 -c tarn-checksums.txt.
The 60-second path:
Layer on the flags you actually need:
Default to the failures-first loop β it keeps agents and humans off the megabyte-scale full report until they actually need it:
tarn failures groups by root-cause fingerprint and collapses skipped_due_to_failed_capture cascades into their upstream entry β one failing step with five downstream skips surfaces as one entry with cascades: 5, not six. tarn inspect supports run-id aliases last / latest / @latest / prev and drills into one record via FILE[::TEST[::STEP]]. tarn rerun --failed stamps rerun_source onto the new report. tarn diff prev last buckets failure fingerprints into new / fixed / persistent so you can confirm a patch without re-reading the full report.
Reach for .tarn/runs/<run_id>/report.json only when failures + inspect cannot answer the question. See plugin/skills/tarn-api-testing/SKILL.md (Failures-First Loop) and docs/TROUBLESHOOTING.md for the canonical agent-facing guidance, including a worked example of a mutation endpoint whose response shape changed from {"uuid": "..."} to {"request": {"uuid": "..."}} and the $.uuid β $.request.uuid fix.
A fully local demo with no external network dependency:
More local scenarios β redirects, cookies, forms, error responses, authenticated CRUD β live in examples/demo-server/.
Full guides, CLI reference, AI workflow walkthroughs, and editor setup live on the docs site:
https://nazarkalytiuk.github.io/tarn/
In-repo docs to start with:
docs/INDEX.md β canonical map of all in-repo docsdocs/AI_WORKFLOW_DEMO.md β end-to-end agent loop walkthroughdocs/MCP_WORKFLOW.md β MCP server usage patternsdocs/TARN_PRODUCT_STRATEGY.md β product directiondocs/TARN_VS_HURL_COMPARISON.md and docs/HURL_MIGRATION.md β comparison and migrationdocs/TARN_LSP.md β tarn-lsp Language Server (LSP 3.17) for Neovim, Helix, Zed, and other compatible clientsdocs/VSCODE_EXTENSION.md β VS Code extension in editors/vscodeeditors/zed/README.md β Zed extension, published via zed-industries/extensionsThe reference sections below mirror what's on the docs site β useful when reading on GitHub directly.
Tarn drives any agent that speaks MCP or has a shell. tarn-mcp exposes list / validate / run / fix_plan (plus the failures-first tools); the tarn-api-testing skill teaches the loop. This table is the canonical supported-agents list β per-agent setup kits live under editors/.
| Agent | How Tarn plugs in | Setup |
|---|---|---|
| Claude Code | tarn-mcp + skill plugin, plus the tarn-lsp plugin | marketplace Β· editors/claude-code/tarn-lsp-plugin |
| OpenAI Codex | tarn-mcp (codex mcp add) + .agents/skills/ skill + AGENTS.md | editors/codex |
| opencode | tarn-mcp + tarn-lsp + skill via opencode.jsonc | editors/opencode |
| pi | tarn-api-testing skill + tarn CLI (no native MCP; optional MCP via adapter) | editors/pi |
| Cursor | tarn-mcp via .cursor/mcp.json | MCP setup |
| Windsurf | tarn-mcp via .windsurf/mcp.json | MCP setup |
| Neovim / Helix / Zed / VS Code | tarn-lsp language server | docs/TARN_LSP.md |
A reproducible write β run β read-failure β fix loop for any of these lives in examples/agent-loop/.
Factual signals from GitHub, npm, and our automated checks β not a rating.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/nazarkalytiuk-tarn)<a href="https://allmcps.com/mcp/nazarkalytiuk-tarn"><img src="https://allmcps.com/api/badge/nazarkalytiuk-tarn?style=directory" alt="Tarn on AllMCPs" /></a>