UnlimitedTTS
Quote-first, non-custodial x402 text-to-speech with spend policy, MP3 artifacts, and receipts.
Installation
Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).
@unlimitedtts/mcpclaude 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
{
"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>"
}
}
}
}
Variables d'environnement
UNLIMITEDTTS_ENVIRONMENTRuntime environment. Defaults to production; staging explicitly selects the staging API and Base Sepolia pins.UNLIMITEDTTS_MAX_USDC_PER_CALLMaximum authorized USDC amount for one synthesis.UNLIMITEDTTS_ROLLING_24H_USDCMaximum committed, unknown, and reserved spend in a rolling 24-hour window.UNLIMITEDTTS_OUTPUT_DIRECTORYAbsolute approved directory for private MP3 artifacts and sanitized receipts.
Documentation
Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.
UnlimitedTTS for Agents
Non-custodial, quote-first text-to-speech for AI agents:
@unlimitedtts/corevalidates live x402 challenges, enforces spend policy, persists sanitized receipts, and writes private MP3 artifacts.@unlimitedtts/mcpexposestts_list_voices,tts_quote, and irreversibletts_synthesizetools over stdio.@unlimitedtts/openclawbundles the MCP server and theunlimitedttsagent skill.skills/unlimitedttssupports 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
tts_list_voicesretrieves/docsand/tts/voicesand caches the result for five minutes.tts_quotesends the exact synthesis body to/x402/ttswithout payment, validates the returnedPAYMENT-REQUIRED, enforces local policy, reserves rolling budget, and returns a short-lived HMAC token.- A wallet signs only the returned
selectedRequirement. tts_synthesizeverifies the token, unchanged body hash, complete x402 v2acceptedentry, exact-EVM payee and value, then sends one paid retry.- A successful call requires both
audio/mpegandPAYMENT-RESPONSE. It commits the budget, writes a sanitized receipt, atomically stores the MP3 with mode0600, 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 variable | Default |
|---|---|
UNLIMITEDTTS_ENVIRONMENT | production; set staging explicitly for the staging API and Base Sepolia |
UNLIMITEDTTS_API_ORIGIN | https://api.unlimitedtts.com |
UNLIMITEDTTS_ALLOWED_NETWORKS | eip155:8453 |
UNLIMITEDTTS_ALLOWED_ASSETS | Base USDC contract |
UNLIMITEDTTS_ALLOWED_PAYEES | Payee pinned from the verified 30 July 2026 release contract |
UNLIMITEDTTS_MAX_USDC_PER_CALL | 0.10 |
UNLIMITEDTTS_ROLLING_24H_USDC | 1.00 |
UNLIMITEDTTS_APPROVAL_THRESHOLD_USDC | 0.05 |
UNLIMITEDTTS_REQUIRE_APPROVAL | first-payment-and-over-threshold |
UNLIMITEDTTS_OUTPUT_DIRECTORY | .unlimitedtts-artifacts under the server working directory |
UNLIMITEDTTS_QUOTE_TOKEN_SECRET | Random 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.
Questions fréquentes
Qu'est-ce que UnlimitedTTS ?
Quote-first, non-custodial x402 text-to-speech with spend policy, MP3 artifacts, and receipts.
Comment installer UnlimitedTTS ?
Il s'exécute sur votre machine. Dans 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. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.
Faut-il une clé API pour UnlimitedTTS ?
Son entrée au registre n'indique aucune clé ni secret obligatoire. Certaines fonctions peuvent tout de même demander un compte auprès du service auquel il se connecte.
UnlimitedTTS est-il open source ?
Oui. Son code est sur GitHub sous licence MIT.
Qui maintient UnlimitedTTS ?
Il est publié par sisygoboom. AI.tn le référence sans le maintenir ni le recommander.
Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.