mcpField
F
Fyers Mcp Server

Fyers Mcp Server

本地服务
github.com/quantabox金融数据769 周前更新

关于 Fyers Mcp Server

Fyers API v3 的 MCP 服务,让 Claude Desktop 用户通过自动 OAuth 认证管理投资组合、订单和实时行情。提供从认证到交易操作的一体化工具集。

主要功能

  1. 01自动 OAuth 认证与令牌续期
  2. 02查看持仓、资金和账户资料
  3. 03下单、修改及取消订单
  4. 04查询订单和交易历史
  5. 05获取多个标的实时行情

适用场景

  1. 01检查账户资金、持仓和当前仓位
  2. 02提交市价或限价交易订单
  3. 03查询多个股票标的的实时报价

MCP 相关

该服务向 MCP 客户端提供 Fyers API v3 的认证、投资组合、订单管理和行情工具,可与 Claude Desktop 配合使用。

配置

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

暂未收录安装方式

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

代码仓库

工具

还没有获取到工具列表

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

详细介绍

Fyers MCP 服务

适用于 Fyers API v3 的 MCP(Model Context Protocol)服务,支持自动 OAuth 身份验证

Python 3.10+ Fyers API v3 License: MIT

功能全面的 MCP 服务,可通过安全、自动化的身份验证流程,让 Claude Desktop 与 Fyers 交易平台交互。支持所有主要交易操作,包括投资组合管理、下单和实时市场数据。

🎬 演示

✨ 功能

🔐 智能身份验证
  • 一键 OAuth 流程,自动处理浏览器
  • 在 .env 文件中持久化存储令牌
  • 支持会话管理和自动刷新
📊 完整交易工具集
  • 投资组合管理:持仓、头寸、资金、个人资料
  • 订单管理:下单、修改、取消订单
  • 市场数据:多个标的的实时行情
  • 订单历史:完整的订单和交易记录
🚀 可用于生产环境
  • 完整的错误处理,提供详细的错误消息
  • 类型安全,包含参数验证
  • 全面的日志记录,便于调试
  • 通过简单配置与 Claude Desktop 集成

🚀 快速开始

前置要求
1. 安装
# Clone the repository
git clone https://github.com/quantabox/fyers-mcp-server.git
cd fyers-mcp-server

# Install dependencies using uv (recommended)
curl -LsSf https://astral.sh/uv/install.sh | sh
uv sync

# Or install with pip
pip install .
2. 获取 Fyers API 凭据
  1. 创建 Fyers API 应用:

    • 访问 Fyers API Dashboard
    • 创建新应用,并将重定向 URI 设为:http://localhost:8080/
    • 记下你的 App ID 和 Secret Key
  2. 配置环境:

    cp .env.example .env
    

    编辑 .env 文件:

    FYERS_CLIENT_ID=YOUR_APP_ID-100     # e.g., ABC123XYZ-100
    FYERS_SECRET_KEY=YOUR_SECRET_KEY    # Secret from Fyers app
    FYERS_REDIRECT_URI=http://localhost:8080/
    
3. 配置 Claude Desktop

将以下内容添加到 Claude Desktop 配置文件:

macOS:~/Library/Application Support/Claude/claude_desktop_config.json
Windows:%APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "fyers-mcp-server": {
      "command": "uv",
      "args": [
        "run", 
        "--directory",
        "/path/to/fyers-mcp-server",
        "python",
        "fyers_mcp_complete.py"
      ],
      "env": {
        "PYTHONWARNINGS": "ignore"
      }
    }
  }
}
4. 首次运行
  1. 重启 Claude Desktop
  2. 进行身份验证:在 Claude 中输入:authenticate
  3. 浏览器将打开 → 登录 Fyers → 自动捕获令牌
  4. 开始交易:现在可以使用全部 11 个工具!

🛠️ 可用工具

身份验证与个人资料
  • authenticate() - 一键 OAuth 身份验证
  • check_auth_status() - 检查当前身份验证状态
  • get_profile() - 用户个人资料信息
投资组合与资金
  • get_funds() - 账户余额和保证金详情
  • get_holdings() - 包含盈亏信息的投资组合持仓
  • get_positions() - 当前交易头寸
订单与交易
  • place_order(symbol, quantity, order_type, side, ...) - 下新订单
  • modify_order(order_id, quantity, limit_price, ...) - 修改现有订单
  • cancel_order(order_id) - 取消待处理的订单
  • get_orders() - 订单历史和状态
市场数据
  • get_quotes(symbols) - 多个标的的实时行情

📖 使用示例

投资组合分析
# Check account balance
get_funds()

# View all holdings with P&L
get_holdings()

# Check current positions
get_positions()
订单管理
# Place a market order
place_order("NSE:SBIN-EQ", 10, "MARKET", "BUY")

# Place a limit order
place_order("NSE:RELIANCE-EQ", 5, "LIMIT", "BUY", limit_price=2500)

# Modify an order
modify_order("ORDER_ID", quantity=15, limit_price=2550)

# Cancel an order
cancel_order("ORDER_ID")
市场数据
# Get live quotes
get_quotes("NSE:SBIN-EQ,NSE:RELIANCE-EQ,NSE:TCS-EQ")

🔧 配置选项

订单类型
  • MARKET - 市价单(立即执行)
  • LIMIT - 限价单(按指定价格执行)
  • STOP - 止损单
  • STOPLIMIT - 止损限价单
产品类型
  • MARGIN - 保证金交易(杠杆日内交易)
  • CNC - 现金交割(交割)
  • INTRADAY - 日内交易
  • BO - 括号订单
  • CO - 保护订单
有效期选项
  • DAY - 当个交易日有效
  • IOC - 立即成交或取消
  • GTD - 截止日期前有效

🐛 故障排除

常见问题

1. 身份验证失败

# Check credentials in .env file
cat .env | grep FYERS

# Verify app configuration at https://myapi.fyers.in/dashboard/

2. Claude Desktop 连接问题

# Test MCP server directly
cd /path/to/fyers-mcp-server
uv run python fyers_mcp_complete.py

# Check Claude Desktop logs (macOS)
tail -f ~/Library/Logs/Claude/mcp.log

3. 下单错误

  • 验证标的代码格式:股票应使用 NSE:SYMBOL-EQ
  • 检查市场交易时间(印度标准时间上午 9:15 - 下午 3:30)
  • 确保资金/保证金充足
调试模式

启用详细日志:

export LOG_LEVEL=DEBUG
uv run python fyers_mcp_complete.py

🚧 开发

项目结构
fyers-mcp-server/
├── fyers_mcp_complete.py    # Main MCP server
├── pyproject.toml          # Dependencies
├── .env.example           # Environment template
├── claude_config.json     # Claude Desktop config
└── README.md             # This file
添加新功能
  1. Fork 此仓库
  2. 创建功能分支:git checkout -b feature/new-tool
  3. 添加 MCP 工具:使用 @mcp.tool() 装饰器
  4. 使用 Claude Desktop 进行测试
  5. 提交拉取请求
测试
# Install development dependencies
uv sync --dev

# Run tests
uv run pytest

# Type checking
uv run mypy fyers_mcp_complete.py

📋 API 参考

身份验证流程
graph TD
    A[Claude: authenticate] --> B[Generate Auth URL]
    B --> C[Open Browser]
    C --> D[User Login]
    D --> E[Auth Code Capture]
    E --> F[Exchange for Token]
    F --> G[Store in .env]
    G --> H[Ready for Trading]
错误处理

所有函数都会返回标准化响应:

  • ✅ 成功:提供明确的确认信息和相关数据
  • ❌ 错误:提供详细的错误信息和故障排查提示

🤝 贡献

欢迎贡献!详情请参阅我们的贡献指南。

贡献方向
  • WebSocket 实时数据流
  • 高级订单类型(OCO、冰山订单)
  • 投资组合分析与报告
  • 期权链分析工具
  • 风险管理功能

📄 许可证

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

⚠️ 免责声明

本软件仅用于教育和开发目的。交易涉及财务风险。用户需对自己的交易决策负责,并应在进行实盘交易前,在模拟环境中进行充分测试。

🔗 链接

📊 状态

  • 当前版本:1.0.0
  • API 兼容性:Fyers API v3.1.7
  • Python 支持:3.10+
  • 可用工具:11/11 ✅
  • 可用于生产环境:是 ✅

为交易社区倾心打造 ❤️
借助 Claude 的智能实现算法交易

评论

支持 Markdown

第一次接触 MCP?

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

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