mcpField
K
Kite MCP Server

Kite MCP Server

本地服务
mcp.kite.trade金融数据32716 周前更新

关于 Kite MCP Server

Kite MCP Server 是 Zerodha Kite Connect 交易 API 的 MCP 服务,面向使用 Kite 账户的交易者。它让 AI 助手通过统一接口查询行情、管理持仓并下单,官方提供免安装的托管版本。

主要功能

  1. 01查看持仓、仓位、保证金与共同基金投资
  2. 02下单、修改、撤单及订单历史查询
  3. 03GTT 订单的查询与管理
  4. 04实时报价、LTP、OHLC 与历史行情数据
  5. 05大数据集自动分页
  6. 06支持 stdio、HTTP、SSE 等部署模式

适用场景

  1. 01通过 AI 助手查看 Kite 账户的持仓与保证金
  2. 02让 AI 助手查询行情并分析历史价格数据
  3. 03在本地部署只读实例,排除下单类工具

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"kite": {
"command": "npx",
"args": [
"-y",
"mcp-remote"
]
}
}
}
启动命令npx -y mcp-remote

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

安装包
npmmcp-remote

工具

22

收录的工具列表 · 更新于 3 周前

参数类型必填说明
order_idstring是订单 ID
varietyenum是订单类型regular | co | amo | iceberg | auction

详细介绍

Kite MCP 服务

一个模型上下文协议(MCP)服务,可为 AI 助手提供对 Kite Connect 交易 API 的安全访问。该服务使 AI Agent 能够通过标准化接口获取市场数据、管理投资组合并执行交易。

交易者速览

想使用 AI 管理你的 Kite 交易账户?只需将 https://mcp.kite.trade/mcp 添加到 AI 客户端配置中即可。无需安装或 API 密钥——服务已托管,可直接使用。

功能

  • 投资组合管理:查看持仓、头寸、保证金和共同基金投资
  • 订单管理:下单、修改和取消订单,并查看完整订单历史记录
  • GTT 订单:管理触发前有效(Good Till Triggered)订单
  • 市场数据访问:实时行情、历史数据、OHLC 数据
  • 分页支持:自动对大型数据集(持仓、订单、交易)进行分页
  • 全面覆盖:实现了大多数 Kite Connect API 端点
  • 多种部署模式:stdio、HTTP、SSE 和混合模式(生产环境)
  • 内置文档:运行时自动提供文档

快速开始

托管版本(推荐)

开始使用的最简单方式是使用我们托管在 mcp.kite.trade 上的版本。/mcp 和 /sse 端点均可用——你无需安装或提供 API 密钥。

**快速设置:**将以下内容添加到 MCP 配置中:

https://mcp.kite.trade/mcp

**推荐:**使用新的 HTTP 模式(/mcp 端点),以获得更好的性能和可靠性。你可以使用 mcp-remote 连接到托管服务。

如需使用自己的 API 密钥自托管,请按照以下安装步骤操作。

先决条件
  • 使用托管版本(推荐):无需任何准备!直接使用 https://mcp.kite.trade/mcp 即可
  • 自托管:Go 1.21 或更高版本
  • 自托管:有效的 Kite Connect API 凭据
开始使用
git clone https://github.com/zerodha/kite-mcp-server
cd kite-mcp-server
配置

创建一个 .env 文件,填写你的 Kite Connect 凭据:

KITE_API_KEY=your_api_key
KITE_API_SECRET=your_api_secret
APP_MODE=http
APP_PORT=8080
APP_HOST=localhost
PUBLIC_BASE_URL=http://localhost:8080

你也可以使用提供的 justfile 初始化配置。

just init-env
运行服务
# Build and run
go build -o kite-mcp-server
./kite-mcp-server

# Or run directly
go run main.go

服务启动后,会在 http://localhost:8080/ 提供状态页面。

客户端集成

设置指南
Claude Desktop(托管模式)

使用托管版本时,将以下内容添加到 Claude Desktop 配置文件(~/.config/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "kite": {
      "command": "npx",
      "args": ["mcp-remote", "https://mcp.kite.trade/mcp"]
    }
  }
}
Claude Desktop(HTTP 模式)

将以下内容添加到 Claude Desktop 配置文件(~/.config/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "kite": {
      "command": "npx",
      "args": ["mcp-remote", "http://localhost:8080/mcp", "--allow-http"],
      "env": {
        "APP_MODE": "http",
        "KITE_API_KEY": "your_api_key",
        "KITE_API_SECRET": "your_api_secret"
      }
    }
  }
}
Claude Desktop(SSE 模式)

将以下内容添加到 Claude Desktop 配置文件(~/.config/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "kite": {
      "command": "npx",
      "args": ["mcp-remote", "http://localhost:8080/sse", "--allow-http"],
      "env": {
        "APP_MODE": "sse",
        "KITE_API_KEY": "your_api_key",
        "KITE_API_SECRET": "your_api_secret"
      }
    }
  }
}
Claude Desktop(stdio 模式)

对于自托管安装,你必须先构建二进制文件:

go build -o kite-mcp-server

然后将以下内容添加到 Claude Desktop 配置文件(~/.config/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "kite": {
      "command": "/full/path/to/your/kite-mcp-server",
      "env": {
        "APP_MODE": "stdio",
        "KITE_API_KEY": "your_api_key",
        "KITE_API_SECRET": "your_api_secret"
      }
    }
  }
}

**重要:**请使用构建好的二进制文件的完整绝对路径。例如:

  • /home/username/kite-mcp-server/kite-mcp-server(Linux)
  • /Users/username/kite-mcp-server/kite-mcp-server(macOS)
  • C:\Users\username\kite-mcp-server\kite-mcp-server.exe(Windows)
其他 MCP 客户端

对于其他兼容 MCP 的客户端,可使用托管端点 https://mcp.kite.trade/mcp 搭配 mcp-remote,或将客户端配置为直接连接 HTTP 端点。

可用工具

设置与身份验证
  • login - 登录 Kite API 并生成授权链接
市场数据
  • get_quotes - 获取实时市场报价
  • get_ltp - 获取最新成交价
  • get_ohlc - 获取 OHLC 数据
  • get_historical_data - 历史价格数据
  • search_instruments - 搜索交易工具
投资组合与账户
  • get_profile - 用户个人资料信息
  • get_margins - 账户保证金
  • get_holdings - 投资组合持仓
  • get_positions - 当前仓位
  • get_mf_holdings - 共同基金持仓
订单与交易
  • place_order - 下单
  • modify_order - 修改现有订单
  • cancel_order - 取消订单
  • get_orders - 列出所有订单
  • get_trades - 交易历史
  • get_order_history - 订单执行历史
  • get_order_trades - 获取指定订单的成交记录
GTT 订单
  • get_gtts - 列出 GTT 订单
  • place_gtt_order - 创建 GTT 订单
  • modify_gtt_order - 修改 GTT 订单
  • delete_gtt_order - 删除 GTT 订单

API 覆盖范围

此服务实现了大部分 Kite Connect API 端点,并提供额外的工具。

开发

开发环境

此项目包含一个 Nix flake,可提供一致的开发环境:

# Enter development shell
nix develop

# Or with direnv
direnv allow
使用 Just 命令

安装 Just,以便方便地运行开发命令:

just build      # Build the project
just run        # Run the server
just test       # Run tests
just lint       # Format and lint code
just coverage   # Generate coverage report
运行测试

要求:

  • Go 1.23+,并启用 GOEXPERIMENT=synctest(定时相关测试必需)
# Run all tests
just test

# With coverage
just coverage

# With race detector
just test-race

# Direct go command (if you prefer)
CGO_ENABLED=0 GOEXPERIMENT=synctest go test -v ./...
Synctest 集成

此项目的时间相关测试(会话过期、时钟偏差容差)需要 Go 的 synctest 包。所有定时测试都使用 synctest.Run(),以实现:

  • 快速执行:时间相关测试在毫秒内完成,而非数分钟
  • 确定性计时:避免因计时不稳定导致的测试失败
  • 受控时间:测试可以推进时间,无需实际等待

justfile 会在所有测试命令中自动包含 GOEXPERIMENT=synctest。

配置选项

环境变量默认值描述
KITE_API_KEY必需您的 Kite Connect API 密钥
KITE_API_SECRET必需您的 Kite Connect API 密钥
APP_MODEhttp服务模式:stdio、http、sse 或 hybrid
APP_PORT8080服务端口(HTTP/SSE/hybrid 模式)
APP_HOSTlocalhost服务主机/绑定地址(HTTP/SSE/hybrid 模式)
PUBLIC_BASE_URLderived用于面向浏览器的身份验证链接的公共基础 URL
EXCLUDED_TOOLS(empty)要从注册中排除的工具名称列表,以逗号分隔

**注意:**在生产环境中,我们使用 hybrid 模式,该模式支持 /sse 和 /mcp 端点,可根据不同客户端的需求提供 HTTP 和 SSE 协议。

排除工具

您可以将逗号分隔的工具名称列表设置到 EXCLUDED_TOOLS 环境变量中,以排除特定工具。这适用于创建只读实例。

示例:

EXCLUDED_TOOLS=place_order,modify_order,cancel_order

托管版本 mcp.kite.trade 出于安全考虑,排除了可能造成破坏的交易操作。如需使用其他操作,您可以生成自己的 API 密钥并在本地运行服务。

贡献

  1. Fork 此仓库
  2. 创建功能分支
  3. 进行更改
  4. 为新功能添加测试
  5. 运行 just lint 和 just test
  6. 提交拉取请求

许可证

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

支持

如需反馈错误或提出一般建议,请使用 GitHub Discussions。

如需查看 Kite Connect API 文档,请访问:https://kite.trade/docs/connect/

评论

支持 Markdown

第一次接触 MCP?

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

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