Skip to main content
Glama

wesioiot-mcp

MCP server para mídia MiniMax (TTS, imagem, vídeo, música) roteada pelo proxy wesioiot (api.wesioiot.top).

Tools disponíveis (7)

Tool

Função

Custo aprox.

text_to_audio

TTS (vozes PT-BR, áudio hex)

$0.10 / 1k chars

list_voices

Lista 8 vozes PT-BR disponíveis

grátis

text_to_image

Geração de imagem (image-01)

$0.02 / imagem

generate_video

Geração de vídeo (Hailuo 2.3, async)

$0.20–0.50 / vídeo

query_video_generation

Polling de job de vídeo

grátis

music_generation

Geração de música (music-3.0 padrão; music-2.6 legado)

US$ 0,15 / faixa de até 5 min, conforme tabela oficial MiniMax

query_music_generation

Polling de job legado de música

grátis

Disponibilidade: desde 2026-08-20, a MiniMax não habilita a Music API hosted para novos usuários; somente clientes pagantes elegíveis preexistentes podem continuar. Se o upstream responder HTTP 410, a tool mostra o diagnóstico, não repete a chamada e não cria áudio/task. Não há fallback automático para a API direta.

Related MCP server: mmxomni

O que é o proxy wesioiot

api.wesioiot.top é um proxy OpenAI-compatible que faz frente à API da MiniMax. Ele autentica clientes com tokens mmx-… (em vez das chaves diretas sk-cp-… da MiniMax), permitindo rate-limit por cliente, log de auditoria e controle de cota. Este MCP usa o proxy para todas as chamadas de mídia, então o mesmo token que o chat usa funciona aqui.

Instalação

1. Instalar dependências

npm install

Requer Node.js 20+.

2. Obter um token do proxy

Você precisa de uma chave mmx-… emitida pelo proxy wesioiot. Se você roda o proxy, crie a chave pelo dashboard ou direto no SQLite:

node -e "
const Database = require('better-sqlite3');
const db = new Database('/caminho/para/proxy/data/proxy.sqlite');
const k = db.prepare('SELECT key FROM api_keys WHERE label=?').get('seu-label');
console.log(k.key);
"

3. Configurar o MCP

Opção A — hermes mcp add (Hermes Agent)

printf "y\ny\n" | hermes mcp add wesioiot-mcp \
  --command node \
  --env WESIOIOT_API_KEY=mmx-... \
  --env WESIOIOT_API_HOST=https://api.wesioiot.top \
  --env WESIOIOT_MCP_BASE_PATH=/caminho/para/output \
  --args /caminho/absoluto/para/wesioiot-mcp/build/index.js

# Bug conhecido: o `hermes mcp add --env` só salva a última env var.
# Patchear as outras com:
hermes config set mcp_servers.wesioiot-mcp.env.WESIOIOT_API_KEY mmx-... --force
hermes config set mcp_servers.wesioiot-mcp.env.WESIOIOT_API_HOST https://api.wesioiot.top --force
hermes config set mcp_servers.wesioiot-mcp.enabled true --force

Opção B — Cliente MCP genérico (stdio)

Configure seu cliente para executar:

node /caminho/absoluto/para/wesioiot-mcp/build/index.js

Com as variáveis de ambiente:

Variável

Obrigatório

Padrão

Exemplo

WESIOIOT_API_KEY

✅

—

mmx-3dc90e8e...

WESIOIOT_API_HOST

❌

https://api.wesioiot.top

URL custom do proxy

WESIOIOT_MCP_BASE_PATH

❌

/tmp

~/.cache/wesioiot-mcp

4. Validar

hermes mcp test wesioiot-mcp
# Esperado: ✓ Connected (~20s) + 7 tools

Parâmetros das tools

text_to_audio

  • text (string, obrigatório) — texto a sintetizar

  • voiceId (string) — ID da voz (padrão: Portuguese_FascinatingBoy)

  • model (string) — speech-02-hd, speech-02-turbo, speech-2.6-hd, speech-2.8-turbo

  • speed (number 0.5–2.0) — velocidade da fala

  • vol (number 0.1–10.0) — volume

  • pitch (number -12 a 12) — deslocamento de tom

  • outputDirectory (string) — onde salvar o MP3 (padrão: WESIOIOT_MCP_BASE_PATH)

text_to_image

  • prompt (string, obrigatório) — descrição da imagem

  • aspectRatio (string) — 1:1, 16:9, 9:16, etc.

  • n (number) — quantidade de imagens (padrão 1)

  • outputDirectory (string) — onde salvar

generate_video

  • prompt (string, obrigatório) — descrição do vídeo

  • Retorna um taskId. Use query_video_generation para checar.

music_generation

  • lyrics (string, obrigatório) — letra da música

  • prompt (string) — descrição de gênero, instrumentos, clima e andamento

  • model — music-3.0 padrão recomendado; music-2.6 legado

  • title e style (opcionais) — incorporados ao prompt; não são enviados como campos não documentados

  • outputDirectory (string) — onde salvar

  • Envia audio_setting MP3/44.1 kHz/256 kbps e salva data.audio hexadecimal; mantém retorno assíncrono legado se houver task_id.

  • Se HTTP 410: mostra diagnóstico, não repete chamada e não cria arquivo nem inventa task_id.

Vozes PT-BR disponíveis

Portuguese_FascinatingBoy          (padrão)
Portuguese_SmartYoungGirl
Portuguese_ConfidentWoman
Portuguese_Wiselady
Portuguese_Deep-VoicedGentleman
Portuguese_Jovialman
Portuguese_ThoughtfulMan
Portuguese_Strong-WilledBoy

Arquitetura

┌──────────────┐   stdio    ┌──────────────────┐   HTTPS    ┌──────────────────┐
│  MCP client  │ ─────────▶ │  wesioiot-mcp    │ ─────────▶ │ api.wesioiot.top │
│  (Hermes AI) │   JSON-RPC │  (Node.js stdio) │   Bearer   │  (proxy)         │
└──────────────┘            └──────────────────┘   mmx-...   └────────┬─────────┘
                                                                      │ upstream
                                                                      ▼
                                                            ┌──────────────────┐
                                                            │  api.minimax.io  │
                                                            │  (MiniMax)       │
                                                            └──────────────────┘

O proxy audita cada chamada, aplica rate-limit por chave e repassa para a API upstream da MiniMax. O token mmx-… só é válido contra o proxy.

Por que um MCP separado

O pacote oficial minimax-mcp da MiniMax conecta direto no api.minimax.io com chave pessoal sk-cp-…. Este server:

  • Usa seu token do proxy (mmx-…) — mídia passa pelo mesmo pipeline de billing/auditoria do chat

  • Remove voice_clone, voice_design e play_audio (não expostos pelo proxy)

  • Mantém a mesma interface JSON-RPC / stdio, então qualquer cliente MCP-compatível funciona

Você pode rodar os dois MCPs em paralelo: minimax-mcp para clonar vozes, wesioiot-mcp para tudo que deve ser cobrado do proxy.

Licença

MIT

Related MCP Connectors

Related MCP Servers