mcpField
Z
Zerodha Kite Connect MCP Server

Zerodha Kite Connect MCP Server

本地服务
github.com/manucr619云与基础设施080 周前更新

关于 Zerodha Kite Connect MCP Server

这是一个用于访问 Zerodha Kite Connect 交易和投资组合功能的 Cloudflare Worker MCP 服务,面向 Zerodha 账户用户,向 MCP 客户端提供身份验证、持仓、仓位、GTT 订单和历史市场数据。

主要功能

  1. 01Zerodha 身份验证与会话管理
  2. 02获取持仓和仓位
  3. 03获取 GTT 订单
  4. 04获取历史 K 线数据
  5. 05使用 Cloudflare KV 存储令牌

适用场景

  1. 01查看 Zerodha 持仓和仓位
  2. 02通过 MCP 客户端获取 GTT 订单
  3. 03查询指定证券的历史数据

MCP 相关

向 Claude Desktop 等 MCP 客户端提供 Zerodha Kite Connect 身份验证、投资组合、订单和历史数据方法,并返回兼容 MCP 的响应。

配置

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

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

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

详细介绍

Zerodha Kite Connect MCP 服务

这是一个 Cloudflare Worker,作为 MCP(Model Context Protocol)服务运行,用于与 Zerodha Kite Connect API 交互。它提供了全面的接口,可通过 Zerodha 进行交易和投资组合管理。

功能

  • Zerodha 身份验证和会话管理
  • 投资组合管理(持仓、仓位)
  • GTT(触发前有效)订单
  • 历史数据检索
  • 与 MCP 兼容的响应,可与 Claude Desktop 和其他 MCP 客户端无缝集成

设置

先决条件
  • Zerodha Kite Connect API 凭据(API Key 和 Secret)
  • Cloudflare 账户
部署
  1. 克隆此仓库

  2. 安装依赖项:

    npm install
    
  3. 创建配置文件:

    cp wrangler.jsonc.example wrangler.jsonc
    
  4. 在 wrangler.jsonc 文件中配置 Zerodha API 凭据:

    • 更新 ZERODHA_API_KEY 和 ZERODHA_API_SECRET 的值
    • 注意:此文件已添加到 gitignore,以防止提交敏感信息
  5. 在 Cloudflare 中创建 KV 命名空间:

    wrangler kv:namespace create ZERODHA_KV
    
  6. 在 wrangler.jsonc 文件中更新 KV 命名空间 ID

  7. 为 crypto 模块添加 Node.js 兼容性:

    {
      "compatibility_date": "2023-05-18",
      "compatibility_flags": ["nodejs_compat"],
      ...
    }
    
  8. 部署 Worker:

    npx wrangler deploy
    

可用方法

身份验证
  • getLoginUrl() - 使用已配置的 API Key 生成 Zerodha 登录 URL
  • handleRedirect(requestToken) - 登录成功后处理请求令牌
  • rdhandle(requestToken) - 用于处理身份验证重定向的替代端点
投资组合管理
  • getHoldings() - 获取 Zerodha 的股票持仓列表
  • getPositions() - 获取当日和净仓位
订单
  • getGTTOrders() - 获取触发前有效订单
市场数据
  • getHistoricalData(instrumentToken, interval, from, to, continuous, oi) - 获取指定交易品种的历史蜡烛图数据

使用方法

配合 Claude Desktop 或其他 MCP 客户端使用

部署后,你可以在 Claude Desktop 中将 Worker 添加为 MCP 服务:

  1. 前往 Settings > MCP Servers
  2. 使用你的 Worker URL 添加新服务(例如:https://zerodha-mcp.your-subdomain.workers.dev)
  3. Claude 会自动发现可用方法
使用 JavaScript
// Example of using the MCP worker in JavaScript
const loginUrl = await zerodhaWorker.getLoginUrl();
console.log('Please login at:', loginUrl);

// Authentication flow
window.location.href = loginUrl;
// After redirect back with request_token in URL...
const urlParams = new URLSearchParams(window.location.search);
const requestToken = urlParams.get('request_token');

// Get holdings after authentication
const holdingsResponse = await zerodhaWorker.getHoldings();
const holdings = JSON.parse(holdingsResponse.content[0].text);
console.log('Your holdings:', holdings);

// Get historical data
const historicalData = await zerodhaWorker.getHistoricalData(
  '5633',           // instrument_token (NSE:INFY)
  'minute',         // interval
  '2023-01-01 09:15:00', // from
  '2023-01-01 09:30:00', // to
  false,            // continuous
  false             // oi
);
console.log('Historical data:', JSON.parse(historicalData.content[0].text));

扩展功能

要添加更多 Zerodha API 功能:

  1. 在 src/index.js 中向 ZerodhaWorker 类添加新方法
  2. 使用 Kite Connect API 实现所需的 Zerodha API 调用
  3. 按照 MCP 规范格式化响应(使用 content 数组格式)
  4. 更新 docs.json 文件,记录新方法
  5. 部署更新后的 Worker

响应格式

所有方法均以兼容 MCP 的格式返回响应:

{
  "content": [
    {
      "type": "text",
      "text": "{ ... data as JSON string ... }"
    }
  ]
}

身份验证流程

  1. 用户访问由 getLoginUrl() 生成的登录 URL
  2. 登录成功后,Zerodha 会将用户重定向至回调 URL,并附带请求令牌
  3. /callback 或 /rdhandle 端点处理请求令牌
  4. 获取访问令牌并将其存储在 KV 命名空间中
  5. 后续 API 调用会使用已存储的访问令牌

安全性

  • API Key 和 Secret 安全地存储在 Cloudflare 环境变量中
  • 访问令牌存储在 Cloudflare KV 命名空间中
  • 包含凭据的 wrangler.jsonc 文件已添加到 gitignore,以防意外泄露
  • 仅开放必要的端点,尽可能缩小攻击面

开发

要在本地运行 Worker:

npx wrangler dev

要测试 Worker:

npx wrangler dev --test

API 文档

有关 Zerodha Kite Connect API 的更多信息,请参阅官方文档:

MCP 文档

如需了解有关 Model Context Protocol(MCP)的更多信息,请参阅:

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

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

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