generate-data-mcp
Um servidor MCP para Generate-Data.com — gere conjuntos de dados sintéticos, projete schemas a partir de linguagem natural e gerencie Projects, diretamente do seu agente.
Documentação
generate-data-mcp
Um servidor MCP para Generate-Data.com — gere conjuntos de dados sintéticos, projete esquemas a partir de linguagem natural e gerencie Projetos, diretamente do seu agente.
Wrapper HTTP leve sobre a API do Generate-Data.com. Nenhuma lógica de geração vive neste repositório — é uma interface curada e amigável para agentes sobre a coisa real: 7 ferramentas, um formato de resposta consistente, saída binária segura e validação no lado do servidor para cada entrada.
Instalação (configuração em 30 segundos)
Você precisa de uma chave de API do Generate-Data.com primeiro — crie uma em Configurações → Acesso à API em generate-data.com.
Claude Desktop / Cursor (recomendado)
Adicione isto à configuração do seu cliente MCP (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json):
{
"mcpServers": {
"generate-data": {
"command": "uvx",
"args": ["generate-data-mcp"],
"env": {
"GENERATE_DATA_API_KEY": "your-uuid-key-here"
}
}
}
}
uvx busca e executa a versão publicada mais recente sob demanda — sem etapa de instalação separada, nada para atualizar manualmente. Reinicie seu cliente e as 7 ferramentas gd_* estarão disponíveis.
Não faça commit de um arquivo de configuração contendo sua chave de API real.
uv / uvx (qualquer cliente MCP)
# run once, ad hoc:
uvx generate-data-mcp
# or install it as a persistent CLI tool:
uv tool install generate-data-mcp
pip (alternativa)
pip install generate-data-mcp
Para desenvolvimento local diretamente contra este repositório:
git clone https://github.com/ns-3e/generate-data-mcp.git
cd generate-data-mcp
pip install -e ".[dev]"
Verifique se funciona
export GENERATE_DATA_API_KEY=your-key
generate-data-mcp
Do seu cliente MCP, invoque gd_get_usage — deve retornar seu plano e contagens de chamadas. Em seguida, invoque gd_list_field_types — deve retornar o mapa de categorias.
Pronto — você está pronto para gerar dados.
Peça ao seu agente algo como "gere 50 linhas de clientes fictícios de e-commerce como CSV" e ele chamará gd_design_schema e depois gd_generate_dataset por conta própria.
Início rápido
Uma sessão típica se parece com isto — o agente encadeia ferramentas por conta própria, você apenas descreve o resultado:
- Descubra o que é possível.
gd_list_field_types— veja cada tipo de campo, agrupado por categoria. - Projete um esquema.
gd_design_schema(prompt="E-commerce customers with name, email, and signup date")— propõe um arrayfieldsa partir de inglês simples. - Gere os dados.
gd_generate_dataset(fields=..., num_rows=10, format="csv")— retorna as linhas. - Refine se necessário. Chame
gd_design_schemanovamente, desta vez passandomessages(a conversa em andamento) +current_schema(o resultado anterior) juntos — ele refina em vez de propor do zero.
Cada ferramenta retorna o mesmo envelope: {"ok": true, "summary": "...", "data": {...}} em caso de sucesso, ou {"ok": false, "error": {"code": ..., "message": ...}} em caso de falha — erros sempre dizem o que fazer em seguida, nunca um stack trace bruto.
Desenvolvimento local
{
"env": { "GENERATE_DATA_API_BASE_URL": "http://localhost:8000" }
}
Aponte para um backend Django rodando localmente em vez da API hospedada.
Migrando da v1
A v2.0.0 renomeia todas as ferramentas (mudança que quebra compatibilidade). Nome antigo → nome novo:
generate_data→gd_generate_datasetlist_field_types→gd_list_field_typesget_field_options→gd_get_field_type_optionspropose_schema→gd_design_schema(primeira chamada, semmessages/current_schema)refine_schema→gd_design_schema(passemessages+current_schemajuntos)get_api_usage→gd_get_usagelist_projects→gd_list_projects(agora paginado:limit/offset)generate_project→gd_generate_project(formatos binários agora retornados codificados em base64, não utf-8 corrompido)
Referência
Todas as 7 ferramentas, divididas por plano.
Plano gratuito
- gd_generate_dataset — Gere linhas de conjunto de dados sintéticos a partir de uma lista de campos.
format:csv,json,xml,parquetouzip(formatos binários retornam codificados em base64). - gd_list_field_types — Liste todos os tipos de campo disponíveis agrupados por categoria. Não recebe argumentos.
- gd_get_field_type_options — Obtenha o esquema de opções de configuração para um tipo de campo.
field_typedeve corresponder a^[a-z0-9_]+$. - gd_design_schema — Projete um esquema de conjunto de dados a partir de linguagem natural, ou refine um existente — uma ferramenta para tanto a primeira proposta quanto as rodadas de conversa de acompanhamento.
- gd_get_usage — Obtenha estatísticas de uso atuais da chave de API: chamadas hoje, plano, limites. Não recebe argumentos.
Plano premium
Requer uma chave de API Premium — chaves do plano gratuito recebem um erro tier_forbidden.
- gd_list_projects — Liste os Projetos do usuário, paginado (
limit/offset, padrão 20/0). - gd_generate_project — Gere todas as tabelas em um Projeto e baixe o resultado. Mesmas regras de formato/binário que
gd_generate_dataset.
Limites por plano (chave de API)
| Capacidade | Gratuito | Premium |
|---|---|---|
| Máx. linhas / solicitação | 100 | 100.000 |
| Máx. colunas | 10 | 50 |
| Formatos | CSV | CSV, JSON, XML, Parquet |
| Chamadas diárias de API | 10 | 1.000 |
Os limites são aplicados pela API Django, não por este servidor MCP.
Configuração
| Variável | Obrigatória | Padrão |
|---|---|---|
GENERATE_DATA_API_KEY | Sim | — |
GENERATE_DATA_API_BASE_URL | Não | https://api.generate-data.com |
Solução de problemas
| Sintoma | Correção |
|---|---|
GENERATE_DATA_API_KEY is required | Defina a variável de ambiente antes de iniciar o servidor |
HTTP 401 / auth_failed | Chave inválida ou desativada |
HTTP 429 / rate_limited | Limite por minuto ou diário atingido; aguarde ou faça upgrade do plano |
HTTP 403 / tier_forbidden | Plano gratuito sem acesso; faça upgrade do plano |
unsupported_format | format deve ser um de csv, json, xml, parquet, zip |
invalid_input em um tipo de campo ou ID de projeto | O valor falhou na validação do lado do servidor antes de qualquer solicitação ser enviada — verifique ortografia/tipo |
Desenvolvimento
git clone https://github.com/ns-3e/generate-data-mcp.git
cd generate-data-mcp
pip install -e ".[dev]"
pytest tests/ -v
Documentação da API
A documentação está em generate-data.com. Consulte os docstrings das ferramentas deste repositório (generate_data_mcp/server.py) para as formas autoritativas de solicitação/resposta.