Skip to main content
Glama

Schwab Model Context Protocol Server

by jkoelker

Servidor de protocolo de contexto del modelo Schwab

Este es un servidor que implementa el Protocolo de Contexto de Modelo (MCP) para la API de Schwab usando schwab-py y el MCP python-sdk .

Características

  • Exponer la funcionalidad de la API de Schwab a través del Protocolo de Contexto de Modelo
  • Obtener información de la cuenta y posiciones
  • Recuperar cotizaciones de acciones e historial de precios
  • Obtenga información del mercado y de los impulsores
  • Obtener cadenas de opciones y datos de vencimiento
  • Acceder al historial de pedidos y transacciones
  • Modificar el estado de la cuenta con herramientas especiales (requiere el indicador --jesus-take-the-wheel )
  • Diseñado para integrarse con modelos de lenguaje grandes (LLM)

Instalación

# Install with all dependencies uv add -e . # Install development dependencies uv add -e .[dev]

Uso

Autenticación

El primer paso es autenticarse con la API de Schwab y generar un token:

# Authenticate and generate a token uv run schwab-mcp auth --client-id YOUR_CLIENT_ID --client-secret YOUR_CLIENT_SECRET --callback-url YOUR_CALLBACK_URL

Puede configurar estas credenciales a través de variables de entorno para evitar escribirlas cada vez:

De forma predeterminada, el token se guarda en ~/.local/share/schwab-mcp/token.yaml (específico de la plataforma). Puede especificar una ruta diferente:

uv run schwab-mcp auth --token-path /path/to/token.yaml

Se admiten los formatos de token yaml y json y se inferirán a partir de la extensión del archivo.

Ejecución del servidor

Después de la autenticación, puede ejecutar el servidor:

# Run the server with default token path uv run schwab-mcp server --client-id YOUR_CLIENT_ID --client-secret YOUR_CLIENT_SECRET --callback-url YOUR_CALLBACK_URL # Run with a custom token path uv run schwab-mcp server --token-path /path/to/token.json --client-id YOUR_CLIENT_ID --client-secret YOUR_CLIENT_SECRET --callback-url YOUR_CALLBACK_URL # Run with account modification tools enabled uv run schwab-mcp server --jesus-take-the-wheel --client-id YOUR_CLIENT_ID --client-secret YOUR_CLIENT_SECRET --callback-url YOUR_CALLBACK_URL

La antigüedad del token está validada: si es mayor a 5 días, se le solicitará que vuelva a autenticarse.

ADVERTENCIA : El uso del indicador --jesus-take-the-wheel habilita herramientas que pueden modificar el estado de su cuenta. Úselo con precaución, ya que esto permite que los LLM cancelen pedidos y potencialmente realicen otras acciones que alteren el estado de la cuenta.

Herramientas disponibles

El servidor expone las siguientes herramientas MCP:

Información sobre fechas y mercados

  1. get_datetime - Obtener la fecha y hora actual en formato ISO
  2. get_market_hours - Obtener el horario de mercado para un mercado específico
  3. get_movers - Obtener movedores para un índice específico
  4. get_instruments - Busca instrumentos con un símbolo específico

Información de la cuenta

  1. get_account_numbers - Obtener la asignación de los ID de cuenta a los hashes de cuenta
  2. get_accounts - Obtener información de todas las cuentas de Schwab vinculadas
  3. get_accounts_with_positions - Obtener cuentas con información de posición
  4. get_account - Obtener información de una cuenta específica
  5. get_account_with_positions - Obtener una cuenta específica con información de posición
  6. get_user_preferences : obtiene las preferencias del usuario para todas las cuentas, incluidos los apodos

Pedidos

  1. get_order - Obtener detalles de un pedido específico
  2. get_orders - Obtener pedidos para una cuenta específica

Citas

  1. get_quotes - Obtener comillas para símbolos específicos

Historial de precios

  1. get_advanced_price_history : obtenga el historial de precios avanzado de un símbolo específico
  2. get_price_history_every_minute - Obtener el historial de precios con frecuencia de minutos
  3. get_price_history_every_five_minutes - Obtener el historial de precios con una frecuencia de cinco minutos
  4. get_price_history_every_ten_minutes - Obtener el historial de precios con una frecuencia de diez minutos
  5. get_price_history_every_fifteen_minutes - Obtener el historial de precios con una frecuencia de quince minutos
  6. get_price_history_every_thirty_minutes - Obtener el historial de precios con una frecuencia de treinta minutos
  7. get_price_history_every_day - Obtener el historial de precios con frecuencia diaria
  8. get_price_history_every_week - Obtener el historial de precios con frecuencia semanal

Opciones

  1. get_option_chain - Obtener la cadena de opciones para un símbolo específico
  2. get_advanced_option_chain : obtiene la cadena de opciones avanzadas para un símbolo específico
  3. get_option_expiration_chain - Obtener información de vencimiento de la opción para un símbolo

Actas

  1. get_transactions - Obtener transacciones para una cuenta específica
  2. get_transaction - Obtener detalles de una transacción específica

Herramientas de modificación de cuenta (Requiere el indicador --jesus-take-the-wheel )

  1. cancel_order - Cancelar un pedido específico

Advertencia de seguridad

El indicador --jesus-take-the-wheel permite a los LLM realizar acciones que pueden modificar el estado de su cuenta, incluidas:

  • Cancelación de pedidos
  • Otras acciones que pueden tener implicaciones financieras (se agregarán más herramientas en futuras versiones)

Utilice esta bandera únicamente en entornos controlados y comprenda los riesgos que conlleva.

Desarrollo

# Type check uv run pyright # Format code uv run ruff format . # Lint uv run ruff check . # Run tests uv run pytest

Licencia

Este proyecto está disponible bajo la licencia MIT.

-
security - not tested
A
license - permissive license
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Un servidor que implementa el Protocolo de Contexto de Modelo para la API de Schwab, lo que permite el acceso a información de cuentas, posiciones, cotizaciones de acciones e historial de pedidos/transacciones diseñado para la integración con modelos de lenguaje grandes.

  1. Características
    1. Instalación
      1. Uso
        1. Autenticación
        2. Ejecución del servidor
      2. Herramientas disponibles
        1. Información sobre fechas y mercados
        2. Información de la cuenta
        3. Pedidos
        4. Citas
        5. Historial de precios
        6. Opciones
        7. Actas
        8. Herramientas de modificación de cuenta (Requiere el indicador --jesus-take-the-wheel )
      3. Advertencia de seguridad
        1. Desarrollo
          1. Licencia

            Related MCP Servers

            • -
              security
              A
              license
              -
              quality
              A Model Context Protocol server that enables interaction with the Tradovate API for managing trading contracts, positions, orders, and accounts.
              Last updated -
              JavaScript
              MIT License
            • -
              security
              A
              license
              -
              quality
              A Model Context Protocol server that enables LLMs like Claude to interact with the Alpaca trading API, allowing for trading stocks, checking positions, fetching market data, and managing accounts through natural language.
              Last updated -
              Python
              MIT License
            • -
              security
              F
              license
              -
              quality
              A Model Context Protocol server that enables Large Language Models to access and interact with database connections, including viewing schemas and performing CRUD operations on connected databases.
              Last updated -
              • Apple
            • A
              security
              A
              license
              A
              quality
              A Model Context Protocol server that provides tools for interacting with the Paddle Billing API, enabling users to manage products, prices, customers, transactions, subscriptions, and create custom financial reports.
              Last updated -
              8
              43
              19
              TypeScript
              Apache 2.0

            View all related MCP servers

            MCP directory API

            We provide all the information about MCP servers via our MCP API.

            curl -X GET 'https://glama.ai/api/mcp/v1/servers/jkoelker/schwab-mcp'

            If you have feedback or need assistance with the MCP directory API, please join our Discord server