WebVoice

io.github.supermarco74Published by GitHub account supermarco74v0.2.1Updated Oct 24, 2026

WebVoice MCP: chat, TTS, STT, translate, images. Email signup, welcome credits, optional Solana.

VerifiedSTDIODesktop onlyMedia & DesignAI & ML

Overview

AI-generated overview

Local MCP server that connects an assistant to the WebVoice REST API for chat, text-to-speech, speech-to-text, translation and image generation.

What you can do
Register and check account: send an email OTP, verify it to get an API key, view onboarding details and credit balance, list chat models and TTS voices. Generate text: chat completions with DeepSeek as the default model. Produce and process audio: text-to-speech to MP3 and transcription of a local audio file. Translate text and generate images with MiniMax.
When to use it
Useful when you want an assistant to produce spoken audio, transcribe recordings, translate text, generate images or use a hosted chat model through one WebVoice account, especially if you prefer to register and get a key from inside the assistant.
Requirements
Runs locally over stdio from the PyPI package webvoice-mcp (Python). Needs a WebVoice account and an API key in WEBVOICE_API_KEY, which is optional only until registration is verified. WEBVOICE_BASE_URL optionally overrides the API base URL. Network access to the WebVoice service is required.
Before you install
Calls are billed against WebVoice credits; when the balance is zero, calls fail. The API key is shown only once at registration or key creation. Registration sends an OTP to the email you provide. Optional top-ups involve PayPal or Solana USDC/SOL payments with a personal memo. Text, audio and prompts are sent to the WebVoice service.

Installation

In SourceWeft

  1. Open WebVoice 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

WebVoice MCP Server

Local Model Context Protocol server that exposes WebVoice REST API tools to Cursor, Claude Desktop, and other MCP clients.

Install from PyPI:

bash
pip install webvoice-mcp

From source (development)

bash
pip install -r requirements-mcp.txt# or editable install from repo root:pip install -e .

Configure Cursor

Option A — Agent registration via MCP (no browser)

  1. Add MCP without WEBVOICE_API_KEY first (or use the register tools from any client).
  2. Call webvoice_register_send_code with your email.
  3. Read the OTP from email, then webvoice_register_verify with the code.
  4. Response includes api_key (once), onboarding.credits, onboarding.can_use_api, and optional onboarding.solana (wallet + memo_code for USDC/SOL top-up).
  5. If can_use_api is true, use chat/TTS/STT immediately with welcome credits.
  6. Set WEBVOICE_API_KEY in MCP config and restart Cursor (optional Solana/PayPal top-up later).

REST equivalent: POST /api/v1/auth/send-code/ → POST /api/v1/auth/verify-code/ with create_api_key: true. See API docs.

Option B — Browser signup (human)

  1. Login — email OTP or Google (/accounts/login/). New users get welcome + daily free credits.
  2. API key — API dashboard → Create key → copy wv_… (shown once).
  3. Credits (optional) — Buy credits, Premium (PayPal), or Solana (send USDC/SOL with your personal memo from webvoice_onboarding).

When balance is zero, MCP calls fail with insufficient credits; you receive an email with a recharge link.

MCP config

Edit Cursor MCP config (~/.cursor/mcp.json or Settings → MCP):

json
{  "mcpServers": {    "webvoice": {      "command": "webvoice-mcp",      "env": {        "WEBVOICE_API_KEY": "wv_your_key_here"      }    }  }}

If webvoice-mcp is not on PATH, use Python module form:

json
{  "mcpServers": {    "webvoice": {      "command": "python",      "args": ["-m", "webvoice_mcp"],      "cwd": "/path/to/webvoice",      "env": {        "WEBVOICE_API_KEY": "wv_your_key_here"      }    }  }}

Optional: WEBVOICE_BASE_URL (default https://webvoice.easytaskflow.app/api/v1).

Tools

ToolDescription
webvoice_register_send_codeStart registration — OTP to email
webvoice_register_verifyComplete registration → API key + onboarding (credits, can_use_api)
webvoice_onboardingCredits, can_use_api, optional Solana wallet/memo, recharge URLs
webvoice_statusCredits balance
webvoice_list_chat_modelsAvailable chat models
webvoice_list_voicesTTS voices
webvoice_chatChat completions (DeepSeek default)
webvoice_ttsText-to-speech → MP3
webvoice_sttTranscribe local audio file
webvoice_translateText translation
webvoice_imageMiniMax image generation

Example agent flow

New agent (register → use → optional top-up):

  1. webvoice_register_send_code → webvoice_register_verify → save api_key.
  2. If onboarding.can_use_api: call webvoice_chat / webvoice_tts / … immediately.
  3. Optional: webvoice_onboarding → Solana memo or PayPal URLs when you need more credits.

Existing account:

  1. Ask the model to call webvoice_chat with your question.
  2. Call webvoice_tts with output_path to save spoken reply.
  3. Call webvoice_stt with a recorded audio_path for voice input.

Credits are billed on your WebVoice account per API call.

Source: README.md at commit 1bbed50

Tools

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

Version history

1
  1. v0.2.1LatestSep 16, 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