Scout Intel MCP

Inteligência de negócios e mercado para agentes de IA — 7 ferramentas, 8 fontes de dados, JSON estruturado

Documentação

Scout MCP
Inteligência de Negócios e Mercado para Agentes de IA

Python 3.11+ FastMCP 3.x MIT License 6 Tools 5+ Data Sources PyPI version PyPI Downloads/month MCPize


Google para agentes de IA — em vez de páginas web, ele retorna JSON limpo e estruturado que os agentes podem analisar.

O Scout MCP dá a qualquer agente de IA acesso instantâneo a inteligência de negócios estruturada, pesquisa de mercado e análise competitiva. Ele agrega dados de DuckDuckGo, NewsAPI, Wikipedia, web scraping e perfis sociais em respostas JSON validadas por Pydantic, com detalhamento de confiança por fonte e notas de qualidade de dados.


Sumário


Instalação Rápida

Claude Desktop

Adicione ao ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "scout-mcp": {
      "command": "python",
      "args": ["-m", "scout_mcp.mcp_server"],
      "cwd": "/path/to/scout-mcp/src",
      "env": {
        "NEWS_API_KEY": "your-newsapi-key"
      }
    }
  }
}

Cursor

Adicione em Configurações do Cursor > MCP:

{
  "scout-mcp": {
    "command": "python",
    "args": ["-m", "scout_mcp.mcp_server"],
    "cwd": "/path/to/scout-mcp/src",
    "env": {
      "NEWS_API_KEY": "your-newsapi-key"
    }
  }
}

VS Code (Copilot MCP)

Adicione ao .vscode/mcp.json:

{
  "servers": {
    "scout-mcp": {
      "command": "python",
      "args": ["-m", "scout_mcp.mcp_server"],
      "cwd": "/path/to/scout-mcp/src",
      "env": {
        "NEWS_API_KEY": "your-newsapi-key"
      }
    }
  }
}

pip (self-hosted)

pip install scout-mcp
scout-mcp  # starts STDIO server for MCP clients

As 6 Ferramentas de Inteligência

#FerramentaO Que FazNível
1scout_companyInteligência estruturada sobre qualquer empresa: setor, financiamento, stack tecnológico, concorrentes, notícias, pessoas-chaveGrátis
2scout_marketPesquisa de mercado: tamanho, CAGR, principais players, tendências, impulsionadores de crescimento, riscosGrátis
3scout_competitorsAnálise de concorrentes: posicionamento, preços, pontos fortes, pontos fracos, diferenciaisGrátis
4scout_trendsAcompanhamento de tendências: análise de sentimento, principais desenvolvimentos, direção da tendência, tópicos relacionadosGrátis
5scout_productInteligência de produto: preços, avaliações, recursos, alternativas, atualizações recentesGrátis
6scout_personPesquisa de figuras públicas: papel, histórico, conquistas, perfis sociaisPro

Notas de Qualidade de Dados

Toda resposta inclui uma data_quality_grade — uma nota em letras que permite aos agentes avaliar instantaneamente a confiabilidade da inteligência:

NotaConfiançaSignificado
A+90%+Excepcional — múltiplas fontes de alta qualidade confirmadas
A80-90%Alta — forte corroboração de múltiplas fontes
B65-80%Boa — dados sólidos de fontes-chave
C45-65%Razoável — fontes limitadas, lacunas prováveis
D25-45%Baixa — dados escassos, tratar com cautela
F<25%Insuficiente — dados mínimos disponíveis

Como os Agentes Devem Usar as Notas

result = scout_company("Stripe")

if result["data_quality_grade"] in ("A+", "A"):
    # High confidence — safe to make decisions on this data
    proceed_with_analysis(result)
elif result["data_quality_grade"] == "B":
    # Good but verify key claims
    proceed_with_caveats(result)
else:
    # C/D/F — supplement with additional sources
    request_more_data(result)

Detalhamento de Confiança

Além da nota em letras, toda resposta inclui um dicionário confidence_breakdown mostrando a confiabilidade por fonte:

{
  "confidence": 0.86,
  "data_quality_grade": "A",
  "confidence_breakdown": {
    "duckduckgo": {
      "score": 0.60,
      "reason": "8 results found"
    },
    "company_website": {
      "score": 0.90,
      "reason": "scraped stripe.com, 3 data points extracted"
    },
    "wikipedia": {
      "score": 0.90,
      "reason": "page found, structured data extracted"
    },
    "newsapi": {
      "score": 0.90,
      "reason": "6 articles found"
    },
    "competitor_extraction": {
      "score": 0.80,
      "reason": "5 competitors identified"
    }
  }
}

Pesos das Fontes

Diferentes fontes carregam pesos diferentes no cálculo geral de confiança:

FontePesoPorquê
Wikipedia3xCurada, estruturada, autoritativa
NewsAPI2xJornalismo profissional e atualizado
Site da Empresa2xDados de primeira mão, mais atuais
Busca DuckDuckGo1xAmpla, mas qualidade variável
Extração de Concorrentes1xAnálise derivada
Perfis Sociais1xComplementar

Referência Completa da API

URL Base

POST /api/scout/{tool_name}

Autenticação

Envie sua chave de API via o cabeçalho X-Api-Key:

curl -X POST /api/scout/company \
  -H "X-Api-Key: your-key-here" \
  -H "Content-Type: application/json" \
  -d '{"name": "Stripe"}'

Sem chave = nível gratuito (50 requisições/dia).

Saúde e Informações

EndpointMétodoDescrição
/api/GETInformações do serviço + lista de ferramentas
/api/healthGETVerificação de saúde + status de backoff do DuckDuckGo
/api/toolsGETTodas as ferramentas com parâmetros, níveis e descrições de notas
/api/cache/statsGETEstatísticas de acerto/erro de cache
/api/cache/clearPOSTLimpar todas as respostas em cache

Endpoints das Ferramentas

POST /api/scout/company

Pesquise qualquer empresa.

ParâmetroTipoObrigatórioDescrição
namestringSimNome da empresa (ex.: "Stripe", "OpenAI")
domainstringNãoDomínio da empresa (ex.: "stripe.com"). Detectado automaticamente se omitido.

Campos da resposta: name, domain, description, industry, founded, headquarters, employee_range, funding, tech_stack, social_profiles, recent_news, top_competitors, key_people, confidence, confidence_breakdown, data_quality_grade, data_freshness, sources_used, sources_failed


POST /api/scout/market

Pesquise qualquer mercado ou setor.

ParâmetroTipoObrigatórioDescrição
querystringSimMercado a pesquisar (ex.: "SaaS de IA", "veículos elétricos")
depthstringNão"summary" (padrão) ou "detailed"

Campos da resposta: market_name, query, depth, market_size, market_size_projections, cagr, key_players, trends, growth_drivers, risks, source_links, confidence, confidence_breakdown, data_quality_grade


POST /api/scout/competitors

Encontre e analise concorrentes.

ParâmetroTipoObrigatórioDescrição
company_or_productstringSimNome da empresa ou produto (ex.: "Notion")
maxintegerNãoMáximo de concorrentes a retornar (padrão 10)

Campos da resposta: target, competitors (array de {name, domain, positioning, pricing, strengths, weaknesses, key_differentiator}), market_positioning_summary, confidence, confidence_breakdown, data_quality_grade


POST /api/scout/trends

Acompanhe tendências e sentimento.

ParâmetroTipoObrigatórioDescrição
topicstringSimTópico a acompanhar (ex.: "IA generativa")
timeframestringNão"1d", "7d" (padrão), "30d", "1y"

Campos da resposta: topic, timeframe, sentiment ({score, label}), trending_direction, key_developments, related_topics, social_buzz, confidence, confidence_breakdown, data_quality_grade


POST /api/scout/product

Obtenha inteligência sobre qualquer produto.

ParâmetroTipoObrigatórioDescrição
namestringSimNome do produto (ex.: "Slack", "Vercel")

Campos da resposta: name, category, description, pricing, ratings, features, ideal_for, alternatives, recent_updates, confidence, confidence_breakdown, data_quality_grade


POST /api/scout/person (PRO)

Pesquise uma figura pública. Requer nível Pro ou superior.

ParâmetroTipoObrigatórioDescrição
namestringSimNome da pessoa (ex.: "Sam Altman")
companystringNãoContexto da empresa (ex.: "OpenAI")

Campos da resposta: name, current_role, company, location, background_summary, social_profiles, recent_activity, notable_achievements, confidence, confidence_breakdown, data_quality_grade

Retorna HTTP 403 para usuários do nível gratuito.


Exemplos de Respostas

scout_company("Stripe")

{
  "name": "Stripe",
  "domain": "stripe.com",
  "description": "Stripe, Inc. is an Irish-American multinational financial services and software as a service company...",
  "industry": "Software & Technology",
  "founded": "2010",
  "headquarters": "San Francisco",
  "top_competitors": ["PayPal", "Adyen", "Square", "Braintree", "Checkout.com"],
  "tech_stack": ["Next.js", "React"],
  "recent_news": [
    {"headline": "Stripe launches AI billing features", "source": "TechCrunch", "date": "2026-04-08"},
    {"headline": "Stripe revenue grows 30% in 2025", "source": "Bloomberg", "date": "2026-03-15"}
  ],
  "confidence": 0.86,
  "data_quality_grade": "A",
  "confidence_breakdown": {
    "duckduckgo": {"score": 0.60, "reason": "8 results found"},
    "company_website": {"score": 0.90, "reason": "scraped stripe.com, 3 data points extracted"},
    "wikipedia": {"score": 0.90, "reason": "page found, structured data extracted"},
    "newsapi": {"score": 0.90, "reason": "6 articles found"},
    "competitor_extraction": {"score": 0.80, "reason": "5 competitors identified"}
  },
  "data_freshness": "2026-04-12T12:00:00Z"
}

scout_trends("IA generativa", timeframe="7d")

{
  "topic": "generative AI",
  "timeframe": "7d",
  "sentiment": {"score": 0.72, "label": "positive"},
  "trending_direction": "up",
  "key_developments": [
    {
      "headline": "OpenAI releases GPT-5.2 with reasoning capabilities",
      "date": "2026-04-10",
      "impact_level": "high",
      "source": "The Verge"
    }
  ],
  "related_topics": ["Large Language Models", "AI Safety", "Enterprise AI"],
  "confidence": 0.83,
  "data_quality_grade": "A",
  "confidence_breakdown": {
    "duckduckgo_news": {"score": 0.90, "reason": "10 news articles found"},
    "newsapi": {"score": 0.90, "reason": "4 articles found"},
    "web_search": {"score": 0.50, "reason": "5 web results for context"}
  }
}

scout_competitors("Notion")

{
  "target": "Notion",
  "competitors": [
    {
      "name": "Obsidian",
      "domain": "obsidian.md",
      "positioning": "Privacy-focused local-first knowledge base with Markdown",
      "strengths": ["Open source", "Free tier available", "Offline support"],
      "key_differentiator": "Local-first with plain Markdown files"
    },
    {
      "name": "Coda",
      "positioning": "All-in-one doc with app-building capabilities",
      "strengths": ["AI-powered features"],
      "key_differentiator": "Document-as-app paradigm"
    },
    {
      "name": "Logseq",
      "positioning": "Open-source outliner with bidirectional links"
    }
  ],
  "market_positioning_summary": "Found 7 competitors for Notion. Top alternatives: Obsidian, Coda, Logseq, Anytype, AppFlowy.",
  "confidence": 0.65,
  "data_quality_grade": "B",
  "confidence_breakdown": {
    "search_Notion alternative": {"score": 0.70, "reason": "8 results for 'Notion alternatives'"},
    "search_Notion vs competi": {"score": 0.60, "reason": "6 results for 'Notion vs competitors'"},
    "extraction_quality": {"score": 0.86, "reason": "7 competitors extracted and enriched"}
  }
}

Arquitetura

                      +------------------+
                      |  AI Agent        |
                      |  (Claude, etc.)  |
                      +--------+---------+
                               |
                    STDIO / SSE / REST
                               |
              +----------------+----------------+
              |          Scout MCP              |
              |  FastMCP 3.x + FastAPI REST     |
              +----------------+----------------+
              |  Cache (24h TTL, in-memory)     |
              |  Auth (API key, tier limits)     |
              |  Rate Limiter (per-key, daily)   |
              +----+--------+--------+----------+
                   |        |        |
          +--------+  +-----+--+  +--+--------+
          | DuckDuckGo| | NewsAPI | | Wikipedia |
          | (free)    | | (.org)  | | (free)    |
          +-----------+ +---------+ +-----------+
                   |                    |
          +--------+--------+  +-------+-------+
          | Web Scraper     |  | Social Profile |
          | (httpx + BS4)   |  | Detection      |
          +----------------+  +----------------+

Backoff Exponencial (DuckDuckGo)

A API gratuita do DuckDuckGo tem limites de taxa. O Scout MCP lida com isso usando backoff adaptativo:

Success  : interval = 2s (base)
Failure 1: interval = 4s
Failure 2: interval = 8s
Failure 3: interval = 16s
Failure 4: interval = 32s
Failure 5: interval = 48s (cap)
Next success: interval resets to 2s

Cada chamada também tenta novamente uma vez antes de desistir. Monitore o status de backoff em GET /api/health.

Mecanismo de Extração de Concorrentes

A extração de concorrentes usa 6 categorias de padrões regex com mais de 350 palavras de parada:

  1. Padrões VS — correspondência "X vs Y"
  2. Listas separadas por vírgula/"e" — "alternativas incluem X, Y e Z"
  3. Listas numeradas/com marcadores — "1. Asana 2. Monday 3. ClickUp"
  4. Padrões de cabeçalho — "Asana -- ferramenta de gerenciamento de projetos"
  5. Padrões contextuais — "como X" ou "tais como X"
  6. Nomes em Title Case — nomes de produtos capitalizados próximos ao contexto de concorrentes

Validadores de múltiplas palavras rejeitam: títulos de artigos, nomes com prefixo de verbo, nomes com prefixo de pronome, nomes com sufixo de função, prováveis nomes de pessoas, nomes de empresas-mãe gigantes e nomes de plataformas.


Configuração

Variáveis de Ambiente

VariávelObrigatóriaPadrãoDescrição
NEWS_API_KEYSimChave de API do NewsAPI.org (obtenha uma grátis)
SCOUT_API_KEYNãoChave de API mestre (atribui automaticamente o nível "scale")
MONGO_URLAutomáticaString de conexão MongoDB (para servidor da API REST)
DB_NAMEAutomáticaNome do banco de dados MongoDB
CORS_ORIGINSNão*Origens CORS permitidas

Configurações de Cache

As respostas são armazenadas em cache por 24 horas em memória (dict). Estatísticas de cache e endpoints de limpeza:

# Check cache stats
curl /api/cache/stats

# Clear all cache
curl -X POST /api/cache/clear

Preços e Limites de Taxa

NívelPreçoLimite DiárioFerramentasRecursos
Grátis$0/mês50 requisições5 de 6Profundidade de resumo, notas básicas
Pro$29/mês1.000 requisiçõesTodas as 6+ scout_person + relatórios de mercado detalhados
Scale$99/mês10.000 requisiçõesTodas as 6Tudo + suporte prioritário

As informações de limite de taxa estão incluídas no campo _meta de toda resposta:

{
  "_meta": {
    "tier": "free",
    "remaining": 47
  }
}

Self-Hosting

Desenvolvimento Local

# Clone and install
git clone https://github.com/your-org/scout-mcp.git
cd scout-mcp/backend
pip install -e ".[dev,server]"

# Set up environment
echo "NEWS_API_KEY=your-key" > .env

# Run MCP server (STDIO for Claude Desktop)
cd src && python -m scout_mcp.mcp_server

# Run REST API server
uvicorn server:app --host 0.0.0.0 --port 8001 --reload

# Inspect with MCP Inspector
fastmcp inspect src/scout_mcp/mcp_server.py

Executando Testes

# Test the API
curl -X POST http://localhost:8001/api/scout/company \
  -H "Content-Type: application/json" \
  -d '{"name": "OpenAI"}'

# Check health + backoff status
curl http://localhost:8001/api/health

# List all tools
curl http://localhost:8001/api/tools

Docker

FROM python:3.12-slim
WORKDIR /app
RUN apt-get update && apt-get install -y --no-install-recommends gcc libxml2-dev libxslt1-dev && rm -rf /var/lib/apt/lists/*
COPY pyproject.toml .
COPY src/ src/
RUN pip install --no-cache-dir .
EXPOSE 8001
CMD ["python", "-c", "from scout_mcp.mcp_server import mcp; mcp.run(transport='sse', port=8001)"]
# Build and run
docker build -t scout-mcp .
docker run -p 8001:8001 -e NEWS_API_KEY=your-key scout-mcp

Stack Tecnológico

ComponenteTecnologiaFinalidade
Framework MCPFastMCP 3.xRegistro de ferramentas, transporte STDIO/SSE
API RESTFastAPIEndpoints HTTP para testes
Cliente HTTPhttpxWeb scraping assíncrono
Parser HTMLBeautifulSoup4 + lxmlExtração de dados estruturados
BuscaDuckDuckGo (ddgs)Busca gratuita na web e notícias
NotíciasNewsAPI.orgArtigos de notícias profissionais
ConhecimentoAPI da WikipediaDados estruturados de contexto
ValidaçãoPydantic 2.xValidação de modelos de resposta
CacheDict em memória (TTL 24h)Cache de respostas
ServidoruvicornServidor de produção ASGI

Fontes de Dados

FonteChave de API?CustoLimite de TaxaConfiabilidade
Busca DuckDuckGoNãoGrátisLimites flexíveis (backoff)Variável
Notícias DuckDuckGoNãoGrátisLimites flexíveis (backoff)Variável
NewsAPI.orgSimNível gratuito100 req/diaAlta
API da WikipediaNãoGrátisIlimitado (educado)Muito Alta
Web Scraping (httpx)NãoGrátisLimites por siteMédia
Detecção de Perfis SociaisNãoGrátisVia DuckDuckGoVariável

Fontes Futuras (Planejadas)

  • API Crunchbase (dados de financiamento)
  • API SimilarWeb (dados de tráfego)
  • API GitHub (ferramentas para desenvolvedores)
  • API SEMrush (dados de SEO)

Contribuindo

  1. Faça um fork do repositório
  2. Crie um branch de funcionalidade: git checkout -b feature/my-feature
  3. Instale as dependências de desenvolvimento: pip install -e ".[dev]"
  4. Faça suas alterações
  5. Execute os testes: pytest
  6. Envie um pull request

Adicionando uma Nova Fonte de Dados

  1. Crie src/scout_mcp/sources/your_source.py
  2. Implemente funções assíncronas que retornam dados estruturados
  3. Adicione a fonte às ferramentas relevantes em src/scout_mcp/tools/
  4. Adicione pontuação de confiança por fonte
  5. Atualize este README

Adicionando uma Nova Ferramenta

  1. Crie src/scout_mcp/tools/your_tool.py
  2. Adicione um modelo Pydantic em models.py (inclua confidence_breakdown e data_quality_grade)
  3. Registre em mcp_server.py com @mcp.tool()
  4. Adicione o endpoint REST em server.py
  5. Atualize este README

Licença

MIT


Construído com FastMCP, httpx, BeautifulSoup4, Pydantic
Scout MCP v0.1.0


🚀 Confira também ProfitSpot MCP — inteligência DeFi cross-chain para agentes de IA. Rendimentos com pontuação de risco, simulações de Monte Carlo, rastreamento de baleias em 86 cadeias.