基于Python的交易助手,连接到Zerodha MCP服务器以帮助用户管理其交易账户。
git clone https://github.com/mtwn105/zerodha-mcp-server-client.git
cd zerodha-mcp-server-client
python -m venv venv
source venv/bin/activate # 在Windows上:venv\Scripts\activate
pip install -r requirements.txt
# 复制示例环境文件
cp .env.example .env
# 使用您的凭据编辑.env文件
.env文件:# 服务器配置
ZERODHA_API_KEY=your_api_key
ZERODHA_API_SECRET=your_api_secret
PORT=8001
SERVER_MODE=sse # 或 stdio
# 客户端配置
MCP_HOST=localhost
MCP_PORT=8001
OPENAI_API_KEY=your_openai_api_key
# GOOGLE_API_KEY=your_google_api_key
服务器提供了一组工具来与Zerodha交易平台互动。要启动服务器:
确保您的.env文件已正确配置了您的Zerodha API凭据。
使用以下方法之一启动服务器:
# 使用环境变量
python server.py
# 或使用命令行参数
python server.py --api-key your_api_key --api-secret your_api_secret --port 8001 --mode sse
服务器提供的工具包括:
get_login_url:获取用户认证登录URLget_access_token:使用请求令牌生成访问令牌get_user_profile:获取用户的Zerodha资料信息get_margins:获取可用保证金和资金详情get_holdings:获取投资组合持仓get_positions:获取当前仓位get_orders:获取当天的所有订单get_order_history:获取特定订单的历史get_order_trades:获取由订单生成的交易place_order:下单modify_order:修改现有订单cancel_order:取消订单该项目提供了三种客户端实现方式:
client/agno_client.py)client/agno_gradio_client.py)client/google_adk_client.py)所有客户端都连接到MCP服务器,并提供用于交易操作的交互界面。
.env文件中包含OPENAI_API_KEY。# 使用来自.env文件的环境变量
python client/agno_client.py
# 使用命令行参数
python client/agno_client.py --host localhost --port 8001
# 使用组合(命令行参数优先)
MCP_HOST=localhost MCP_PORT=8001 python client/agno_client.py --host otherhost --port 9000
GOOGLE_API_KEY环境变量(并在.env中取消注释)或使用应用默认凭证(运行gcloud auth application-default login)进行了Google AI的身份验证。# 使用来自.env文件的环境变量
python client/google_adk_client.py
# 使用命令行参数
python client/google_adk_client.py --host localhost --port 8001
# 使用组合(命令行参数优先)
MCP_HOST=localhost MCP_PORT=8001 python client/google_adk_client.py --host otherhost --port 9000
.env文件中包含OPENAI_API_KEY。# 使用来自.env文件的环境变量
python client/agno_gradio_client.py
# 使用命令行参数进行服务器配置
python client/agno_gradio_client.py --host localhost --port 8001
打开您的网络浏览器并导航到终端显示的URL(通常是http://localhost:7860)。
使用网页界面:
Gradio界面提供:
两个客户端都支持通过多个来源进行配置,优先级如下:
.env文件变量配置选项:
MCP_HOST 和 MCP_PORT--host 和 --port.env文件变量:MCP_HOST,MCP_PORT,OPENAI_API_KEY 和 GOOGLE_API_KEY默认值(如果没有提供配置):
客户端会自动从项目根目录下的.env文件加载环境变量。确保您的.env文件包含必要的配置:
# 客户端配置
MCP_HOST=localhost
MCP_PORT=8001
OPENAI_API_KEY=your_openai_api_key
# GOOGLE_API_KEY=your_google_api_key
客户端将自动使用提供的配置连接到MCP服务器。
连接后,您可以使用自然语言命令与助手互动。例如:
要退出客户端,请在提示时键入'quit'。
client/agno_client.py:使用Agno实现的MCP客户端client/google_adk_client.py:使用Google ADK实现的MCP客户端client/agno_gradio_client.py:使用Gradio和Agno实现的网页界面server.py:与Zerodha API集成的MCP服务器实现generate_token.py:生成访问令牌的实用程序requirements.txt:项目依赖项.env:环境配置本项目根据Apache许可证2.0发布 - 查看LICENSE文件了解详细信息。