UnlimitedTTS

Official registry Media and design

Quote-first, non-custodial x402 text-to-speech with spend policy, MP3 artifacts, and receipts.

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

NPM package @unlimitedtts/mcp
Claude Code
claude mcp add unlimitedtts -e 'UNLIMITEDTTS_ENVIRONMENT=production' -e 'UNLIMITEDTTS_MAX_USDC_PER_CALL=0.10' -e 'UNLIMITEDTTS_ROLLING_24H_USDC=1.00' -e 'UNLIMITEDTTS_OUTPUT_DIRECTORY=<UNLIMITEDTTS_OUTPUT_DIRECTORY>' -- npx -y @unlimitedtts/mcp@0.1.0
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "unlimitedtts": {
            "command": "npx",
            "args": [
                "-y",
                "@unlimitedtts/mcp@0.1.0"
            ],
            "env": {
                "UNLIMITEDTTS_ENVIRONMENT": "production",
                "UNLIMITEDTTS_MAX_USDC_PER_CALL": "0.10",
                "UNLIMITEDTTS_ROLLING_24H_USDC": "1.00",
                "UNLIMITEDTTS_OUTPUT_DIRECTORY": "<UNLIMITEDTTS_OUTPUT_DIRECTORY>"
            }
        }
    }
}

Environment variables

  • UNLIMITEDTTS_ENVIRONMENT Runtime environment. Defaults to production; staging explicitly selects the staging API and Base Sepolia pins.
  • UNLIMITEDTTS_MAX_USDC_PER_CALL Maximum authorized USDC amount for one synthesis.
  • UNLIMITEDTTS_ROLLING_24H_USDC Maximum committed, unknown, and reserved spend in a rolling 24-hour window.
  • UNLIMITEDTTS_OUTPUT_DIRECTORY Absolute approved directory for private MP3 artifacts and sanitized receipts.

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. UnlimitedTTS for Agents
  2. Install and build
  3. Payment flow
  4. Configuration
  5. Scope

UnlimitedTTS for Agents

Non-custodial, quote-first text-to-speech for AI agents:

  • @unlimitedtts/core validates live x402 challenges, enforces spend policy, persists sanitized receipts, and writes private MP3 artifacts.
  • @unlimitedtts/mcp exposes tts_list_voices, tts_quote, and irreversible tts_synthesize tools over stdio.
  • @unlimitedtts/openclaw bundles the MCP server and the unlimitedtts agent skill.
  • skills/unlimitedtts supports MCP-guided and direct wallet-aware HTTP workflows.

The implemented v1 path is external-signature mode. A separate wallet tool creates the x402 v2 PAYMENT-SIGNATURE; this code never accepts a seed phrase or private key.

Install and build

Node.js 20 or newer and pnpm are required.

pnpm install --frozen-lockfile
pnpm check

Run the local server from this checkout:

pnpm --filter @unlimitedtts/mcp build
node packages/mcp/dist/cli.js

Generic MCP configuration after npm publication:

{
  "mcpServers": {
    "unlimitedtts": {
      "command": "npx",
      "args": ["-y", "@unlimitedtts/mcp@0.1.0"],
      "env": {
        "UNLIMITEDTTS_MAX_USDC_PER_CALL": "0.10",
        "UNLIMITEDTTS_ROLLING_24H_USDC": "1.00",
        "UNLIMITEDTTS_OUTPUT_DIRECTORY": "/absolute/approved/output"
      }
    }
  }
}

OpenClaw local development:

pnpm --filter @unlimitedtts/openclaw build
openclaw plugins install -l ./packages/openclaw
openclaw plugins enable unlimitedtts
openclaw gateway restart
openclaw plugins inspect unlimitedtts --runtime --json
openclaw plugins doctor

Payment flow

  1. tts_list_voices retrieves /docs and /tts/voices and caches the result for five minutes.
  2. tts_quote sends the exact synthesis body to /x402/tts without payment, validates the returned PAYMENT-REQUIRED, enforces local policy, reserves rolling budget, and returns a short-lived HMAC token.
  3. A wallet signs only the returned selectedRequirement.
  4. tts_synthesize verifies the token, unchanged body hash, complete x402 v2 accepted entry, exact-EVM payee and value, then sends one paid retry.
  5. A successful call requires both audio/mpeg and PAYMENT-RESPONSE. It commits the budget, writes a sanitized receipt, atomically stores the MP3 with mode 0600, and returns structured metadata plus MCP audio/resource content.

PAYMENT_OUTCOME_UNKNOWN permanently quarantines that quote in the local ledger. The server never automatically submits or authorizes a second payment.

Configuration

Environment variableDefault
UNLIMITEDTTS_ENVIRONMENTproduction; set staging explicitly for the staging API and Base Sepolia
UNLIMITEDTTS_API_ORIGINhttps://api.unlimitedtts.com
UNLIMITEDTTS_ALLOWED_NETWORKSeip155:8453
UNLIMITEDTTS_ALLOWED_ASSETSBase USDC contract
UNLIMITEDTTS_ALLOWED_PAYEESPayee pinned from the verified 30 July 2026 release contract
UNLIMITEDTTS_MAX_USDC_PER_CALL0.10
UNLIMITEDTTS_ROLLING_24H_USDC1.00
UNLIMITEDTTS_APPROVAL_THRESHOLD_USDC0.05
UNLIMITEDTTS_REQUIRE_APPROVALfirst-payment-and-over-threshold
UNLIMITEDTTS_OUTPUT_DIRECTORY.unlimitedtts-artifacts under the server working directory
UNLIMITEDTTS_QUOTE_TOKEN_SECRETRandom per process; configure a secret for multi-instance deployments

Payee rotation must be released through trusted configuration. The server never learns an allowed payee from an untrusted challenge.

Production remains the default and is pinned to Base mainnet. For staging validation, set UNLIMITEDTTS_ENVIRONMENT=staging; this selects https://staging-api.unlimitedtts.com, Base Sepolia (eip155:84532), and staging USDC. The core rejects the staging origin, network, or asset when the environment is not explicitly staging.

Scope

This checkout implements the portable local MCP, external wallet adapter contract, agent skill, OpenClaw package, tests, and registry metadata. Hosted Streamable HTTP, temporary R2 storage, prepaid-card synthesis, and a concrete managed automatic signer are intentionally not advertised as completed v1 features.

See required and recommended upstream changes before enabling unattended automatic signing or a hosted service.

Frequently asked questions

What is UnlimitedTTS?

Quote-first, non-custodial x402 text-to-speech with spend policy, MP3 artifacts, and receipts.

How do I install UnlimitedTTS?

It runs on your machine. In Claude Code: claude mcp add unlimitedtts -e 'UNLIMITEDTTS_ENVIRONMENT=production' -e 'UNLIMITEDTTS_MAX_USDC_PER_CALL=0.10' -e 'UNLIMITEDTTS_ROLLING_24H_USDC=1.00' -e 'UNLIMITEDTTS_OUTPUT_DIRECTORY=<UNLIMITEDTTS_OUTPUT_DIRECTORY>' -- npx -y @unlimitedtts/mcp@0.1.0. For other clients, paste the JSON configuration from this page into their MCP settings.

Does UnlimitedTTS need an API key?

Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.

Is UnlimitedTTS open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains UnlimitedTTS?

It is published by sisygoboom. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.