交易API服务

将Zerodha Kite交易API(如用户资料、持仓、下单)封装为MCP服务器,使Claude Desktop等MCP客户端可编程化访问交易账户。

  • by Athul28
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 athul28/zerodha-mcp-server

使用说明

🚀 Kite MCP服务器

该项目将Zerodha Kite API(配置文件、持有量、订单下达)作为MCP(模型上下文协议)服务器公开,以便Claude Desktop(或任何MCP客户端)可以通过编程与您的交易账户进行交互。

内置于 包子 +模型上下文协议SDK。


📦 设置

1.克隆和安装

git clone <your-repo-url>
cd kite-test
bun install

2.创建风筝交易应用程序

3.获取访问令牌

为了得到你的 访问令牌:

  1. 在浏览器中打开此URL(替换 xxx 使用API密钥):

    https://kite.zerodha.com/connect/login?v=3&api_key=xxx
    
  2. 登录您的Zerodha帐户。
    登录后,您将被重定向到应用程序的重定向URL,其中包含 request_token 在URL中。

  3. 交换 request_token 为了一个 access_token 通过向Kite发出POST请求 /session/token API,使用 api_key, api_secret,以及 request_token.
    (参见 Kite Connect文档 了解详情。)

使用结果 access_token 在你的 .env 文件。

4.环境变量

创建一个 .env 项目根目录中的文件:

API_KEY=your_api_key
API_SECRET=your_api_secret
ACCESS_TOKEN=your_access_token

▶️ 运行服务器

启动MCP服务器:

bun run server.ts

这将使用以下工具通过stdio启动MCP服务器:

  • 添加 → 简单加法(a + b)
  • 获取个人资料 → 获取Zerodha用户配置文件
  • 持有股份 → 获取Zerodha账户持有量
  • (可选) 下订单 → 下达交易订单(默认禁用)

还有一个资源:

  • greeting://{name} → 返回动态问候语(示例资源)

💻 连接到克劳德桌面

  1. 打开克劳德桌面

  2. 首选 设置→ MCP服务器→ Add

  3. 指向克劳德 mcp.json 文件类型:

     ```json
     {
         "mcpServers": {
             "kite": {
                 "command": "bun",
                 "args": ["run", "server.ts"]
             }
         }
     }
     ```
    
  4. 重新启动克劳德→ 您的MCP服务器将显示为 kite


🧪 Claude中的用法示例

连接后,您可以问Claude:

  • 使用以下命令获取您的Zerodha个人资料 get-profile
  • 列出您的资产 get-holdings
  • 通过以下方式下实时订单 place-order

⚠️ 警告

这 place-order 该工具是真实的,将在您的Zerodha账户中进行实时交易。
除非你明确想交易,否则不要发表评论。


🛠️ 技术栈