跳转至

板块 / 筛选 / 元数据

MCP 工具总览

futu_get_suspend

  • Scope: qot:read
  • Python SDK 等价: OpenQuoteContext.get_multi_points_history_kline (suspend flag)
  • 路由: MCP JSON-RPC tools/call name = "futu_get_suspend"

说明:

Suspend (trading halt) days for securities in a date range. Python SDK: OpenQuoteContext.get_suspend.

请求参数:

字段 类型 必填 Alias 说明
symbols array of string ✅ stocks, code_list, symbol_list, security_list Array of security symbols in MARKET.CODE format (e.g. ["HK.00700", "HK.09988"]). Alias: stocks / code_list / symbol_list / security_list
begin_time string ✅ begin, start_time, from Begin date (yyyy-MM-dd); alias: begin / start_time / from
end_time string ✅ end, to End date (yyyy-MM-dd); alias: end / to

⚠️ 未知字段: 启用 deny_unknown_fields — 任何未在表里的字段会返 unknown field error(之前静默 drop)。

JSON-RPC 调用示例:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "futu_get_suspend",
    "arguments": {
      "symbols": [
        "HK.00700"
      ],
      "begin_time": "2026-01-01",
      "end_time": "2026-12-31"
    }
  }
}

返回结构: 与对应 REST endpoint / Python SDK 返回结构一致的 JSON 文本。失败时 MCP CallToolResult.is_error=true + 内容带 {"error": "...", "status": "error"}。

futu_get_stock_filter

  • Scope: qot:read
  • Python SDK 等价: OpenQuoteContext.get_stock_filter
  • 路由: MCP JSON-RPC tools/call name = "futu_get_stock_filter"

说明:

Stock filter / scanner (minimal: market + pagination). Python SDK: OpenQuoteContext.get_stock_filter. For condition-based filters (PE/cap/volume/etc.) use REST /api/stock-filter directly.

请求参数:

字段 类型 必填 Alias 说明
market i32 ✅ — Market code accepted by the StockFilter backend: int 1=HK, 2=HK_FUTURE, 11=US, 21=SH/CN, 22=SZ, 31=SG, 41=JP, 61=MY; or string HK/HK_FUTURE/US/SH/SZ/CN/SG/JP/MY.
begin i32 ✓ 默认 default offset, skip Pagination begin index (default 0); alias: offset / skip
num i32 ✓ 默认 default_stock_filter_num count, max_count, req_count Max rows (0-200, default 50); alias: count / max_count / req_count

⚠️ 未知字段: 启用 deny_unknown_fields — 任何未在表里的字段会返 unknown field error(之前静默 drop)。

运行时校验: 此 request 结构带 validate() 方法 — 在 schema 之外加额外的必填字段 / 枚举取值校验。

JSON-RPC 调用示例:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "futu_get_stock_filter",
    "arguments": {
      "market": "HK",
      "begin": "2026-01-01",
      "num": 50
    }
  }
}

返回结构: 与对应 REST endpoint / Python SDK 返回结构一致的 JSON 文本。失败时 MCP CallToolResult.is_error=true + 内容带 {"error": "...", "status": "error"}。

futu_get_ipo_list

  • Scope: qot:read
  • Python SDK 等价: OpenQuoteContext.get_ipo_list
  • 路由: MCP JSON-RPC tools/call name = "futu_get_ipo_list"

说明:

Upcoming / recent IPOs for a market. Python SDK: OpenQuoteContext.get_ipo_list. market: 1=HK, 2=HK_FUTURE, 11=US, 21=SH/CN, 22=SZ, 31=SG, 41=JP, 61=MY.

请求参数:

字段 类型 必填 Alias 说明
market i32 ✅ — Market code accepted by the IPO list backend. Accept int (1=HK, 2=HK_FUTURE, 11=US, 21=SH/CN, 22=SZ, 31=SG, 41=JP, 61=MY) OR string ("HK" / "HK_FUTURE" / "US" / "SH" / "SZ" / "CN" / "SG" / "JP" / "MY").

⚠️ 未知字段: 启用 deny_unknown_fields — 任何未在表里的字段会返 unknown field error(之前静默 drop)。

运行时校验: 此 request 结构带 validate() 方法 — 在 schema 之外加额外的必填字段 / 枚举取值校验。

JSON-RPC 调用示例:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "futu_get_ipo_list",
    "arguments": {
      "market": "HK"
    }
  }
}

返回结构: 与对应 REST endpoint / Python SDK 返回结构一致的 JSON 文本。失败时 MCP CallToolResult.is_error=true + 内容带 {"error": "...", "status": "error"}。

futu_list_plates

  • Scope: qot:read
  • Python SDK 等价: OpenQuoteContext.get_plate_list
  • 路由: MCP JSON-RPC tools/call name = "futu_list_plates"

说明:

List plates by market and set type (industry / region / concept / all).

请求参数:

字段 类型 必填 Alias 说明
market string ✅ — Market: HK|HK_FUTURE|US|SH|SZ
plate_set string ✓ 默认 default_plate_set plate_set_type Plate set: all|industry|region|concept (default all); alias: plate_set_type. region only has backend data for SH/SZ; HK/HK_FUTURE/US returns an empty successful list like the native gateway.

⚠️ 未知字段: 启用 deny_unknown_fields — 任何未在表里的字段会返 unknown field error(之前静默 drop)。

JSON-RPC 调用示例:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "futu_list_plates",
    "arguments": {
      "market": "HK",
      "plate_set": "all"
    }
  }
}

返回结构: 与对应 REST endpoint / Python SDK 返回结构一致的 JSON 文本。失败时 MCP CallToolResult.is_error=true + 内容带 {"error": "...", "status": "error"}。

futu_plate_stocks

  • Scope: qot:read
  • Python SDK 等价: OpenQuoteContext.get_plate_stock
  • 路由: MCP JSON-RPC tools/call name = "futu_plate_stocks"

说明:

List constituent securities of a plate.

请求参数:

字段 类型 必填 Alias 说明
plate string ✅ symbol, code, plate_code Plate symbol, MARKET.CODE format (e.g. HK.LIST1001); alias: symbol / code / plate_code

⚠️ 未知字段: 启用 deny_unknown_fields — 任何未在表里的字段会返 unknown field error(之前静默 drop)。

JSON-RPC 调用示例:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "futu_plate_stocks",
    "arguments": {
      "plate": "HK.LIST1001"
    }
  }
}

返回结构: 与对应 REST endpoint / Python SDK 返回结构一致的 JSON 文本。失败时 MCP CallToolResult.is_error=true + 内容带 {"error": "...", "status": "error"}。

futu_get_code_change

  • Scope: qot:read
  • Python SDK 等价: OpenQuoteContext.get_code_change
  • 路由: MCP JSON-RPC tools/call name = "futu_get_code_change"

说明:

Code change / temporary-ticker info (currently HK market only). Python SDK: OpenQuoteContext.get_code_change.

请求参数:

字段 类型 必填 Alias 说明
symbols array of string ✅ stocks, code_list, symbol_list, security_list Security symbols to query (currently HK only); alias: stocks / code_list / symbol_list / security_list

⚠️ 未知字段: 启用 deny_unknown_fields — 任何未在表里的字段会返 unknown field error(之前静默 drop)。

JSON-RPC 调用示例:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "futu_get_code_change",
    "arguments": {
      "symbols": [
        "HK.00700"
      ]
    }
  }
}

返回结构: 与对应 REST endpoint / Python SDK 返回结构一致的 JSON 文本。失败时 MCP CallToolResult.is_error=true + 内容带 {"error": "...", "status": "error"}。

futu_get_trading_days

  • Scope: qot:read
  • Python SDK 等价: OpenQuoteContext.request_trading_days
  • 路由: MCP JSON-RPC tools/call name = "futu_get_trading_days"

说明:

Trading days for a market in a date range. Python SDK: OpenQuoteContext.request_trading_days. Note: returns natural-day-minus-weekends-and-holidays, excluding temporary market closures.

请求参数:

字段 类型 必填 Alias 说明
market i32 ✅ — Market code — Qot_Common.TradeDateMarket enum (i32, NOT QotMarket!): 1=HK, 2=US, 3=CN, 4=NorthboundSZ/SH, 5=SouthboundHK, 6=JP_Future, 7=SG_Future, 8=SG, 9=MY, 10=JP. Different from QotMarket (ipo_list/stock_filter use 1=HK 2=HK_FUTURE 11=US 21=SH 22=SZ). Legacy QotMarket aliases 11=US, 21=SH, 22=SZ are accepted for backward compatibility.
begin_time string ✅ begin, start_time, from Begin date (yyyy-MM-dd); alias: begin / start_time / from
end_time string ✅ end, to End date (yyyy-MM-dd); alias: end / to

⚠️ 未知字段: 启用 deny_unknown_fields — 任何未在表里的字段会返 unknown field error(之前静默 drop)。

运行时校验: 此 request 结构带 validate() 方法 — 在 schema 之外加额外的必填字段 / 枚举取值校验。

JSON-RPC 调用示例:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "futu_get_trading_days",
    "arguments": {
      "market": "HK",
      "begin_time": "2026-01-01",
      "end_time": "2026-12-31"
    }
  }
}

返回结构: 与对应 REST endpoint / Python SDK 返回结构一致的 JSON 文本。失败时 MCP CallToolResult.is_error=true + 内容带 {"error": "...", "status": "error"}。

futu_get_industrial_chain_list

  • Scope: qot:read
  • Python SDK 等价: OpenQuoteContext.get_industrial_chain_list
  • 路由: MCP JSON-RPC tools/call name = "futu_get_industrial_chain_list"

说明:

Get industrial-chain list. Public QOT 3427. c2s_json must be generated-proto JSON.

请求参数:

字段 类型 必填 Alias 说明
c2s_json string ✅ — Official generated C2S JSON. Field names use generated proto serde snake_case, e.g. multi_legs / combo_legs / order_type.
api_key string? — — Optional per-call API key plaintext. HTTP scope mode still requires a valid Bearer on every /mcp request; this field overrides that identity for the tool handler. In stdio mode: tool argument > startup key.

⚠️ 未知字段: 启用 deny_unknown_fields — 任何未在表里的字段会返 unknown field error(之前静默 drop)。

JSON-RPC 调用示例:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "futu_get_industrial_chain_list",
    "arguments": {
      "c2s_json": "…",
      "api_key": "optional-per-call-api-key"
    }
  }
}

返回结构: 与对应 REST endpoint / Python SDK 返回结构一致的 JSON 文本。失败时 MCP CallToolResult.is_error=true + 内容带 {"error": "...", "status": "error"}。

futu_get_industrial_chain_detail

  • Scope: qot:read
  • Python SDK 等价: OpenQuoteContext.get_industrial_chain_detail
  • 路由: MCP JSON-RPC tools/call name = "futu_get_industrial_chain_detail"

说明:

Get industrial-chain detail. Public QOT 3428. c2s_json must be generated-proto JSON.

请求参数:

字段 类型 必填 Alias 说明
c2s_json string ✅ — Official generated C2S JSON. Field names use generated proto serde snake_case, e.g. multi_legs / combo_legs / order_type.
api_key string? — — Optional per-call API key plaintext. HTTP scope mode still requires a valid Bearer on every /mcp request; this field overrides that identity for the tool handler. In stdio mode: tool argument > startup key.

⚠️ 未知字段: 启用 deny_unknown_fields — 任何未在表里的字段会返 unknown field error(之前静默 drop)。

JSON-RPC 调用示例:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "futu_get_industrial_chain_detail",
    "arguments": {
      "c2s_json": "…",
      "api_key": "optional-per-call-api-key"
    }
  }
}

返回结构: 与对应 REST endpoint / Python SDK 返回结构一致的 JSON 文本。失败时 MCP CallToolResult.is_error=true + 内容带 {"error": "...", "status": "error"}。

futu_get_industrial_chain_by_plate

  • Scope: qot:read
  • Python SDK 等价: OpenQuoteContext.get_industrial_chain_by_plate
  • 路由: MCP JSON-RPC tools/call name = "futu_get_industrial_chain_by_plate"

说明:

Get industrial-chain by plate. Public QOT 3429. c2s_json must be generated-proto JSON.

请求参数:

字段 类型 必填 Alias 说明
c2s_json string ✅ — Official generated C2S JSON. Field names use generated proto serde snake_case, e.g. multi_legs / combo_legs / order_type.
api_key string? — — Optional per-call API key plaintext. HTTP scope mode still requires a valid Bearer on every /mcp request; this field overrides that identity for the tool handler. In stdio mode: tool argument > startup key.

⚠️ 未知字段: 启用 deny_unknown_fields — 任何未在表里的字段会返 unknown field error(之前静默 drop)。

JSON-RPC 调用示例:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "futu_get_industrial_chain_by_plate",
    "arguments": {
      "c2s_json": "…",
      "api_key": "optional-per-call-api-key"
    }
  }
}

返回结构: 与对应 REST endpoint / Python SDK 返回结构一致的 JSON 文本。失败时 MCP CallToolResult.is_error=true + 内容带 {"error": "...", "status": "error"}。

futu_get_industrial_plate_info

  • Scope: qot:read
  • Python SDK 等价: OpenQuoteContext.get_industrial_plate_info
  • 路由: MCP JSON-RPC tools/call name = "futu_get_industrial_plate_info"

说明:

Get industrial plate info. Public QOT 3430. c2s_json must be generated-proto JSON.

请求参数:

字段 类型 必填 Alias 说明
c2s_json string ✅ — Official generated C2S JSON. Field names use generated proto serde snake_case, e.g. multi_legs / combo_legs / order_type.
api_key string? — — Optional per-call API key plaintext. HTTP scope mode still requires a valid Bearer on every /mcp request; this field overrides that identity for the tool handler. In stdio mode: tool argument > startup key.

⚠️ 未知字段: 启用 deny_unknown_fields — 任何未在表里的字段会返 unknown field error(之前静默 drop)。

JSON-RPC 调用示例:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "futu_get_industrial_plate_info",
    "arguments": {
      "c2s_json": "…",
      "api_key": "optional-per-call-api-key"
    }
  }
}

返回结构: 与对应 REST endpoint / Python SDK 返回结构一致的 JSON 文本。失败时 MCP CallToolResult.is_error=true + 内容带 {"error": "...", "status": "error"}。

futu_get_industrial_plate_stock

  • Scope: qot:read
  • Python SDK 等价: OpenQuoteContext.get_industrial_plate_stock
  • 路由: MCP JSON-RPC tools/call name = "futu_get_industrial_plate_stock"

说明:

Get industrial plate stocks. Public QOT 3431. c2s_json must be generated-proto JSON.

请求参数:

字段 类型 必填 Alias 说明
c2s_json string ✅ — Official generated C2S JSON. Field names use generated proto serde snake_case, e.g. multi_legs / combo_legs / order_type.
api_key string? — — Optional per-call API key plaintext. HTTP scope mode still requires a valid Bearer on every /mcp request; this field overrides that identity for the tool handler. In stdio mode: tool argument > startup key.

⚠️ 未知字段: 启用 deny_unknown_fields — 任何未在表里的字段会返 unknown field error(之前静默 drop)。

JSON-RPC 调用示例:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "futu_get_industrial_plate_stock",
    "arguments": {
      "c2s_json": "…",
      "api_key": "optional-per-call-api-key"
    }
  }
}

返回结构: 与对应 REST endpoint / Python SDK 返回结构一致的 JSON 文本。失败时 MCP CallToolResult.is_error=true + 内容带 {"error": "...", "status": "error"}。

futu_get_indicator_list

  • Scope: qot:read
  • Python SDK 等价: —
  • 路由: MCP JSON-RPC tools/call name = "futu_get_indicator_list"

说明:

List local and current-server MyLang/Python indicators. Exact non-empty search may return owned or server-authorized formula source. Public QOT 3259.

请求参数:

字段 类型 必填 Alias 说明
c2s_json string ✅ — Official generated C2S JSON. Field names use generated proto serde snake_case, e.g. multi_legs / combo_legs / order_type.
api_key string? — — Optional per-call API key plaintext. HTTP scope mode still requires a valid Bearer on every /mcp request; this field overrides that identity for the tool handler. In stdio mode: tool argument > startup key.

⚠️ 未知字段: 启用 deny_unknown_fields — 任何未在表里的字段会返 unknown field error(之前静默 drop)。

JSON-RPC 调用示例:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "futu_get_indicator_list",
    "arguments": {
      "c2s_json": "…",
      "api_key": "optional-per-call-api-key"
    }
  }
}

返回结构: 与对应 REST endpoint / Python SDK 返回结构一致的 JSON 文本。失败时 MCP CallToolResult.is_error=true + 内容带 {"error": "...", "status": "error"}。

futu_get_security_trading_sessions

  • Scope: qot:read
  • Python SDK 等价: —
  • 路由: MCP JSON-RPC tools/call name = "futu_get_security_trading_sessions"

说明:

Get exact server-provided trading days and sections for one code/exchange. Local extension v1.

请求参数:

字段 类型 必填 Alias 说明
c2s_json string ✅ — Official generated C2S JSON. Field names use generated proto serde snake_case, e.g. multi_legs / combo_legs / order_type.
api_key string? — — Optional per-call API key plaintext. HTTP scope mode still requires a valid Bearer on every /mcp request; this field overrides that identity for the tool handler. In stdio mode: tool argument > startup key.

⚠️ 未知字段: 启用 deny_unknown_fields — 任何未在表里的字段会返 unknown field error(之前静默 drop)。

JSON-RPC 调用示例:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "futu_get_security_trading_sessions",
    "arguments": {
      "c2s_json": "…",
      "api_key": "optional-per-call-api-key"
    }
  }
}

返回结构: 与对应 REST endpoint / Python SDK 返回结构一致的 JSON 文本。失败时 MCP CallToolResult.is_error=true + 内容带 {"error": "...", "status": "error"}。

futu_get_market_trading_sessions

  • Scope: qot:read
  • Python SDK 等价: —
  • 路由: MCP JSON-RPC tools/call name = "futu_get_market_trading_sessions"

说明:

Batch exact server-provided trading days and sections for up to 500 market rows. Local extension v1.

请求参数:

字段 类型 必填 Alias 说明
c2s_json string ✅ — Official generated C2S JSON. Field names use generated proto serde snake_case, e.g. multi_legs / combo_legs / order_type.
api_key string? — — Optional per-call API key plaintext. HTTP scope mode still requires a valid Bearer on every /mcp request; this field overrides that identity for the tool handler. In stdio mode: tool argument > startup key.

⚠️ 未知字段: 启用 deny_unknown_fields — 任何未在表里的字段会返 unknown field error(之前静默 drop)。

JSON-RPC 调用示例:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "futu_get_market_trading_sessions",
    "arguments": {
      "c2s_json": "…",
      "api_key": "optional-per-call-api-key"
    }
  }
}

返回结构: 与对应 REST endpoint / Python SDK 返回结构一致的 JSON 文本。失败时 MCP CallToolResult.is_error=true + 内容带 {"error": "...", "status": "error"}。

futu_etf_screen

  • Scope: qot:read
  • Python SDK 等价: —
  • 路由: MCP JSON-RPC tools/call name = "futu_etf_screen"

说明:

Screen ETFs with typed fields, intervals, multi-sort, and pagination. Requires --enable-v18-experimental-reads; default OFF; live backend unverified.

请求参数:

字段 类型 必填 Alias 说明
c2s_json string ✅ — Official generated C2S JSON. Field names use generated proto serde snake_case, e.g. multi_legs / combo_legs / order_type.
api_key string? — — Optional per-call API key plaintext. HTTP scope mode still requires a valid Bearer on every /mcp request; this field overrides that identity for the tool handler. In stdio mode: tool argument > startup key.

⚠️ 未知字段: 启用 deny_unknown_fields — 任何未在表里的字段会返 unknown field error(之前静默 drop)。

JSON-RPC 调用示例:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "futu_etf_screen",
    "arguments": {
      "c2s_json": "{\"market\":1,\"data_from\":0,\"data_max_count\":20,\"need_fields\":[{\"field_id\":5}],\"extension_version\":1}",
      "api_key": "optional-per-call-api-key"
    }
  }
}

返回结构: 与对应 REST endpoint / Python SDK 返回结构一致的 JSON 文本。失败时 MCP CallToolResult.is_error=true + 内容带 {"error": "...", "status": "error"}。

futu_fund_screen

  • Scope: qot:read
  • Python SDK 等价: —
  • 路由: MCP JSON-RPC tools/call name = "futu_fund_screen"

说明:

Screen funds with the full typed 33-field filter and pagination contract. Requires --enable-v18-experimental-reads; default OFF; live backend unverified.

请求参数:

字段 类型 必填 Alias 说明
c2s_json string ✅ — Official generated C2S JSON. Field names use generated proto serde snake_case, e.g. multi_legs / combo_legs / order_type.
api_key string? — — Optional per-call API key plaintext. HTTP scope mode still requires a valid Bearer on every /mcp request; this field overrides that identity for the tool handler. In stdio mode: tool argument > startup key.

⚠️ 未知字段: 启用 deny_unknown_fields — 任何未在表里的字段会返 unknown field error(之前静默 drop)。

JSON-RPC 调用示例:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "futu_fund_screen",
    "arguments": {
      "c2s_json": "{\"fund_types\":[1],\"risk_levels\":[1],\"currency_units\":[1],\"data_from\":0,\"data_max_count\":20,\"field_ids\":[3],\"source_types\":[1],\"extension_version\":1}",
      "api_key": "optional-per-call-api-key"
    }
  }
}

返回结构: 与对应 REST endpoint / Python SDK 返回结构一致的 JSON 文本。失败时 MCP CallToolResult.is_error=true + 内容带 {"error": "...", "status": "error"}。

futu_future_screen

  • Scope: qot:read
  • Python SDK 等价: —
  • 路由: MCP JSON-RPC tools/call name = "futu_future_screen"

说明:

Screen futures with typed factors, entitlement-derived crypto filtering, sort, and pagination. Requires --enable-v18-experimental-reads; default OFF; live backend unverified.

请求参数:

字段 类型 必填 Alias 说明
c2s_json string ✅ — Official generated C2S JSON. Field names use generated proto serde snake_case, e.g. multi_legs / combo_legs / order_type.
api_key string? — — Optional per-call API key plaintext. HTTP scope mode still requires a valid Bearer on every /mcp request; this field overrides that identity for the tool handler. In stdio mode: tool argument > startup key.

⚠️ 未知字段: 启用 deny_unknown_fields — 任何未在表里的字段会返 unknown field error(之前静默 drop)。

JSON-RPC 调用示例:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "futu_future_screen",
    "arguments": {
      "c2s_json": "{\"conditions\":[{\"type_id\":1,\"factor_ids\":[1]}],\"data_from\":0,\"data_max_count\":20,\"extension_version\":1}",
      "api_key": "optional-per-call-api-key"
    }
  }
}

返回结构: 与对应 REST endpoint / Python SDK 返回结构一致的 JSON 文本。失败时 MCP CallToolResult.is_error=true + 内容带 {"error": "...", "status": "error"}。

futu_bond_screen

  • Scope: qot:read
  • Python SDK 等价: —
  • 路由: MCP JSON-RPC tools/call name = "futu_bond_screen"

说明:

Screen bonds with typed factors, ranges, source markets, sort, and pagination. Requires --enable-v18-experimental-reads; default OFF; live backend unverified.

请求参数:

字段 类型 必填 Alias 说明
c2s_json string ✅ — Official generated C2S JSON. Field names use generated proto serde snake_case, e.g. multi_legs / combo_legs / order_type.
api_key string? — — Optional per-call API key plaintext. HTTP scope mode still requires a valid Bearer on every /mcp request; this field overrides that identity for the tool handler. In stdio mode: tool argument > startup key.

⚠️ 未知字段: 启用 deny_unknown_fields — 任何未在表里的字段会返 unknown field error(之前静默 drop)。

JSON-RPC 调用示例:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "futu_bond_screen",
    "arguments": {
      "c2s_json": "{\"conditions\":[{\"type_id\":2}],\"data_from\":0,\"data_max_count\":20,\"source_types\":[1],\"extension_version\":1}",
      "api_key": "optional-per-call-api-key"
    }
  }
}

返回结构: 与对应 REST endpoint / Python SDK 返回结构一致的 JSON 文本。失败时 MCP CallToolResult.is_error=true + 内容带 {"error": "...", "status": "error"}。