Alpaca

Interactúa con la API de trading de Alpaca para operaciones bursátiles, datos de mercado y gestión de cuentas.

Documentación

Servidor MCP de Alpaca

Este es un servidor de Protocolo de Contexto de Modelo (MCP) para Alpaca, que permite a LLMs como Claude interactuar con la API de trading de Alpaca. Permite operar acciones, consultar posiciones, obtener datos de mercado y gestionar tu cuenta, todo mediante lenguaje natural.

Características

  • 📚 Documentación de Alpaca - Accede a la documentación del SDK de Alpaca para desarrollarla
  • 📊 Datos de Mercado - Obtén cotizaciones de acciones en tiempo real y datos históricos de precios
  • 💵 Información de la Cuenta - Consulta tus saldos, poder de compra y estado
  • 📈 Gestión de Posiciones - Visualiza las posiciones actuales y su rendimiento
  • 🛒 Colocación de Órdenes - Coloca órdenes de mercado y limitadas mediante lenguaje natural
  • 📋 Gestión de Órdenes - Lista, rastrea y cancela órdenes

Requisitos Previos

  • Python 3.10+
  • Claves de API de Alpaca
  • Claude para Desktop u otro cliente MCP

Instalación

  1. Clona este repositorio:

    git clone https://github.com/YOUR_USERNAME/alpaca-mcp.git
    cd alpaca-mcp
    
  2. Instala los paquetes requeridos:

    pip install mcp alpaca-py python-dotenv
    
  3. Crea un archivo .env con tus credenciales de la API de Alpaca:

    API_KEY_ID=your_alpaca_api_key
    API_SECRET_KEY=your_alpaca_secret_key
    

Uso

Ejecutando el servidor

Inicia el servidor ejecutando:

python alpaca_mcp_server.py

Configurando Claude para Desktop

  1. Abre Claude para Desktop
  2. Ve a Configuración
  3. Haz clic en "Developer" y luego en "Edit Config"
  4. Añade la configuración del servidor a 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. Guarda y reinicia Claude para Desktop

Herramientas Disponibles

El servidor expone las siguientes herramientas:

  • get_account_info() - Obtén saldos y estado de la cuenta
  • get_positions() - Lista todas las posiciones actuales en el portafolio
  • get_stock_quote(symbol) - Obtén la cotización más reciente de una acción
  • get_stock_bars(symbol, days) - Obtén barras de precios históricas de una acción
  • get_orders(status, limit) - Lista órdenes con el estado especificado
  • place_market_order(symbol, side, quantity) - Coloca una orden de mercado
  • place_limit_order(symbol, side, quantity, limit_price) - Coloca una orden limitada
  • cancel_all_orders() - Cancela todas las órdenes abiertas
  • close_all_positions(cancel_orders) - Cierra todas las posiciones abiertas

Consultas de Ejemplo

Una vez que el servidor esté conectado a Claude, puedes hacer preguntas como:

  • "¿Cuál es mi saldo actual de cuenta y poder de compra?"
  • "Muéstrame mis posiciones actuales"
  • "Obtén la cotización más reciente de AAPL"
  • "Muéstrame el historial de precios de TSLA de los últimos 10 días"
  • "Compra 5 acciones de MSFT al precio de mercado"
  • "Vende 10 acciones de AMZN con un precio límite de $130"
  • "Cancela todas mis órdenes abiertas"

Nota

Este servidor utiliza el trading en papel de Alpaca por defecto. Para usar trading con dinero real, cambia paper=True a paper=False en la inicialización de TradingClient.

Aviso de Seguridad

Este servidor MCP tendrá acceso a tu cuenta de Alpaca y puede realizar operaciones reales. Siempre revisa lo que Claude está sugiriendo antes de aprobar cualquier operación.

Licencia

MIT