Tensile latest release

Find the traffic where your API breaks.

Send requests to your API, then load-test them: see response times, error rates and the point where your server starts failing, explained in plain words.

Choose your download Free for macOS, Windows and Linux
Chart of response times while Tensile raises the traffic step by step: under the 250 ms limit up to 320 requests per second, then over it at 640, settling on a breaking point between 420 and 430

How it works

STEP 1

Send a request and check the answer

Paste a URL and press Send. Tensile shows the status, how long it took and how big the answer was.

  • Add tests once, such as "status is 2xx" or "this JSON field exists". They turn green or red on every send.
  • Every method is explained in plain words, so you know what is safe to load-test.
A GET request to /users answered with status 200 in 42 ms, and three tests passing

Swipe to see the whole screen.

STEP 2

Choose how much traffic to send

Pick how many virtual users (simulated people sending requests) and for how long. Then choose the shape of the traffic:

  • Fixed for steady load, Ramp up to add users gradually.
  • Spike for a sudden rush, Peak for a busy hour that comes and goes.
  • Set your limits, such as "slowest 5% under 500 ms" or "under 1% errors".
Load test settings: 10 virtual users for 6 seconds with the Ramp up profile selected
STEP 3

Read the result in plain words

No guessing what the numbers mean. Tensile tells you how much traffic your API handled, how long people waited, and whether it stayed inside your limits.

  • Each limit shows pass or fail, live while the test runs.
  • Every number comes with a short explanation, like "95% were faster".
Result: passed every criterion. In plain words, the API answered 860 requests per second, a typical request took 78 ms, and every request got a good answer Measurements: 860 requests, 85 ms average, p95 141 ms, 0% errors, each with a short explanation
STEP 4

Find the exact point where it breaks

Tensile doubles the traffic until your API goes over your limits, then narrows in. You get one clear number, why it broke, and how to plan.

  • See whether it broke because answers got too slow or because requests started failing.
  • A table shows what happened at every step.
Breaking point between 420 and 430 requests per second. At 430 the slowest 5% waited 340 ms, over the 250 ms limit
STEP 5

Check the MCP servers your AI tools use

MCP servers give AI assistants their tools. Tensile connects, lists every tool and checks what the server tells the AI.

  • Flags hidden instructions in tool descriptions, such as asking the AI to read your SSH keys.
  • Checks how the server accepts connections, and can load-test its tools.
MCP security checks: high risk, hidden instructions in the get_weather tool description; medium, accepts requests from any website; pass, refuses requests without credentials

Swipe to see the whole screen.

STEP 6

Chain requests into a workflow

Real users don't send one request. They sign in, open a page, then place an order. Draw that journey on a canvas, run it once to check it, then stress-test the whole thing.

  • Each step can save a value, such as a sign-in token or an order number, for the steps after it.
  • Steps run in order, at the same time, or only on success or on failure of another.
  • Workflows are short text files you can edit by hand, share and keep in git. Try a sample.
A workflow on the canvas: Start, then Login, then Create order, which leads to Get order on success or a Back off wait on failure. Below, 3 of 3 steps passed, saving authToken and orderId

Swipe to see the whole screen.

Screenshots use Tensile's built-in demo data. Everything runs on your own computer; there is no account and nothing is sent anywhere else.

Downloads

Your computer

macOS

Apple chip (M1 and newer) and Intel. The installer picks the right version for your Mac.

  1. Open Terminal: press Command-Space, type Terminal, press Return.
  2. Paste this and press Return. Tensile installs and opens, with no security warning.
curl -fsSL https://raw.githubusercontent.com/ShubhamSingh047/tensile/main/install.sh | sh
Your computer

Windows

Windows 10 and 11, 64-bit

Tensile-windows-x64-setup.exe Download for Windows
Your computer

Linux

64-bit, AppImage

Tensile-linux-x64.AppImage Download for Linux

Installing

Easiest: install from Terminal. Open the Terminal app, paste this and press Return. It picks the right version for your Mac, installs it, and opens Tensile, with no security warning:

curl -fsSL https://raw.githubusercontent.com/ShubhamSingh047/tensile/main/install.sh | sh

It needs nothing extra (no Homebrew), never asks for your password, and installs Tensile into Applications plus the tensile command into ~/.local/bin.

If you downloaded a .zip instead: Tensile is not yet notarized by Apple, so the first time you open it macOS says it "could not verify Tensile is free of malware". That is expected. To open it:

  1. Open the .zip and drag Tensile into Applications.
  2. Double-click Tensile. When the warning appears, click Done (not Move to Bin).
  3. Open System Settings, then Privacy & Security. Scroll down to the message "Tensile was blocked" and click Open Anyway.
  4. Enter your Mac password, then click Open Anyway once more. After this, Tensile opens normally.

Or skip steps 2 to 4 by running this once in Terminal after step 1:

xattr -dr com.apple.quarantine /Applications/Tensile.app

Try a workflow

Three ready-made workflows, in YAML and JSON, that run against free public practice APIs, so you can see a workflow working in under a minute. Needs Tensile 0.2.0 or newer.

  1. Download a sample below.
  2. In Tensile, find Workflows in the sidebar and click Import.
  3. Pick the file, then press Run once.

Shop: sign in to cart

Signs in, saves the token, opens the profile, searches products and your carts at the same time, then adds the first phone to a cart. 6 steps.

DummyJSON · shop-sign-in-to-cart.flow.yaml Download sample (YAML)

Blog: create, read, update, delete

Finds an author, lists their posts, reads a post and its comments side by side, then writes, edits and deletes a post. 7 steps.

JSONPlaceholder · blog-create-read-update-delete.json · also as .flow.yaml Download sample (JSON)

Retry after a failed sign-in

Signs in with a wrong password on purpose, follows the "on failure" path to wait a moment, then signs in properly and carries on.

DummyJSON · retry-after-failed-sign-in.flow.yaml Download sample (YAML)

These public services are shared by everyone, so use Run once with them, not Stress test. To stress-test a workflow, point its baseUrl at your own API.