Woodstitch

com.woodstitchPublished by woodstitch.comv0.1.5Updated Nov 7, 2026

Paid human listeners judge TTS audio blind: pairwise preference or human-vs-AI detection.

The publisher's own server: TAP

VerifiedSTDIODesktop onlyData & AnalyticsMedia & Design

Overview

AI-generated overview

Runs paid, blinded human listening tests on text-to-speech audio and returns preference or human-vs-AI scores with confidence intervals.

What you can do
  • Learn what the studies measure and what they cost, and check account balance and spend
  • Upload local audio files or reference public URLs to get file ids
  • Create and price a pairwise-preference or human-vs-AI detection study, with a dry run that charges nothing
  • Start, monitor, cancel and list studies, then read final scores
  • Export every judgement as JSON or CSV rows, and manage or delete uploaded files
When to use it
Useful when you are choosing between TTS systems or voices and want blinded human judgements rather than automated metrics, or when you need to check whether audio sounds human. It is a paid service, so it suits teams that accept per-study spending for evaluation evidence.
Requirements
Runs locally as a Python package (Python 3.10+) launched with uvx, pipx or pip over stdio. A Woodstitch API key is required in the WOODSTITCH_API_KEY environment variable, except for the templates and pricing tools. Network access to the Woodstitch API is needed, and audio can be uploaded or supplied as public URLs.
Before you install
Starting a study spends real money from the account balance; the start tool requires the quoted total the user agreed to and the API refuses if the quote exceeds it, but the agent still needs the user's confirmation. Uploaded audio and study data go to a third party, and the API key is a billable credential. Deleting files is irreversible.

Installation

In SourceWeft

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

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

woodstitch-mcp

An MCP server for the Woodstitch API: paid human listeners judge your text-to-speech audio in blinded studies, and your agent gets a number back with a confidence interval.

Two tasks, and only two: pairwise preference (a listener hears two clips of the same text and picks one, forced choice) and human-vs-AI detection (one clip, human or AI, confidence 1–4). Not offered: MOS, CMOS, MUSHRA or any 1–5 scale.

Install

Get an API key at https://woodstitch.com/app/api-keys, then:

Claude Code

bash
claude mcp add woodstitch -e WOODSTITCH_API_KEY=ws_live_... -- uvx woodstitch-mcp

Claude Desktop / Cursor / any MCP client (mcpServers entry):

json
{  "woodstitch": {    "command": "uvx",    "args": ["woodstitch-mcp"],    "env": {"WOODSTITCH_API_KEY": "ws_live_..."}  }}

pipx run woodstitch-mcp or pip install woodstitch-mcp && woodstitch-mcp work too. Requires Python 3.10+.

Claude Code users: the Woodstitch plugin bundles this server with a skill that knows when and how to run a listening test: /plugin marketplace add woodstitch-llc/claude-plugin then /plugin install tts-human-eval@woodstitch.

Tools

ToolWhat it doesMoney
woodstitch_templatesWhat is measured and what is not (no key needed)–
woodstitch_pricingRate card and worked examples (no key needed)–
woodstitch_accountBalance and spend–
woodstitch_upload_filesUpload local audio, get file ids–
woodstitch_create_evalCreate and price a study; dry_run to price onlycharges nothing
woodstitch_start_evalStart the studyspends money
woodstitch_get_evalProgress and provisional score–
woodstitch_get_resultsFinal numbers–
woodstitch_exportEvery judgement as rows (json or csv, optionally to a file)–
woodstitch_cancel_evalStop early, pay only for work done–
woodstitch_list_evals, woodstitch_list_files, woodstitch_delete_filehousekeeping–

Safeguards built in

  • woodstitch_start_eval requires user_confirmed_amount_usd, the quoted total the user agreed to, and sends it to the API as the hard ceiling max_total_usd. If the quote is higher than what the user confirmed, the API refuses (over_max) and nothing starts. An agent cannot start a study the user has not seen the price of.
  • Every POST carries an Idempotency-Key, so a retried call never creates or starts a study twice.
  • The server's instructions tell the model that interim numbers are provisional and that stopping early on a threshold is optional stopping.

Typical session

  1. woodstitch_upload_files(["a/001.wav", "b/001.wav", ...]) or use public URLs.
  2. woodstitch_create_eval(pairs=[{"id":"001","a":"file_…","b":"file_…","passage":"001","system_a":"base","system_b":"candidate"}, …], ratings_per_pair=5) → quote, nothing charged.
  3. Show the user the total. On yes: woodstitch_start_eval(eval_id, user_confirmed_amount_usd=<total>).
  4. woodstitch_get_eval(eval_id) now and then; first judgements usually land within minutes.
  5. woodstitch_get_results(eval_id) when status is completed; woodstitch_export for the rows.

Method, listener pay and controls: https://woodstitch.com/research/methodology. Machine-readable API spec: https://woodstitch.com/openapi.json.

Development

bash
uv venv && . .venv/bin/activate && uv pip install -e .WOODSTITCH_API_KEY=ws_live_... woodstitch-mcp        # stdio server

MIT © Woodstitch LLC

Source: README.md at commit 7d77a96

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.1.5LatestNov 7, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Human integrations