这是一个提供与 Alpaca 交易 API 接口的 Model Context Protocol (MCP) 服务器,允许您管理股票和加密货币投资组合、下单以及访问市场数据。
要通过 Smithery 自动安装 Alpaca 交易 MCP 服务器:
npx -y @smithery/cli install @laukikk/alpaca-mcp --client claude
pip install -e .
或者使用 uv:
uv pip install -e .
.env.example 文件复制到 .env:cp .env.example .env
.env 文件中添加您的 Alpaca 纸上交易 API 凭证:ALPACA_PAPER_API_KEY = "your-api-key"
ALPACA_PAPER_API_SECRET = "your-api-secret"
您可以在 Alpaca 创建账户以获得这些凭证。
运行 MCP 服务器:
python src/server.py
服务器启动后,可供 MCP 客户端连接。
在文本编辑器中打开您的 Claude for Desktop 应用配置文件。如果不存在,请创建该文件。
%APPDATA%\Claude\claude_desktop_config.json~/Library/Application\ Support/Claude/claude_desktop_config.json添加 Alpaca MCP 服务器配置:
{
"mcpServers": {
"alpaca": {
"command": "uv",
"args": [
"--directory",
"/ABSOLUTE/PATH/TO/PARENT/FOLDER/alpaca-mcp-server",
"run",
"src/server.py"
]
}
}
}
服务器提供的资源包括:
account://info - 获取当前账户信息positions://all - 获取所有当前持仓positions://{symbol} - 获取特定符号的持仓详情orders://recent/{limit} - 获取指定数量的最新订单market://{symbol}/quote - 获取特定符号的当前市场报价market://{symbol}/bars/{timeframe} - 获取特定符号的历史价格条形图,指定时间范围assets://list - 列出 Alpaca 上可用的可交易资产assets://{symbol} - 根据符号获取详细的资产信息服务器提供的工具包括:
get_account_info_tool - 获取当前账户信息place_market_order - 下市价单买入或卖出股票place_limit_order - 下限价单买入或卖出股票place_stop_order - 下止损单,在达到指定价格时买入或卖出股票place_stop_limit_order - 下止损限价单,结合止损单和限价单的功能cancel_order - 取消指定ID的未完成订单close_position - 平仓特定符号的持仓get_portfolio_summary - 获取投资组合的综合概览