Equibles

Dados de mercado dos EUA auto-hospedados para agentes de IA a partir de fontes regulatórias primárias: arquivos da SEC com busca de texto completo e semântica, fundamentos XBRL, participações institucionais 13F, negociações de insiders e do Congresso, juros de venda a descoberto, macro da FRED e preços diários.

Documentação

Equibles

CI CodeQL codecov License: AGPL-3.0 .NET Docker Self-Hosted MCP

Equibles é um servidor MCP de dados financeiros open-source e auto-hospedado — uma alternativa open-source a um Bloomberg Terminal, construído para agentes de IA em vez de humanos. Ele coleta, armazena e serve arquivos SEC e dados financeiros XBRL, participações institucionais 13F, negociações de insiders e do congresso, dados de vendas a descoberto FINRA/SEC, indicadores econômicos FRED, posicionamento CFTC e CBOE, arquivos de fundos, contratos governamentais e preços diários de ações — e expõe tudo isso através do Model Context Protocol, para que Claude, ChatGPT, Cursor ou qualquer agente possa consultá-lo diretamente. Roda no seu próprio hardware com Docker, gratuitamente, para sempre.

Este é o núcleo open-source do Equibles. O Equibles Cloud executa exatamente este núcleo e adiciona mais ferramentas por cima — transcrições e áudio de calls de resultados, cotações em tempo real, cadeias de opções com Gregos, KPIs e guidance extraídos por LLM, recompra de ações, arquivos de IPO, mudanças executivas, múltiplos de valuation, composição de índices, acompanhamento de portfólio e um screener completo do mercado dos EUA. Mesmo protocolo, mesmos nomes de ferramentas, nada para rodar — veja o que está incluído.

Não quer rodar nada? Aponte seu assistente de IA para https://mcp.equibles.com/mcp e obtenha uma chave de API gratuita em equibles.com/mcp — 100 requisições/dia, sem cartão. Guias de configuração por cliente estão em daniel3303/stock-market-mcp-server.

Veja docs/ para o guia do usuário e documentação técnica.

O Que Está Incluído

Tudo marcado como Auto-hospedado é coletado, armazenado e servido por este repositório — 62 ferramentas MCP, sem conta, sem chave. O Equibles Cloud executa exatamente este núcleo através do mesmo protocolo com os mesmos nomes de ferramentas, e adiciona mais ferramentas por cima.

DomínioFonte de DadosAuto-hospedadoEquibles CloudDescrição
Arquivos SECSEC EDGAR✅✅Relatórios anuais/trimestrais/atuais 10-K, 10-Q, 8-K com busca em texto completo
Demonstrações FinanceirasSEC XBRL✅✅Demonstração de resultados, balanço patrimonial e fluxo de caixa analisados por período fiscal
ParticipaçõesSEC 13F-HR✅✅Propriedade institucional — quem possui o quê, quanto e a tendência ao longo do tempo
Arquivos de FundosSEC NPORT / N-CEN / Form D✅✅Participações de portfólio de fundos, operações de fundos registrados (provedores de serviços) e ofertas isentas (colocações privadas)
Consultores de InvestimentoSEC Form ADV✅✅Consultores registrados na SEC — ativos sob gestão, escritório principal, número de funcionários, estrutura de taxas
Negociação de InsidersSEC Forms 3/4/5/144✅✅Transações de diretores, executivos e proprietários de 10%, declarações anuais de propriedade e vendas propostas (Form 144)
Negociação do CongressoDivulgações da Câmara/Senado✅✅Transações de valores mobiliários por membros do Congresso, incluindo a ação, opção, título ou outro instrumento arquivado
Dados de Vendas a DescobertoSEC / FINRA✅✅Falhas na entrega (SEC), volume diário de vendas a descoberto e juros a descoberto (FINRA)
Indicadores EconômicosFRED (Federal Reserve)✅✅Taxas de juros, inflação, emprego, PIB, spreads de rendimento e mais
Preços de AçõesYahoo Finance✅✅Preços diários OHLCV com indicadores técnicos (SMA, RSI, MACD)
Listagens EuropeiasESMA/FCA FIRDS + diretórios de bolsas✅✅Listagens de ações verificadas na Euronext (Paris, Amsterdã, Bruxelas, Dublin, Oslo, Milão, Lisboa), Xetra, Nasdaq Estocolmo, Helsinque e Copenhague (mercado principal e First North), BME e GPW, identificadas por ISIN e local, com preços diários na moeda da própria listagem; todo mercado com adaptador de diretório roda automaticamente; sem ferramentas MCP ainda (veja docs/equity-identity.md)
Posicionamento de FuturosCFTC✅✅Dados de Compromissos dos Traders (COT) para mais de 30 contratos futuros
Indicadores de MercadoCBOE✅✅Índice de volatilidade VIX (1990+) e índices de opções de compra/venda por categoria
Contratos GovernamentaisUSAspending.gov✅✅Prêmios de contratos federais para empresas públicas — valores, agências concedentes, datas e códigos NAICS/PSC
Catalisadores FDAFDA.gov✅✅Calendário de reuniões do comitê consultivo (AdComm) — datas programadas do painel da FDA, centro e título que atuam como catalisadores regulatórios para ações de biotecnologia/farmacêuticas
Transcrições de Calls de ResultadosWebcasts de empresas—✅Transcrições completas de calls trimestrais com atribuição de falas, pesquisáveis junto com arquivos
Áudio de Calls de ResultadosWebcasts de empresas—✅A própria gravação da call, reproduzível e alinhada à transcrição
Resumos de Resultados, Guidance e Mudança NarrativaCalls de resultados + comunicados—✅Resumos trimestrais aprovados por verificadores, citações de calls, mudanças narrativas derivadas, revisões de guidance da gestão e resultados reportados versus guidance anterior da empresa
Cotações em Tempo RealFeed de mercado licenciado—✅Cotações em tempo real de ações dos EUA
Cadeias de OpçõesFeed de opções licenciado—✅Cadeias por vencimento e preço de exercício com bid/ask, volume, juros em aberto, volatilidade implícita e delta/gamma/theta/vega
KPIs de EmpresasArquivos + comunicados de resultados—✅Métricas operacionais que uma empresa reporta mas o XBRL nunca padronizou, além de pontes GAAP-para-não-GAAP
GuidanceComunicados de resultados + calls—✅Guidance futuro da gestão, seus intervalos e como mudou entre trimestres
Recompra de Ações e ATM8-K / 10-Q—✅Programas autorizados de recompra e programas de capital no mercado (ATM), com valores e datas
Feed de IPOSEC S-1 / F-1—✅Novos registros com termos de oferta, subscritores, fatores de risco e financeiros pré-IPO
Relações com InvestidoresSites de RI de empresas—✅Próximos eventos, aparições em conferências e comunicados da sala de imprensa de RI
ExecutivosSEC 8-K / DEF 14A—✅Nomeações e saídas, além de números da Tabela de Remuneração Resumida
Múltiplos de ValuationDerivados—✅P/L, P/V, P/VP, EV/EBIT, EV/EBITDA atuais e históricos e mais, com os períodos em que foram calculados
ScreenerDerivados—✅Filtre todo o mercado dos EUA por valuation, margens, crescimento, propriedade, dados de vendas a descoberto e dividendos
Smart MoneyDerivados—✅Pontuações de sentimento de insiders, portfólios de superinvestidores e atividade congressional em todo o mercado
Sinalizadores de RiscoArquivos SEC—✅Linguagem de continuidade operacional e divulgações de concentração de clientes
Contexto de MercadoDerivados—✅Ações correlacionadas, além de calendário de mercado e status aberto/fechado
Composição de ÍndicesSEC N-PORT + arquivos de participações de fundos—✅Constituintes e histórico de mudanças de membros para S&P 500/400/600, Nasdaq-100, Russell 1000/2000 e Dow, além de previsões de adição e exclusão baseadas em regras
PortfóliosSua própria conta—✅Acompanhe participações e listas de observação em ações e opções, com custo base e lucro/perda realizado e não realizado. As únicas ferramentas no servidor que escrevem

Por Que Alguns Dados São Apenas na Nuvem

Nada acima é retido deste repositório. As linhas apenas na nuvem são dados cuja produção precisa de infraestrutura que você não montaria em casa:

  • Transcrições e áudio — calls de resultados são webcasts, não arquivos. Cada uma precisa ser descoberta e gravada por uma frota de navegadores, depois processada por reconhecimento de fala com GPU e diarização de falantes, a cada call, a cada trimestre.
  • Cotações em tempo real e cadeias de opções — feeds em tempo real licenciados, além de um serviço de streaming sempre ativo para distribuí-los. Nem a licença nem a disponibilidade cabem em um contêiner em um laptop.
  • KPIs, guidance, recompra de ações, termos de IPO, executivos, sinalizadores de risco — extraídos de arquivos, procurações e comunicados de resultados por pipelines de extração com LLM, com passes de verificação e uma fila de revisão humana, o que exige capacidade de inferência sustentada.
  • Eventos e notícias de relações com investidores — coletados de milhares de sites de RI de empresas, exigindo a mesma frota de navegadores furtivos dos webcasts.
  • Múltiplos, screener, smart money, contexto de mercado — derivados, e só fazem sentido sobre um corpus totalmente retroalimentado de todo o mercado, em vez dos tickers que você por acaso coletou até agora.
  • Composição de índices — montada a partir do cronograma N-PORT de cada fundo de rastreamento, além do arquivo de participações de cada fundo buscado diariamente, o que exige o corpus NPORT completo e um buscador que continua reaprendendo para onde esses arquivos foram movidos.
  • Portfólios — não são dados coletados: são seus, armazenados contra sua conta. A versão auto-hospedada não tem contas, então não há contra o que armazená-los.

Além dos dados, a nuvem já está retroalimentada e mantida atualizada, e é gerenciada — sem scrapers para cuidar. Este repositório é gratuito para sempre sob AGPL-3.0; a nuvem tem um nível gratuito de 100 requisições/dia sem cartão.

Comece no nível gratuito e auto-hospede quando preferir ser dono da stack.

Início Rápido

Docker Compose (recomendado)

A maneira mais rápida de colocar tudo em funcionamento. Requer Docker.

git clone https://github.com/daniel3303/Equibles.git
cd Equibles
cp .env.example .env
# Edit .env and set SEC_CONTACT_EMAIL (required by SEC EDGAR fair access policy)
docker compose up

Isso inicia:

ServiçoPortaDescrição
db5432ParadeDB (PostgreSQL + pgvector + pg_search)
web8080Portal web para navegar nos dados
mcp8081Servidor MCP para assistentes de IA
worker—Scrapers (SEC, FINRA, Congresso, FRED, Yahoo, CFTC, CBOE, USAspending, FDA, FIRDS, diretórios de bolsas europeias)

A coleta de dados começa automaticamente. Arquivos SEC, participações, negociações de insiders e negociações do congresso começarão a ser populados em minutos.

Configuração

Todas as configurações podem ser definidas através de um arquivo .env na raiz do projeto (recomendado para Docker) ou variáveis de ambiente.

Dados de Vendas a Descoberto FINRA (chave de API gratuita necessária):

O scraper da FINRA (volume de vendas a descoberto e juros a descoberto) requer uma chave de API gratuita. Sem ela, o scraper é ignorado graciosamente e todos os outros scrapers rodam normalmente. Dados de falhas na entrega vêm da SEC e funcionam sem credenciais FINRA.

Para obter uma chave:

  1. Vá ao Console de API da FINRA e entre (uma conta Google funciona)
  2. Abra o menu API Credentials e crie uma nova API Key
  3. Copie o Client ID e o Client Secret
  4. Defina Finra__ClientId e Finra__ClientSecret no seu arquivo .env ou nas variáveis de ambiente

O fluxo mais antigo developer.finra.org "Teams & Apps" foi aposentado — use o Console de API acima.

Dados Econômicos FRED (chave de API gratuita necessária):

O scraper FRED requer uma chave de API gratuita do Federal Reserve Bank de St. Louis. Sem ela, o scraper é ignorado graciosamente e todos os outros scrapers rodam normalmente.

Para obter uma chave:

  1. Registre-se em fred.stlouisfed.org/docs/api/api_key.html
  2. Copie a chave de API de 32 caracteres
  3. Defina Fred__ApiKey no seu arquivo .env ou nas variáveis de ambiente

Filtragem de Tickers (opcional):

Por padrão, todos os tickers são sincronizados. Para limitar a sincronização de dados a ações específicas, defina uma única lista de tickers que se aplica a todos os scrapers:

# .env — sync only these tickers (applies to all scrapers)
Worker__TickersToSync__0=AAPL
Worker__TickersToSync__1=MSFT
Worker__TickersToSync__2=GOOGL

Quando não definido, todas as ações são sincronizadas.

Data Mínima de Sincronização (opcional):

Por padrão, todos os scrapers começam em janeiro de 2020. Defina uma data mais recente para uma sincronização inicial mais rápida, ou vá tão longe quanto 2000-01-01 para mais dados históricos:

# .env — start syncing from 2024 instead of 2020
Worker__MinSyncDate=2024-01-01

Embedding (opt-in):

ConfiguraçãoPadrãoDescrição
Embedding__EnabledfalseDefina como true para habilitar a geração de embeddings vetoriais
Embedding__ProviderOllamaOllama (/api/embed) ou OpenAI (/v1/embeddings — vLLM, Text-Embeddings-Inference ou OpenAI)
Embedding__BaseUrl—Endpoint de embeddings (ex.: http://localhost:11434)
Embedding__ModelName—Nome do modelo (ex.: qwen3-embedding:0.6b)
Embedding__ApiKey—Token Bearer, se o servidor exigir um (ex.: vLLM --api-key)
Embedding__BatchSize10Textos por lote de embeddings

Notificações de atualização (opcional):

ConfiguraçãoPadrãoDescrição
CHECK_FOR_UPDATEStrueQuando true, o portal web verifica os lançamentos do GitHub e mostra um banner quando uma versão mais recente está disponível. Defina como false para desativar.

Autenticação (opcional):

ConfiguraçãoPadrãoDescrição
AUTH_USERNAME—Nome de usuário do portal web (autenticação desativada se vazio)
AUTH_PASSWORD—Senha do portal web (autenticação desativada se vazio)
MCP_API_KEY—Chave de API do servidor MCP (autenticação desativada se vazio)

Quando definido, o portal web exige login e o servidor MCP exige o cabeçalho Authorization: Bearer <key>. Quando não definido, tudo é de acesso aberto (padrão).

Atualização

O portal web verifica os lançamentos do GitHub em um cronograma e mostra um banner quando uma versão mais recente está disponível (desative com CHECK_FOR_UPDATES=false). Para atualizar para o lançamento mais recente:

Docker Compose:

git pull
docker compose up -d --build --remove-orphans

Inclua quaisquer arquivos de override do Compose opcionais no comando de atualização para que esses serviços permaneçam habilitados.

A partir do código-fonte:

git pull
dotnet build Equibles.sln

As migrações de banco de dados são aplicadas automaticamente na inicialização. Revise o changelog para mudanças notáveis antes de atualizar.

Portal Web

O portal web em http://localhost:8080 fornece uma interface baseada em navegador para explorar dados:

  • Ações — Navegue e pesquise todas as empresas rastreadas, visualize gráficos de preços com indicadores técnicos (SMA, EMA, RSI, MACD, Bandas de Bollinger), selos de cruz dourada/de morte e sequência de preços, desempenho versus SPY, além de abas por ação para participações institucionais, dados de vendas a descoberto, arquivamentos na SEC, demonstrações financeiras, negociações de insiders, vendas propostas (Formulário 144), participações de fundos (NPORT), operações de fundos (N-CEN), ofertas isentas (Formulário D) e negociações do congresso
  • Instituições — Navegue pelos detentores institucionais (hedge funds, gestores de ativos), visualize perfis detalhados com detalhamento de portfólio, alocação por setor, atividade trimestral, backtesting e comparações lado a lado. Os declarantes são pontuados com base no desempenho ajustado ao risco (alfa versus um benchmark) e uma página de Índice de Dinheiro Inteligente agrega os fundos com maior pontuação em um sinal de consenso. Inclui um screener de participações com filtros (número de declarantes, valor, % de float, localização, AUM/número de posições, setor) e exportação em CSV
  • Assessores — Navegue pelos assessores de investimento registrados na SEC (/advisers), classificados por ativos sob gestão, com perfis por empresa (AUM regulatório, escritório principal, número de funcionários, estrutura de taxas)
  • Negociação de Insiders — Painel mostrando as principais compras, vendas e maiores transações de insiders nos últimos 90 dias
  • Atividade de Vendas a Descoberto — Ranking dos mais vendidos a descoberto (/most-shorted, classificados pelo interesse de vendas a descoberto da FINRA) e maior volume diário de vendas a descoberto (/short-volume), cada um com seletor de data, ordenação no servidor e paginação
  • Economia — Navegue pelos indicadores econômicos do FRED agrupados por categoria (taxas de juros, inflação, emprego, PIB, etc.) com gráficos e estatísticas
  • Futuros — Dados de posicionamento do CFTC Commitments of Traders para mais de 30 contratos futuros (commodities, índices, moedas) com gráficos de posições comerciais/não comerciais
  • Mercado — Indicadores de mercado da CBOE: índice de volatilidade VIX com gráficos OHLC, índices de opções de compra/venda (ações, índices, total, VIX, ETP)
  • Pesquisa — Pesquisa global em ações, instituições, insiders e membros do congresso com filtros de categoria e intervalos de datas
  • Status — Saúde do sistema, status dos workers, contagens de dados e log de erros

Servidor MCP

O servidor MCP expõe ferramentas de dados financeiros para assistentes de IA (Claude, ChatGPT, etc.):

  • Participações Institucionais — Principais detentores, histórico de propriedade, portfólios e resumos de instituições, alocação por setor, atividade trimestral, ações mais detidas, participações de consenso, sobreposição de fundos, atividade 13F em todo o mercado, pesquisa de instituições
  • Negociação de Insiders — Transações de insiders, resumo de propriedade, vendas propostas (Formulário 144), pesquisa de insiders
  • Negociação do Congresso — Negociações para um ticker, negociações por um membro, pesquisa de membros
  • Documentos da SEC — Pesquisa de texto completo, pesquisa semântica, navegação de documentos, pesquisa de palavras-chave em arquivamentos
  • Demonstrações Financeiras — Séries temporais de fatos XBRL por ticker, comparação de fatos entre tickers, demonstração de resultados completa / balanço patrimonial / fluxo de caixa por período fiscal
  • Arquivamentos de Fundos e Assessores — Participações de portfólio de fundos (NPORT), operações de fundos registrados (N-CEN), ofertas isentas (Formulário D) e consulta e pesquisa de assessores de investimento registrados na SEC (Formulário ADV)
  • Dados de Vendas a Descoberto — Volume diário de vendas a descoberto, maior volume diário de vendas a descoberto em todo o mercado, interesse de vendas a descoberto quinzenal e o snapshot mais recente de interesse de vendas a descoberto entre tickers
  • Indicadores Econômicos — Consulta de dados do FRED, snapshot macro mais recente, pesquisa de indicadores entre categorias
  • Preços de Ações — Histórico diário de OHLCV com fechamento ajustado, fechamento mais recente de um ou mais tickers e indicadores técnicos sob demanda (EMA, Oscilador Estocástico, Average True Range, On-Balance Volume, Bandas de Bollinger)
  • Posicionamento de Futuros — Dados de posicionamento COT, snapshot mais recente de todos os contratos, pesquisa de contratos
  • Indicadores de Mercado — Dados históricos do VIX, índices de opções de compra/venda por tipo (ações, índices, total, VIX, ETP)
  • Contratos Governamentais — Prêmios de contratos federais vencidos por um ticker (agência concedente, valor, datas do período) e um ranking dos principais contratantes de empresas públicas por total de dólares federais em um intervalo de datas (USAspending.gov)
  • Catalisadores da FDA — Reuniões agendadas do comitê consultivo (AdComm) da FDA em um intervalo de datas — as datas de catalisadores regulatórios que movem ações de biotecnologia e farmacêuticas (FDA.gov)

Formato de Saída (GCF, opt-in)

Por padrão, as ferramentas de tabela retornam tabelas markdown. O Graph Compact Format é usado em vez disso quando é menor; caso contrário, ele volta ao markdown. O GCF carrega as mesmas células que a tabela markdown mostraria, com os nomes das colunas fatorados em um único cabeçalho e o preenchimento | por célula e a linha separadora removidos.

Ele alcança as respostas renderizadas por meio de MarkdownTable.Render, que hoje são as ferramentas de volume de vendas a descoberto e interesse de vendas a descoberto, volume fora de bolsa, falhas de entrega, negociações do congresso e divulgações de membros, as ferramentas de séries e calendário do FRED, posicionamento do CFTC, índices da CBOE, reuniões consultivas da FDA, contratos governamentais e as ferramentas de pesquisa de instituições e assessores. Ferramentas que montam sua resposta com MarkdownTable.Start e anexam linhas elas mesmas não são codificadas, porque essas respostas continuam além da tabela com notas de truncamento e rodapés; isso inclui as ferramentas de preço, demonstrações financeiras, insiders, dividendos, portfólio 13F, arquivamentos de fundos e pesquisa de arquivamentos. O roteamento delas pelo renderizador compartilhado é rastreado separadamente.

Peça por solicitação, que é o que um servidor compartilhado deseja, com o cabeçalho X-Equibles-Output-Format: gcf ou um parâmetro de consulta ?output_format=gcf (o parâmetro de consulta existe para clientes cuja única configuração é uma URL). markdown é aceito da mesma forma, para que um chamador possa optar por sair de um servidor que usa GCF por padrão. Um valor não reconhecido é ignorado em vez de recusado, e o padrão do próprio servidor se aplica.

Defina EQUIBLES_OUTPUT_FORMAT=gcf para tornar o GCF o padrão em todo o processo. Uma solicitação que nomeia um formato vence sobre ele; uma que não nomeia nada o recebe.

A seleção por solicitação depende de cada chamada de ferramenta chegar como sua própria solicitação HTTP, que é como o transporte HTTP transmissível funciona em seus modos sem estado e com sessão: o formato é lido dessa solicitação e se aplica apenas a ela. Um transporte que, em vez disso, despachasse chamadas em uma conexão aberta anteriormente carregaria o que a solicitação de abertura pediu.

O quanto ele economiza depende da forma da resposta. A tabela compacta, a prosa ao redor não, então uma tabela pequena dentro de um longo preâmbulo economiza menos e uma tabela larga com muitos valores curtos economiza mais. Medido de ponta a ponta contra um servidor implantado em respostas reais de três das ferramentas cobertas, 30 sessões de volume diário de vendas a descoberto, 25 negociações do congresso e 24 observações mensais de uma série do FRED, o texto da resposta é 7 a 13% mais curto em caracteres.

Esse é o texto que seu cliente entrega ao modelo, não o payload HTTP. O JSON escapa cada aspas que o codificador adiciona, então os bytes de transporte podem crescer na mesma resposta cujo texto encolheu.

É deliberadamente conservador: cada valor de célula é preservado literalmente (a formatação compacta em USD, agrupada por vírgulas, decimal adaptativo e travessão é intocada — o GCF apenas muda o enquadramento, não os números que um modelo lê), e qualquer linha que não corresponda à forma da coluna do cabeçalho volta para a tabela markdown, então um resultado nunca é descartado ou corrompido. A saída é inalterada para um chamador que não pede nada em um servidor que não define nada. O GCF é licenciado sob MIT e seu codificador é sem dependências.

Conectando ao Claude Desktop

Adicione isto ao seu arquivo de configuração do Claude Desktop (claude_desktop_config.json):

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "equibles": {
      "url": "http://localhost:8081/mcp"
    }
  }
}

Reinicie o Claude Desktop e as ferramentas do Equibles estarão disponíveis. Você pode então fazer perguntas como "Quem são os principais detentores institucionais da AAPL?" ou "Pesquise o 10-K mais recente da Apple para discussão sobre crescimento de receita."

Conectando ao Claude Code

Adicione o servidor MCP ao Claude Code:

claude mcp add equibles --transport http http://localhost:8081/mcp

Conectando ao ChatGPT Desktop

Adicione isto ao seu arquivo de configuração do ChatGPT Desktop:

macOS: ~/Library/Application Support/com.openai.chat/mcp.json Windows: %APPDATA%\com.openai.chat\mcp.json

{
  "servers": {
    "equibles": {
      "url": "http://localhost:8081/mcp"
    }
  }
}

Reinicie o ChatGPT Desktop e as ferramentas do Equibles estarão disponíveis.

Conectando ao OpenClaw

No OpenClaw, adicione um servidor MCP com a URL http://localhost:8081/mcp (transporte HTTP).

Outros Clientes MCP

Qualquer cliente compatível com MCP pode se conectar a http://localhost:8081/mcp (transporte HTTP).

Executando via stdio

Clientes que iniciam um servidor como subprocesso podem executá-lo via stdin/stdout em vez de HTTP:

dotnet build src/Equibles.Mcp.Server
dotnet run --no-build --project src/Equibles.Mcp.Server -- --stdio

Compile primeiro: um dotnet run simples restaura e imprime a saída da compilação no stdout, o que corrompe o fluxo do protocolo. O servidor lê ConnectionStrings:DefaultConnection como de costume, então aponte-o para o mesmo banco de dados que o worker preenche. Os logs vão para o stderr. A chave de API e o cabeçalho de formato de saída por solicitação e o parâmetro de consulta não se aplicam; defina EQUIBLES_OUTPUT_FORMAT=gcf no ambiente do subprocesso em vez disso.

Ferramentas

Esta compilação auto-hospedada expõe 62 ferramentas via MCP. O servidor hospedado em https://mcp.equibles.com/mcp executa este mesmo núcleo e adiciona mais por cima. Catálogo completo e configuração do cliente: daniel3303/stock-market-mcp-server.

Participações institucionais 13F

  • GetInstitutionCloneBacktest — backtest clonando o portfólio 13F de um declarante vs um benchmark
  • GetTopHolders — principais detentores institucionais de uma ação (13F-HR)
  • GetInstitutionalOwnershipHistory — tendência de propriedade institucional ao longo dos trimestres
  • GetInstitutionPortfolio — portfólio 13F de uma instituição
  • SearchInstitutions — busca tokenizada estrita-primeiro por nome/CIK com data de arquivamento, AUM 13F e contagem de posições
  • GetTopInstitutionalBuyersSellers — maiores compras/reduções em uma ação neste trimestre
  • GetMarketWide13FActivity — rankings 13F em todo o mercado
  • GetMostHeldStocks — ações por amplitude institucional
  • GetInstitutionSummary — resumo do declarante (valor, concentração, rotatividade)
  • GetInstitutionSectorAllocation — alocação por setor
  • GetInstitutionQuarterlyActivity — iniciado/aumentado/reduzido/saído vs trimestre anterior
  • CompareInstitutionPortfolios — sobreposição de portfólio entre duas instituições
  • GetInstitutionConsensusHoldings — portfólio de consenso de 2–25 instituições

Negociação com informações privilegiadas

  • GetInsiderTransactions — transações de insiders dos Formulários 4/5
  • GetInsiderOwnership — propriedade de insiders classificada por ações
  • GetForm144ProposedSales — vendas propostas do Formulário 144
  • SearchInsiders — busca estrita-primeiro por nome completo arquivado com aliases públicos verificados

Busca de arquivamentos SEC

  • SearchDocuments — busca híbrida por palavras-chave + semântica em todos os arquivamentos, opcionalmente filtrada por ticker
  • SearchDocument — busca dentro de um único arquivamento
  • ListFilings — navegue pelos arquivamentos em todo o mercado ou para uma empresa, com filtros por data/tipo/item 8-K
  • ReadDocumentLines — leia um intervalo de linhas de um arquivamento

Fundos, ETFs e consultores

  • SearchInvestmentAdvisers — busca estrita-primeiro tokenizada por nome de consultor (Formulário ADV)
  • GetInvestmentAdviser — perfil ADV por CRD
  • GetFundNcenReports — operações de fundos do N-CEN com resolução exata de identificador de diretório
  • GetFundsHoldingStock — fundos que detêm uma ação
  • GetFormDOfferings — ofertas privadas (Formulário D)
  • GetFailsToDeliver — dados SEC de FTD
  • SearchFunds — busca estrita-primeiro tokenizada por fundo/registrante/ticker com aliases verificados de classes de ações
  • GetFundProfile — perfil do fundo + participações NPORT-P com contagens explícitas de cobertura reportada versus armazenada

Fundamentos (XBRL)

  • GetFinancialStatement — demonstração de resultado/balanço/fluxo de caixa ancorada em um fim de período; fluxos trimestrais em USD são trimestres discretos reportados ou restos derivados exatos, nunca totais acumulados no ano
  • GetFinancialFact — um conceito ao longo do tempo com intervalos exatos e avisos de cobertura de alias desatualizados
  • CompareFinancialFact — um conceito entre empresas
  • GetRevenueBreakdown — receita por segmento/geografia/produto, além de lucro operacional por segmento reportado e margem derivada

Dados econômicos (FRED)

  • GetEconomicIndicator — uma série FRED
  • GetLatestEconomicIndicators — valores mais recentes por categoria
  • SearchEconomicIndicators — busca estrita-primeiro tokenizada em séries selecionadas com aliases macro padrão
  • GetEconomicCalendar — calendário de divulgações macro dos EUA

Futuros (CFTC COT)

  • GetCftcPositioning — posicionamento COT para um contrato
  • GetLatestCftcPositioning — snapshot COT mais recente
  • SearchCftcMarkets — busca estrita-primeiro tokenizada por nome, código ou símbolo padrão de futuros

Volatilidade (CBOE)

  • GetPutCallRatios — índices put/call
  • GetVixHistory — OHLC diário do VIX

Calendário FDA

  • GetFdaAdvisoryCommitteeMeetings — reuniões agendadas do comitê consultivo da FDA

Negociação no Congresso

  • GetCongressionalTrades — negociações para um ticker
  • GetMemberTrades — negociações de um membro
  • GetMemberNetWorth — histórico de patrimônio líquido do membro
  • SearchCongressMembers — busca estrita-primeiro tokenizada no roster com aliases públicos verificados

Dados de vendas a descoberto (FINRA)

  • GetShortVolume — volume diário de vendas a descoberto
  • GetShortInterest — juros de venda a descoberto quinzenais
  • GetShortInterestSnapshot — snapshot em todo o mercado
  • GetLargestShortVolume — maior volume diário de vendas a descoberto
  • GetShortSqueezeScores — pontuações compostas de short squeeze
  • GetOffExchangeVolume — volume de dark pool/OTC

Preços de ações

  • GetStockPrices — OHLCV diário mais o preço de fechamento ajustado auxiliar armazenado quando difere
  • GetLatestClosingPrices — fechamento/variação/volume mais recentes
  • GetDividendHistory — dividendos em dinheiro declarados armazenados para uma ação ou listagem de ETF exata
  • GetStochasticOscillator — oscilador estocástico (%K/%D)
  • GetAverageTrueRange — intervalo verdadeiro médio (ATR)
  • GetOnBalanceVolume — volume on-balance (OBV)
  • GetBollingerBands — Bandas de Bollinger

Contratos governamentais (USAspending)

  • GetGovernmentContracts — prêmios de contratos federais para uma empresa
  • GetTopGovernmentContractors — maiores contratantes entre empresas públicas

Embeddings vetoriais (avançado, opt-in)

Embeddings vetoriais permitem busca semântica em arquivamentos SEC (por exemplo, "encontre discussão sobre crescimento de receita no 10-K da Apple"). Isso requer o download do runtime Ollama (~2GB) e do modelo Qwen3-Embedding-0.6B (~640MB).

docker compose -f docker-compose.yml -f docker-compose.embedding.yml up

Isso adiciona o Ollama e configura os serviços web, MCP e worker existentes para usá-lo:

ServiçoPortaDescrição
embedding11434Servidor Ollama com modelo Qwen3-Embedding-0.6B
embedding-pull—Download único do modelo antes do worker iniciar
worker—O worker existente, com geração de embeddings habilitada

Sem a substituição de embeddings, a busca de texto completo BM25 via ParadeDB ainda funciona pronta para uso — a busca vetorial é puramente aditiva.

O Ollama integrado é o padrão porque não requer GPU e roda em qualquer lugar. Para embeddings em massa em escala, aponte Embedding__Provider=OpenAI para um servidor em lote como vLLM ou Text-Embeddings-Inference — eles processam continuamente em lote na GPU e são muito mais rápidos que o Ollama para grandes corpora. Veja docs/guide/how-to-use-external-embedding-endpoint.md.

Capturas de tela

Detalhe da Ação
Stock detail page showing price charts, moving averages, and technical indicators for AAPL
Ações
Stocks page with search and ticker listing
Dados Econômicos
Economic indicators grouped by category
Detalhe do Indicador Econômico
Federal Funds Rate chart and observations

Contribuindo

Veja CONTRIBUTING.md para configuração de desenvolvimento, arquitetura do projeto e como estender a plataforma. Contribuidores devem assinar o Contrato de Licença de Contribuidor — isso é tratado automaticamente por um bot quando você abre um pull request.

Licença

AGPL-3.0

Autor

Daniel Oliveira

Website X LinkedIn