Análise de Dados pela IDE Windsurf com DataSpoc MCP
Windsurf é uma IDE nativa de IA construída pela Codeium. Assim como o Cursor, ela pode se conectar a servidores MCP (Model Context Protocol). Conecte o DataSpoc Lens como servidor MCP e o assistente de IA do Windsurf ganha acesso direto ao seu data lake — pode listar tabelas, ler schemas, executar consultas SQL e responder perguntas sobre seus dados. Tudo sem sair do seu editor.
O Que Você Ganha
Após o setup, você pode digitar linguagem natural no painel de IA do Windsurf:
- “Quais tabelas temos no data lake?”
- “Mostre o schema da tabela de pedidos”
- “Qual foi a receita do mês passado?”
- “Encontre usuários que se cadastraram mas nunca compraram”
- “Crie um script Python que gera um relatório de receita mensal”
O Windsurf chama o DataSpoc Lens via MCP, obtém os dados reais e os usa para responder suas perguntas ou gerar código.
Passo 1: Instalar DataSpoc Lens
pip install dataspoc-lensConfigure seu bucket:
dataspoc-lens add-bucket s3://my-company-data --name productiondataspoc-lens tables # verify connectionPasso 2: Configurar MCP no Windsurf
Abra a configuração MCP do Windsurf. Navegue em Settings, depois MCP Servers, ou edite o arquivo de configuração diretamente:
{ "mcpServers": { "dataspoc-lens": { "command": "dataspoc-lens", "args": ["mcp"], "env": { "AWS_PROFILE": "default" } } }}No macOS/Linux, o arquivo de configuração geralmente fica em ~/.codeium/windsurf/mcp_config.json.
Se você também quer capacidades de ingestão de dados, adicione o servidor MCP do Pipe:
{ "mcpServers": { "dataspoc-lens": { "command": "dataspoc-lens", "args": ["mcp"], "env": { "AWS_PROFILE": "default" } }, "dataspoc-pipe": { "command": "dataspoc-pipe", "args": ["mcp"], "env": { "AWS_PROFILE": "default" } } }}Reinicie o Windsurf após editar a configuração.
Passo 3: Verificar a Conexão
No painel de IA do Windsurf, digite:
What tables are available in my data lake?O Windsurf chama a ferramenta list_tables via MCP e responde com algo como:
You have 8 tables available:
- raw.customers (12,450 rows)- raw.orders (89,230 rows)- raw.products (340 rows)- raw.events (1,245,600 rows)- curated.dim_customers (12,340 rows)- curated.fct_orders (87,650 rows)- gold.daily_revenue (480 rows)- gold.customer_dashboard (11,890 rows)Se você vê isso, o MCP está conectado e funcionando.
Workflow 1: Analisar Tendências de Receita
Digite no painel de IA do Windsurf:
Analyze revenue trends for Q1 2026. Show monthly breakdown and growth rate.Nos bastidores, o Windsurf:
- Chama
get_schemapara tabelas relevantes - Escreve uma consulta SQL com agregação mensal
- Chama
run_querypara executar - Formata os resultados com análise
Resposta:
Q1 2026 Revenue Analysis:
| Month | Revenue | Orders | Avg Order | MoM Growth ||----------|-----------|--------|-----------|------------|| Jan 2026 | $245,600 | 3,120 | $78.72 | -- || Feb 2026 | $268,400 | 3,450 | $77.80 | +9.3% || Mar 2026 | $312,100 | 4,010 | $77.83 | +16.3% |
Q1 Total: $826,100Average monthly growth: 12.8%
Revenue is accelerating. March saw 16.3% growth, nearly doubleJanuary's baseline. Order count is growing faster than averageorder value, suggesting new customer acquisition is driving growth.Todos os números vêm de consultas SQL reais nos seus dados reais.
Workflow 2: Encontrar Anomalias em Cadastros de Usuários
Find anomalies in user signups over the past 30 days. Flag any dayswith unusual signup counts.O Windsurf consulta os dados e responde:
I analyzed daily signups for the past 30 days. The average is 42signups/day with a standard deviation of 8.
Anomalies detected:
| Date | Signups | Z-Score | Notes ||------------|---------|---------|---------------------|| 2026-04-12 | 127 | +10.6 | 3x normal volume || 2026-04-13 | 89 | +5.9 | 2x normal, tail || 2026-04-03 | 18 | -3.0 | Weekend + holiday |
April 12-13 saw a massive spike. This correlates with a Product Huntlaunch (if relevant). The April 3 dip aligns with a weekend.Workflow 3: Criar um Relatório de Churn
Create a churn analysis report. Define churned as no order in 90 days.Show churn by plan tier and signup cohort.O Windsurf constrói o SQL, executa e apresenta:
Churn Analysis (as of 2026-04-28):
By Plan Tier:| Tier | Total | Churned | Churn Rate ||------------|-------|---------|------------|| free | 5,990 | 3,240 | 54.1% || pro | 4,120 | 824 | 20.0% || enterprise | 2,340 | 117 | 5.0% |
By Signup Cohort (monthly):| Cohort | Signups | Retained | 90-Day Retention ||----------|---------|----------|-----------------|| Jan 2026 | 1,245 | 892 | 71.6% || Feb 2026 | 1,380 | 1,048 | 75.9% || Mar 2026 | 1,520 | 1,230 | 80.9% |
Retention is improving month over month. Enterprise churn isextremely low at 5%. Focus retention efforts on free tier users.Workflow 4: Gerar Código a Partir dos Dados
O verdadeiro poder de uma integração com IDE: o Windsurf pode escrever código que usa o schema real dos seus dados.
Create a Python script that generates a weekly revenue report as aPDF using the gold.daily_revenue table.O Windsurf inspeciona o schema via MCP, depois gera um script Python com nomes de colunas corretos, imports adequados e consultas funcionais — tudo em um novo arquivo no seu editor. O código referencia nomes reais de tabelas e colunas do seu data lake porque o Windsurf consultou via MCP antes de escrever o código.
Dicas para Prompts de Dados Eficazes no Windsurf
Seja específico sobre o intervalo de tempo:
# Good"Show revenue for March 2026"
# Vague"Show recent revenue"Nomeie as tabelas se você as conhece:
# Good"Query gold.customer_dashboard for churned enterprise customers"
# Slower (Windsurf has to discover tables first)"Find churned enterprise customers"Peça o SQL também:
"What's our MRR? Show me the SQL you used."Isso permite verificar a consulta e reutilizá-la depois.
Encadeie pedidos para análises complexas:
1. "List all tables and their row counts"2. "Show the schema for raw.orders and raw.customers"3. "Now build a cohort retention analysis using those tables"Dividir análises complexas em passos dá ao Windsurf contexto para construir consultas melhores.
Peça geração de código após a análise:
1. "What does our daily revenue look like this month?"2. "Create a Python function that queries this data and returns a pandas DataFrame"3. "Add a Matplotlib chart to visualize the trend"Windsurf vs. Cursor para Análise de Dados
Ambas as IDEs suportam MCP e ambas funcionam com o DataSpoc. Veja como se comparam:
| Recurso | Windsurf | Cursor |
|---|---|---|
| Suporte MCP | Sim | Sim |
| Modelo de IA | Codeium + configurável | Configurável (Claude, GPT) |
| Fluxo de análise de dados | Painel AI + inline | Chat + Composer |
| Edição multi-arquivo | Cascade flow | Composer |
| Tier gratuito | Generoso | Limitado |
| Local config MCP | ~/.codeium/windsurf/mcp_config.json | ~/.cursor/mcp.json |
A configuração MCP é quase idêntica. Se você já usa DataSpoc MCP com Cursor, mudar para Windsurf leva 30 segundos — basta copiar a configuração do servidor.
Resolução de Problemas
Servidor MCP não conectando:
# Test the MCP server manuallydataspoc-lens mcp --test
# Check that the command is in your PATHwhich dataspoc-lensConsultas dando timeout:
# Cache frequently queried tablesdataspoc-lens cache refresh raw.ordersdataspoc-lens cache refresh raw.customersCredenciais AWS erradas:
Certifique-se de que o AWS_PROFILE na sua configuração MCP corresponde a um perfil válido em ~/.aws/credentials, ou defina credenciais explícitas:
{ "mcpServers": { "dataspoc-lens": { "command": "dataspoc-lens", "args": ["mcp"], "env": { "AWS_ACCESS_KEY_ID": "AKIA...", "AWS_SECRET_ACCESS_KEY": "...", "AWS_REGION": "us-east-1" } } }}Conecte o Windsurf ao seu data lake uma vez, e toda conversa de IA no seu IDE tem acesso a dados reais. Sem troca de contexto, sem ferramenta de BI separada, sem copiar e colar resultados de consulta. Apenas faça perguntas e obtenha respostas fundamentadas nos seus dados reais.