Schwab

Schwab

🚀 Schwab 模型上下文协议 (MCP) 服务端

这是一个实现模型上下文协议(MCP)的服务器,用于 Schwab API。借助 schwab-py 和 MCP 的 python-sdk,它能为用户提供便捷的服务。

🚀 快速开始

本服务器通过模型上下文协议 (MCP) 暴露 Schwab API 功能,能帮助用户获取各类金融信息和管理账户。下面将详细介绍其安装、使用等步骤。

✨ 主要特性

  • 通过模型上下文协议 (MCP) 暴露 Schwab API 功能
  • 获取账户信息和持仓
  • 获取股票报价和价格历史
  • 获取市场信息和动量股
  • 获取期权链和到期数据
  • 查看订单和交易记录历史
  • 修改账户状态(需要 --jesus-take-the-wheel 标志)

📦 安装指南

# 安装所有依赖项
uv add -e .

# 安装开发依赖项
uv add -e .[dev]

💻 使用示例

基础用法

认证

第一步是通过 Schwab API 进行认证并生成令牌:

# 认证并生成令牌
uv run schwab-mcp auth --client-id YOUR_CLIENT_ID --client-secret YOUR_CLIENT_SECRET --callback-url YOUR_CALLBACK_URL

您可以通过环境变量设置这些凭证,以避免每次输入:

  • SCHWAB_CLIENT_ID
  • SCHWAB_CLIENT_SECRET
  • SCHWAB_CALLBACK_URL(默认为 https://127.0.0.1:8182)

默认情况下,令牌保存在 ~/.local/share/schwab-mcp/token.yaml(根据平台不同而有所变化)。您可以指定其他路径:

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

支持 YAML 和 JSON 格式的令牌文件,并会根据文件扩展名自动推断格式。

运行服务器

认证完成后,运行服务器:

# 运行服务器
uv run schwab-mcp serve

高级用法

--jesus-take-the-wheel 标志启用后,LLM 可以执行以下操作:

  • 删除特定订单
  • 其他可能具有财务影响的操作(未来版本中将添加更多功能)

请仅在受控环境中使用此标志,并理解其中的风险。

🔧 技术细节

开发

# 类型检查
uv run pyright

# 格式化代码
uv run ruff format .

# 代码检查
uv run ruff check .

# 运行测试
uv run pytest

📄 许可证

本项目以 MIT License 的形式开源。

  • 0 关注
  • 0 收藏,13 浏览
  • system 提出于 2025-09-25 19:03

相似服务问题

相关AI产品