Polygon.io
Acesse dados do mercado financeiro em tempo real e históricos da API do Polygon.io.
Documentação
[!IMPORTANT] :test_tube: Este projeto é experimental e pode estar sujeito a mudanças que quebrem a compatibilidade.
Servidor MCP Massive.com
Um servidor Model Context Protocol (MCP) que fornece acesso à API completa de dados financeiros do Massive.com por meio de uma interface amigável para LLMs.
Em vez de expor uma ferramenta por endpoint, este servidor oferece ao LLM três ferramentas combináveis — search, call e query — que cobrem toda a superfície da API do Massive.com. Os dados podem ser armazenados em um banco de dados SQLite em memória e enriquecidos com funções financeiras integradas.
Ferramentas
| Ferramenta | Descrição |
|---|---|
search_endpoints | Pesquise endpoints da API e funções integradas por consulta em linguagem natural. Retorna títulos, padrões de caminho e descrições. Defina detail como "more" para documentação de parâmetros de consulta, ou "verbose" para documentação completa. Use max_results para limitar os resultados. |
call_api | Chame qualquer endpoint da API REST do Massive.com. Suporta armazenamento de resultados como uma tabela de banco de dados em memória (store_as) e aplicação de funções de pós-processamento (apply). Respostas paginadas incluem uma dica de próxima página. |
query_data | Execute SQL contra o banco SQLite armazenado. Suporta SHOW TABLES, DESCRIBE <table>, DROP TABLE <table>, CTEs, funções de janela e muito mais. Os resultados também podem ser pós-processados com apply. |
Funções Integradas
As funções podem ser aplicadas a resultados da API ou saída de consultas por meio do parâmetro apply em call_api e query_data. Use search_endpoints com scope="functions" para descobri-las.
| Categoria | Funções |
|---|---|
| Gregas | bs_price, bs_delta, bs_gamma, bs_theta, bs_vega, bs_rho — precificação de opções Black-Scholes e gregas |
| Retornos | simple_return, log_return, cumulative_return, sharpe_ratio, sortino_ratio |
| Técnicas | sma (média móvel simples), ema (média móvel exponencial) |
Cobertura de Dados
O servidor indexa dinamicamente todos os endpoints da API do Massive.com na inicialização a partir de llms.txt, portanto, permanece automaticamente sincronizado com a API. A cobertura inclui:
- Agregados de ações, opções, forex, criptomoedas e futuros
- Negociações e cotações em tempo real e históricas
- Instantâneos de mercado, ganhadores/perdedores
- Detalhes de tickers e dados de referência
- Dividendos, desdobramentos, IPOs
- Fundamentos financeiros
- Classificações de analistas e notícias (Benzinga)
- Rendimentos de títulos do tesouro, dados de inflação
- Status do mercado e feriados
Instalação
Pré-requisitos
- Python 3.12+
- Uma chave de API do Massive.com
- Astral UV (v0.4.0+)
Claude Code
Primeiro, instale o Claude Code
npm install -g @anthropic-ai/claude-code
Instale o servidor MCP e registre-o com o Claude Code:
# Install the server (one-time — downloads dependencies ahead of time)
uv tool install "mcp_massive @ git+https://github.com/massive-com/mcp_massive@v0.10.0"
# Register with Claude Code
claude mcp add massive -e MASSIVE_API_KEY=your_api_key_here -- mcp_massive
Para atualizar para uma nova versão posteriormente:
uv tool upgrade mcp_massive
[!NOTE] Atualizando do
uvxouuv run --with? Versões anteriores recomendavamuvx --from ... mcp_massiveouuv run --with. Esses comandos baixam dependências a cada inicialização a frio, o que pode fazer o servidor exceder o tempo limite de conexão de 30 segundos do Claude. Mude parauv tool installcomo mostrado acima — ele baixa as dependências uma vez e inicia instantaneamente depois disso.
Este comando instalará o servidor MCP no seu projeto atual.
Se você quiser instalá-lo globalmente, execute o comando com a flag -s <scope>.
Consulte claude mcp add --help para mais opções.
Para iniciar o Claude Code, execute claude no seu terminal.
- Se esta for a sua primeira vez, siga os prompts de configuração para autenticar
Você também pode executar claude mcp add-from-claude-desktop se o servidor MCP já estiver instalado para o Claude Desktop.
Claude Desktop
- Siga as instruções de instalação do MCP para Claude Desktop para concluir a instalação inicial e encontrar seu arquivo de configuração.
- Instale o servidor:
uv tool install "mcp_massive @ git+https://github.com/massive-com/mcp_massive@v0.10.0"
- Encontre o caminho do binário instalado:
# Mac/Linux
which mcp_massive
# Windows
where mcp_massive
- Adicione o servidor à configuração do seu Claude Desktop. Substitua
<path_to_mcp_massive>pela saída da etapa anterior e preencha os campos restantes.
claude_desktop_config.json
{
"mcpServers": {
"massive": {
"command": "<path_to_mcp_massive>",
"env": {
"MASSIVE_API_KEY": "<your_api_key_here>",
"HOME": "<your_home_directory>"
}
}
}
}
Configuração
Variáveis de Ambiente
| Variável | Obrigatória | Padrão | Descrição |
|---|---|---|---|
MASSIVE_API_KEY | Sim | — | Sua chave de API do Massive.com |
POLYGON_API_KEY | Não | — | Alias obsoleto para MASSIVE_API_KEY |
MCP_TRANSPORT | Não | stdio | Protocolo de transporte: stdio, sse ou streamable-http |
MASSIVE_API_BASE_URL | Não | https://api.massive.com | URL base para solicitações de API |
MASSIVE_LLMS_TXT_URL | Não | https://massive.com/docs/rest/llms.txt | URL para o índice de endpoints |
MASSIVE_MAX_TABLES | Não | 50 | Número máximo de tabelas em memória |
MASSIVE_MAX_ROWS | Não | 50000 | Máximo de linhas por tabelas armazenadas |
Transporte
Por padrão, o transporte STDIO é usado. O transporte pode ser definido por meio do argumento de CLI --transport ou da variável de ambiente MCP_TRANSPORT (o argumento de CLI tem precedência).
# CLI argument
MASSIVE_API_KEY=<your_api_key_here> uv run mcp_massive --transport streamable-http
# Environment variable
MCP_TRANSPORT=streamable-http MASSIVE_API_KEY=<your_api_key_here> uv run mcp_massive
Exemplos de Uso
Uma vez integrado, você pode solicitar ao Claude acesso aos dados do Massive.com:
Get the latest price for AAPL stock
Show me yesterday's trading volume for MSFT
What were the biggest stock market gainers today?
Get me the latest crypto market data for BTC-USD
Calculate the 20-day SMA for AAPL closing prices over the last 3 months
Compute Black-Scholes delta for these option contracts
Desenvolvimento
Executando Localmente
Verifique se você tem os Pré-requisitos instalados.
# Sync dependencies
uv sync
# Run the server
MASSIVE_API_KEY=your_api_key_here uv run mcp_massive
Configuração de Desenvolvimento Local para claude_desktop_config.json
Instale a partir do seu checkout local e, em seguida, referencie o binário diretamente:
uv tool install --force /path/to/mcp_massive
{
"mcpServers": {
"massive": {
"command": "mcp_massive",
"env": {
"MASSIVE_API_KEY": "your_api_key_here"
}
}
}
}
Depuração
Para depuração e testes, recomendamos usar o MCP Inspector:
npx @modelcontextprotocol/inspector uv --directory /path/to/mcp_massive run mcp_massive
Isso abrirá uma interface de navegador onde você pode interagir diretamente com seu servidor MCP e ver entrada/saída para cada ferramenta.
Selecione o tipo de transporte STDIO na interface do navegador com o comando uv e run mcp_massive como argumentos.
Lint de Código
Este projeto usa just para tarefas comuns de desenvolvimento. Para fazer lint do seu código antes de enviar um PR:
just lint
Isso executará ruff format e ruff check --fix para formatar automaticamente seu código e corrigir problemas de lint.
Links
Política de Privacidade
Este servidor MCP interage com a API do Massive.com para buscar dados de mercado. Todas as solicitações de dados estão sujeitas à política de privacidade e aos termos de serviço do Massive.com.
- Política de Privacidade do Massive.com: https://massive.com/legal/privacy
- Manuseio de Dados: Este servidor não armazena nem armazena em cache nenhum dado do usuário. Todas as solicitações são encaminhadas diretamente para a API do Massive.com.
- Chave de API: Sua chave de API do Massive.com é usada apenas para autenticar solicitações à API deles.
- User-Agent: As solicitações de API incluem uma string User-Agent contendo a versão do servidor MCP (por exemplo,
MCP-Massive/0.x.y). Nenhuma informação pessoalmente identificável é incluída.
Contribuindo
Se você encontrou um bug ou tem uma ideia para um novo recurso, por favor, discuta primeiro conosco enviando uma nova issue. Responderemos às issues em no máximo 3 semanas. Também estamos abertos a voluntários se você quiser enviar um PR para qualquer issue em aberto, mas por favor, discuta conosco antes. PRs que não estão vinculados a uma issue existente ou discutidos conosco com antecedência geralmente serão recusados.