beplus-ia-lab-mcp
v0.6.3
Published
MCP server for the BePlus IA-Lab — generate images, videos and audio through your BePlus account (diamonds, limits, history all enforced by the platform).
Downloads
1,141
Maintainers
Readme
BePlus IA-Lab MCP
Servidor MCP que dá ao Claude Code / Claude Desktop / Cursor acesso ao IA Lab da BePlus para gerar imagens, vídeos e áudio — passando pela sua conta da plataforma.
Diferente de chamar Gemini/BytePlus direto, toda geração roteia pelo backend da BePlus e herda automaticamente: débito de diamantes, limites por usuário, e histórico/monitoramento no admin. A chave do provider nunca toca a sua máquina.
Como funciona
Claude Code/Desktop/Cursor ──stdio──▶ beplus-ia-lab-mcp ──HTTPS (Bearer pat_…)──▶ BePlus /api/v1/mcpVocê se autentica com um Personal Access Token (PAT) gerado no painel da BePlus. O MCP só age em nome da SUA conta.
1. Gere um Personal Access Token
No app da BePlus → Configurações da conta → Tokens de acesso → Criar token. Copie o token (pat_…) — ele só aparece uma vez.
2. Configure no seu cliente
Claude Code (CLI)
claude mcp add beplus-ia-lab \
--env BEPLUS_API_TOKEN=pat_seu_token \
--env BEPLUS_API_URL=https://api.beplus.academy \
-- npx -y beplus-ia-lab-mcpClaude Desktop (claude_desktop_config.json) / Cursor (.cursor/mcp.json)
{
"mcpServers": {
"beplus-ia-lab": {
"command": "npx",
"args": ["-y", "beplus-ia-lab-mcp"],
"env": {
"BEPLUS_API_URL": "https://api.beplus.academy",
"BEPLUS_API_TOKEN": "pat_seu_token"
}
}
}
}Reinicie o cliente. Rode a tool whoami para confirmar o vínculo.
Variáveis de ambiente
| Var | Obrigatória | Default | Descrição |
|-----|-------------|---------|-----------|
| BEPLUS_API_TOKEN | ✅ | — | Seu Personal Access Token (pat_…). |
| BEPLUS_API_URL | — | https://api.beplus.academy | Origem da API BePlus. |
| BEPLUS_INLINE_IMAGES | — | 1 | 0 desativa imagens inline (só URLs). |
| BEPLUS_VERIFY_ON_START | — | 0 | 1 valida o token no startup e loga a conta (stderr). |
| BEPLUS_COST_WARN_THRESHOLD | — | — | Avisa quando o custo passa de N 💎. |
Tools
| Tool | O que faz |
|------|-----------|
| generate_image | Gera imagem (nano-banana / gpt-image-2). Bloqueante ~90s; retorna URL + imagem inline. |
| generate_video | Gera vídeo (Seedance / Kling). Aguarda ~120s; senão devolve o id pra check_generation. |
| generate_audio | Sintetiza fala (Gemini TTS, ~30 vozes, multi-locutor). Síncrono. |
| check_generation | Status de uma geração async por id. |
| cancel_generation | Cancela uma geração em fila/processamento (estorna diamantes). |
| list_models | Modelos disponíveis + preços + limites. |
| estimate_cost | Custo em diamantes antes de gerar. |
| get_balance | Saldo de diamantes. |
| whoami | Conta vinculada (link check do PAT). |
Toda geração mostra Custo: N 💎 · Saldo: M 💎.
Desenvolvimento
npm install
npm run typecheck
npm run build # gera dist/index.js (bin)
npm run dev # roda via tsx
# Smoke-test com o MCP Inspector:
BEPLUS_API_TOKEN=pat_… npx @modelcontextprotocol/inspector node dist/index.jsNotas
- stdout é o canal JSON-RPC — todo log vai pra stderr e o token nunca é logado.
- Limites, créditos e logging são enforçados pelo backend; um PAT vazado é limitado aos caps/diamantes do dono e pode ser revogado no painel.
list_modelsé a fonte de verdade em runtime; os enums do pacote podem ficar atrás quando o backend adiciona modelos.
