mcpField
R
Robinhood Mcp Server

Robinhood Mcp Server

本地服务
github.com/rohitsingh-iitd金融数据3071 周前更新

关于 Robinhood Mcp Server

Robinhood MCP Server 是一个 MCP 服务,封装了 Robinhood Crypto API,提供认证、账户管理、行情数据查询和交易操作。它同时提供 REST API 与 WebSocket 接口,适合需要通过程序访问 Robinhood 加密货币账户的开发者。

主要功能

  1. 01认证状态查询与账户信息获取
  2. 02账户持仓与订单历史查询
  3. 03最优买卖价与预估成交价查询
  4. 04下单、查询与撤销订单
  5. 05WebSocket 实时行情与订单更新订阅
  6. 06通过环境变量配置,支持速率限制

适用场景

  1. 01查询 Robinhood 加密货币账户的持仓情况
  2. 02获取 BTC-USD、ETH-USD 等交易对的实时行情
  3. 03通过 MCP 客户端下单或撤销加密货币订单

MCP 相关

该项目是一个 MCP 服务,向 MCP 客户端暴露账户、行情和交易相关的操作,具体工具列表未在说明中以 MCP 形式列出。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"robinhood": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"ROBINHOOD_API_KEY",
"-e",
"ROBINHOOD_PRIVATE_KEY",
"-e",
"HOST",
"-e",
"PORT",
"-e",
"DEBUG",
"-e",
"LOG_LEVEL",
"-e",
"RATE_LIMIT_ENABLED",
"-e",
"RATE_LIMIT_REQUESTS",
"-e",
"RATE_LIMIT_PERIOD",
"robinhood-mcp-server"
],
"env": {
"ROBINHOOD_API_KEY": "<ROBINHOOD_API_KEY>",
"ROBINHOOD_PRIVATE_KEY": "<ROBINHOOD_PRIVATE_KEY>",
"HOST": "<HOST>",
"PORT": "<PORT>",
"DEBUG": "<DEBUG>",
"LOG_LEVEL": "<LOG_LEVEL>",
"RATE_LIMIT_ENABLED": "<RATE_LIMIT_ENABLED>",
"RATE_LIMIT_REQUESTS": "<RATE_LIMIT_REQUESTS>",
"RATE_LIMIT_PERIOD": "<RATE_LIMIT_PERIOD>"
}
}
}
}
启动命令docker run -i --rm -e ROBINHOOD_API_KEY -e ROBINHOOD_PRIVATE_KEY -e HOST -e PORT -e DEBUG -e LOG_LEVEL -e RATE_LIMIT_ENABLED -e RATE_LIMIT_REQUESTS -e RATE_LIMIT_PERIOD robinhood-mcp-server
需要配置的环境变量
ROBINHOOD_API_KEY密钥
ROBINHOOD_PRIVATE_KEY密钥
HOST
PORT
DEBUG
LOG_LEVEL
RATE_LIMIT_ENABLED
RATE_LIMIT_REQUESTS
RATE_LIMIT_PERIOD

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
ocirobinhood-mcp-server

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MseeP.ai Security Assessment Badge

Robinhood MCP 服务 - 用户指南

概述

Robinhood MCP 服务为 Robinhood Crypto API 提供全面的接口。该服务通过 REST API 和 WebSocket 接口处理身份验证、账户管理、市场数据检索和交易操作。

目录

功能

  • 用于账户管理和交易操作的 REST API
  • 支持通过 WebSocket 获取实时市场数据和订单更新
  • 全面的错误处理和日志记录
  • 速率限制和安全最佳实践
  • 通过环境变量轻松配置

先决条件

  • Python 3.8 或更高版本
  • pip(Python 包管理器)
  • Robinhood API 凭据

安装

  1. 克隆仓库:

    git clone https://github.com/rohitsingh-iitd/robinhood-mcp-server
    cd robinhood-mcp-server
    
  2. 设置虚拟环境(推荐):

    # Create a virtual environment
    python -m venv venv
    
    # Activate the virtual environment
    # On macOS/Linux:
    source venv/bin/activate
    # On Windows:
    # .\venv\Scripts\activate
    
  3. 安装依赖项:

    pip install -r requirements.txt
    

配置

  1. 在项目根目录中创建 .env 文件,内容如下:

    # Required
    ROBINHOOD_API_KEY=your_api_key_here
    ROBINHOOD_PRIVATE_KEY=your_base64_encoded_private_key_here
    
    # Optional (with defaults)
    HOST=0.0.0.0
    PORT=8000
    WEBSOCKET_PORT=8001
    DEBUG=False
    LOG_LEVEL=INFO
    LOG_FILE=robinhood_mcp_server.log
    RATE_LIMIT_ENABLED=True
    RATE_LIMIT_REQUESTS=100
    RATE_LIMIT_PERIOD=60
    
  2. 将占位值替换为你实际的 Robinhood API 凭据。

运行服务

使用以下命令启动服务:

python -m src.main

这将启动:

  • REST API 服务,地址为 http://localhost:8000
  • WebSocket 服务,地址为 ws://localhost:8001
在生产环境中运行

在生产环境中使用时,可考虑使用生产级 ASGI 服务,例如搭配 Gunicorn 使用 Uvicorn:

pip install gunicorn uvicorn[standard]
gunicorn src.main:app --worker-class uvicorn.workers.UvicornWorker --bind 0.0.0.0:8000

运行服务

使用以下命令启动服务:

python -m src.main

这将同时启动 REST API 服务(默认端口为 8000)和 WebSocket 服务(默认端口为 8001)。

REST API 端点

身份验证
  • GET /auth/status - 检查身份验证状态
账户
  • GET /account - 获取账户信息
  • GET /account/holdings - 获取账户持仓(可选查询参数:asset_code)
市场数据
  • GET /market/best-price - 获取最佳买入/卖出价格(可选查询参数:symbol)
  • GET /market/estimated-price - 获取指定数量的预估价格(必需查询参数:symbol、side、quantity)
交易
  • GET /trading/pairs - 获取可用交易对(可选查询参数:symbol)
  • GET /trading/orders - 获取订单历史记录(可选查询参数:status)
  • GET /trading/orders/{id} - 获取订单详情
  • POST /trading/orders - 下达新订单
    • 必需字段:symbol、side、quantity
    • 可选字段:type、price、time_in_force、stop_price
  • DELETE /trading/orders/{id} - 取消订单

WebSocket API

WebSocket 服务提供市场数据和订单状态的实时更新。

连接

连接到以下地址的 WebSocket 服务:

ws://localhost:8001
市场数据订阅

订阅市场数据更新:

{
  "type": "market_data",
  "action": "subscribe",
  "symbols": ["BTC-USD", "ETH-USD"]
}

取消订阅市场数据更新:

{
  "type": "market_data",
  "action": "unsubscribe",
  "symbols": ["BTC-USD", "ETH-USD"]
}
订单更新订阅

订阅订单更新:

{
  "type": "orders",
  "action": "subscribe"
}

取消订阅订单更新:

{
  "type": "orders",
  "action": "unsubscribe"
}
Ping/Pong

发送 ping 以保持连接:

{
  "type": "ping"
}

服务将作出如下响应:

{
  "type": "pong"
}

测试

运行验证测试,确保服务正常工作:

python -m tests.test_server

配置选项

可在 .env 文件中配置以下环境变量:

  • ROBINHOOD_API_KEY - Robinhood API 密钥
  • ROBINHOOD_PRIVATE_KEY - 经过 base64 编码的私钥
  • HOST - 服务主机(默认值:0.0.0.0)
  • PORT - REST API 服务端口(默认值:8000)
  • DEBUG - 启用调试模式(默认值:False)
  • LOG_LEVEL - 日志级别(默认值:INFO)
  • LOG_FILE - 日志文件路径(默认值:robinhood_mcp_server.log)
  • RATE_LIMIT_ENABLED - 启用速率限制(默认值:True)
  • RATE_LIMIT_REQUESTS - 每个时间段内的最大请求数(默认值:100)
  • RATE_LIMIT_PERIOD - 速率限制周期(秒,默认值:60)

安全注意事项

  • API 密钥和机密信息存储在环境变量中,绝不写入代码
  • 妥善处理所有敏感数据
  • 为所有 API 端点实施输入验证
  • 强制执行速率限制以防止滥用
  • 妥善处理错误,避免泄露敏感信息

故障排除

如果遇到问题:

  1. 查看日志文件以获取详细的错误信息
  2. 确认 API 凭据正确
  3. 确保网络连接正常
  4. 检查 Robinhood API 是否可用

许可证

本项目采用 MIT 许可证授权,详情请参阅 LICENSE 文件。

免责声明

对于因使用本项目而可能造成的任何损失或损害,作者概不负责。

smithery badge

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。