Alpaca MCP 服务器为 Alpaca 提供模型上下文协议(MCP),允许 Claude 等大语言模型与 Alpaca 的交易 API 交互。支持股票交易、持仓查看、市场数据获取和账户管理等操作,且均可通过自然语言完成。
本服务器允许大语言模型与 Alpaca 交易 API 交互,支持通过自然语言完成股票交易等操作。以下为你介绍使用前的准备与启动步骤。
克隆此仓库:
git clone https://github.com/YOUR_USERNAME/alpaca-mcp.git
cd alpaca-mcp
安装所需的包:
pip install mcp alpaca-py python-dotenv
创建包含 Alpaca API 凭证的 .env 文件:
API_KEY_ID=your_alpaca_api_key
API_SECRET_KEY=your_alpaca_secret_key
启动服务器,请运行以下命令:
python alpaca_mcp_server.py
打开 Claude for Desktop。
进入设置。
点击“开发者”然后选择“编辑配置”。
将服务器配置添加到 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"
}
}
}
}
保存并重启 Claude for Desktop。
服务器提供以下工具:
get_account_info() - 获取账户余额和状态。get_positions() - 列出当前持仓。get_stock_quote(symbol) - 获取股票的最新行情。get_stock_bars(symbol, days) - 获取股票的历史价格数据。get_orders(status, limit) - 列出指定状态的订单。place_market_order(symbol, side, quantity) - 下达市价单。place_limit_order(symbol, side, quantity, limit_price) - 下达限价单。cancel_all_orders() - 取消所有未成交订单。close_all_positions(cancel_orders) - 平仓所有持仓(可选:取消相关订单)。当服务器与 Claude 连接后,您可以提出以下问题:
该服务器默认使用 Alpaca 的模拟交易功能。如需使用真实资金进行交易,请在 TradingClient 初始化时将 paper=True 更改为 paper=False。
此 MCP 服务器可以访问您的 Alpaca 账户并能执行真实的交易操作。请务必仔细检查 Claude 的建议,确保批准的交易符合预期。
本项目采用 MIT 许可证。