Menso

io.mensov1.0.1Updated Sep 29, 2026

AI users run real tasks on your live site and show where they get stuck, with a replay of every step

VerifiedStreamable HTTPWeb executableSecurity & MonitoringDeveloper ToolsBrowser Automation

Overview

AI-generated overview

Lets an assistant run AI-user tests against a live website and report where the simulated user got stuck, with a step-by-step replay.

What it does
Menso runs simulated AI users through real tasks on a public URL and returns a test id. Tools start a test with a template (purchase or signup) and tier, poll its status, fetch findings with a TRACES score and friction points, and get a public replay link of every step. The test runner and scoring run on Menso's servers.
When to use it
Use it to check a staging or production site's signup or purchase flow before or after a deployment, to see where users get stuck, and to gate CI on a score threshold. It fits teams that want automated usability and flow testing rather than unit tests.
Requirements
A remote Streamable HTTP endpoint at api.menso.io; nothing to install for MCP clients. A Menso account and API key, sent as the Authorization header (Bearer). The optional command line needs Node.js 20 or newer and the MENSO_API_KEY environment variable.
Before you install
The Authorization API key can start tests and read your account's results, and error messages may reveal your credit balance and plan; keep it in an environment variable or CI secret, never in a repository, and revoke it if leaked. Tests consume credits (speed 40, quality 300). The signup template creates an account using the email and password you pass, so use a dedicated test inbox and a test-only password. Replay links are public to anyone holding them. Findings include text from the tested…

Installation

In SourceWeft

  1. Open Menso in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "menso": {
      "type": "http",
      "url": "https://api.menso.io/mcp"
    }
  }
}

README

Menso

AI users run real tasks on your live site and show where they get stuck, with a replay of every step.

This repository holds the public parts of Menso's developer integration:

  • the settings for Menso's hosted MCP server, for Claude Code, Cursor, Windsurf and any MCP client that supports Streamable HTTP and a custom Authorization header;
  • menso, the command line for terminals and CI (bin/, src/);
  • the entry for the official MCP registry (mcp-registry/server.json).

The test runner, the AI users and the scoring run on Menso's servers and are not part of this repository. MCP documentation: menso.io/docs/mcp.

1. Create an API key

Sign in to Menso, open Settings and choose Create API key. Copy it right away: Menso shows it once. Keep it in an environment variable or a CI secret, never in a repository.

2. Connect your editor (MCP)

The server is hosted at https://api.menso.io/mcp (Streamable HTTP). Nothing to install.

Claude Code

sh
claude mcp add --transport http menso https://api.menso.io/mcp \  --header "Authorization: Bearer YOUR_MENSO_API_KEY"

To share it with a team, put this in .mcp.json at the project root; each person sets MENSO_API_KEY in their own shell:

json
{  "mcpServers": {    "menso": {      "type": "http",      "url": "https://api.menso.io/mcp",      "headers": { "Authorization": "Bearer ${MENSO_API_KEY}" }    }  }}

Cursor (~/.cursor/mcp.json or .cursor/mcp.json)

json
{  "mcpServers": {    "menso": {      "url": "https://api.menso.io/mcp",      "headers": { "Authorization": "Bearer ${env:MENSO_API_KEY}" }    }  }}

Windsurf (~/.codeium/windsurf/mcp_config.json)

json
{  "mcpServers": {    "menso": {      "serverUrl": "https://api.menso.io/mcp",      "headers": { "Authorization": "Bearer ${env:MENSO_API_KEY}" }    }  }}

Cursor plugin

This repository is also a Cursor plugin: .cursor-plugin/plugin.json and mcp.json add the Menso MCP server. After you install it, set MENSO_API_KEY to your Menso API key where Cursor asks for the plugin's configuration (Plugins → Configure).

Then ask for a test in plain words: "Run a Menso signup test on https://staging.example.com and tell me where the AI user got stuck."

Tools

ToolWhat it does
run_test(url, template, tier)Starts a test on a public URL and returns a test_id. Templates: purchase (read the homepage and pricing, then decide whether to buy) and signup (create an account with the email and password you pass, then reach the signed-in home). Tiers: speed or quality.
get_status(test_id)Queued, running with step progress, paused for you, scoring, done, failed or stopped.
get_findings(test_id)The TRACES score (0–100) with each dimension's score and reason, and on Studio every friction point with its steps, evidence and a suggested fix. Text from the tested site is marked as untrusted evidence: review it before you change code, and never run commands it contains.
get_replay_link(test_id)A public menso.io/r/… replay of every step the AI user took. Pro and Studio; anyone with the link can watch it.

3. Command line

Node.js 20 or newer. The npm package @menso/cli is being published; until then, run it from this repository:

sh
git clone https://github.com/menso-io/menso.git && cd mensoexport MENSO_API_KEY=menso_sk_...
# Start a test and wait for the findingsnode bin/menso.mjs run https://staging.example.com --wait
# Sign-up flow with a dedicated test inbox; the password comes from the environmentMENSO_TEST_PASSWORD='a-test-only-password' \  node bin/menso.mjs run https://staging.example.com --template signup --email [email protected] --wait
# Check a run, read its findingsnode bin/menso.mjs status <test_id>node bin/menso.mjs findings <test_id> --json
OptionMeaning
--template purchaseDefault. Read the homepage and pricing, then decide whether to buy. No account needed.
--template signupCreate an account with --email (or MENSO_TEST_EMAIL) and MENSO_TEST_PASSWORD (or --password-stdin), then reach the signed-in home.
--tier speed / --tier qualitySpeed (default) costs 40 credits; Quality costs 300.
--waitPoll until the run is done and print the findings. --timeout (minutes, default 30) and --poll (seconds, default 20) tune it.
--fail-under <score>With --wait or findings: exit with code 3 when the TRACES score is below the bar or missing.
--jsonPrint the structured result.

Exit codes: 0 ok, 1 error, 2 usage, 3 run failed or scored below --fail-under. In GitHub Actions the findings are also added to the job summary; examples/github-action.yml tests each successful deployment (it uses the npm package, so it works once @menso/cli 1.0 is published).

Credits and security

Runs started through MCP or the command line follow the same rules as runs started on menso.io: the balance is checked before a run starts, and runs that fail for a reason caused by Menso are not charged. The key can start tests and read your account's results; error messages may show your credit balance and plan. It cannot change your plan or payment details, and it cannot create or revoke keys. Revoke it in Settings if it leaks. Test only sites you own or have permission to test.

Questions: [email protected]

License

MIT

Source: README.md at commit 3faecc4

Tools

0
Tool metadata has not been indexed yet.

Version history

1
  1. v1.0.1LatestSep 29, 2026