Alpaca

Interaja com a API de negociação da Alpaca para operações com ações, dados de mercado e gerenciamento de conta.

Documentação

Servidor MCP Alpaca

Este é um servidor Model Context Protocol (MCP) para Alpaca, permitindo que LLMs como Claude interajam com a API de negociação da Alpaca. Ele permite negociar ações, verificar posições, obter dados de mercado e gerenciar sua conta - tudo por meio de linguagem natural.

Recursos

  • 📚 Documentação da Alpaca - Acesse a documentação do SDK da Alpaca para construir
  • 📊 Dados de Mercado - Obtenha cotações de ações em tempo real e dados históricos de preços
  • 💵 Informações da Conta - Verifique seus saldos, poder de compra e status
  • 📈 Gerenciamento de Posições - Veja as posições atuais e seu desempenho
  • 🛒 Colocação de Ordens - Coloque ordens de mercado e limitadas por meio de linguagem natural
  • 📋 Gerenciamento de Ordens - Liste, acompanhe e cancele ordens

Pré-requisitos

  • Python 3.10+
  • Chaves da API da Alpaca
  • Claude for Desktop ou outro cliente MCP

Instalação

  1. Clone este repositório:

    git clone https://github.com/YOUR_USERNAME/alpaca-mcp.git
    cd alpaca-mcp
    
  2. Instale os pacotes necessários:

    pip install mcp alpaca-py python-dotenv
    
  3. Crie um arquivo .env com suas credenciais da API da Alpaca:

    API_KEY_ID=your_alpaca_api_key
    API_SECRET_KEY=your_alpaca_secret_key
    

Uso

Executando o servidor

Inicie o servidor executando:

python alpaca_mcp_server.py

Configurando o Claude for Desktop

  1. Abra o Claude for Desktop
  2. Vá para Configurações
  3. Clique em "Developer" e depois em "Edit Config"
  4. Adicione a configuração do servidor ao claude_desktop_config.json:
{
  "mcpServers": {
    "alpaca": {
      "command": "python",
      "args": [
        "/path/to/alpaca_mcp_server.py"
      ],
      "env": {
        "API_KEY_ID": "your_alpaca_api_key",
        "API_SECRET_KEY": "your_alpaca_secret_key"
      }
    }
  }
}
  1. Salve e reinicie o Claude for Desktop

Ferramentas Disponíveis

O servidor expõe as seguintes ferramentas:

  • get_account_info() - Obtenha saldos e status da conta
  • get_positions() - Liste todas as posições atuais na carteira
  • get_stock_quote(symbol) - Obtenha a cotação mais recente de uma ação
  • get_stock_bars(symbol, days) - Obtenha barras de preço históricas para uma ação
  • get_orders(status, limit) - Liste ordens com status especificado
  • place_market_order(symbol, side, quantity) - Coloque uma ordem de mercado
  • place_limit_order(symbol, side, quantity, limit_price) - Coloque uma ordem limitada
  • cancel_all_orders() - Cancele todas as ordens abertas
  • close_all_positions(cancel_orders) - Feche todas as posições abertas

Exemplos de Consultas

Depois que o servidor estiver conectado ao Claude, você pode fazer perguntas como:

  • "Qual é o meu saldo atual e poder de compra?"
  • "Mostre-me minhas posições atuais"
  • "Obtenha a cotação mais recente da AAPL"
  • "Mostre-me o histórico de preços da TSLA nos últimos 10 dias"
  • "Compre 5 ações da MSFT ao preço de mercado"
  • "Venda 10 ações da AMZN com preço limite de $130"
  • "Cancele todas as minhas ordens abertas"

Nota

Este servidor usa negociação simulada (paper trading) da Alpaca por padrão. Para usar negociação com dinheiro real, altere paper=True para paper=False na inicialização do TradingClient.

Aviso de Segurança

Este servidor MCP terá acesso à sua conta Alpaca e pode realizar negociações reais. Sempre revise o que o Claude está sugerindo antes de aprovar qualquer negociação.

Licença

MIT