HKEx Filings
Live HKEx (Hong Kong Stock Exchange) regulatory filings for AI agents.
我该使用它吗
质量与安全性
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"hkex-filings": {
"url": "https://hkex-listco-updates.ascent-partners.com/api/mcp"
}
}
}远程端点
https://hkex-listco-updates.ascent-partners.com/api/mcpstreamable-http它能做什么
工具清单
工具(4)
🟢get_server_info
Report this live gateway's version, transport, and hard limits. Reads nothing.
输入模式
{
"type": "object",
"properties": {},
"required": [],
"additionalProperties": false
}输出模式
{
"type": "object",
"properties": {
"result": {
"type": "object",
"description": "Gateway version, transport, tool list, filters, and hard limits.",
"properties": {
"name": {
"type": "string"
},
"version": {
"type": "string"
},
"transport": {
"type": "string"
},
"live": {
"type": "boolean"
},
"storage": {
"type": "string"
},
"read_only": {
"type": "boolean"
},
"tools": {
"type": "array",
"items": {
"type": "string"
}
},
"filters": {
"type": "array",
"items": {
"type": "string"
}
},
"limits": {
"type": "object"
},
"extraction": {
"type": "object"
}
}
}
},
"required": [
"result"
]
}🟢search_filings(from_date, to_date, stock_code, title_query, document_type, ...)
Search live HKEx filings in a date window (at most 31 days). ``from_date``/``to_date`` accept YYYY-MM-DD or DD/MM/YYYY. All filters are optional and combine with AND semantics: ``stock_code`` matches exactly (e.g. ``01461`` or ``1461``); ``title_query``, ``category`` and ``stock_name`` are case-insensitive substrings (e.g. category ``Dividend``); ``document_type`` matches the file type exactly (e.g. ``PDF`` or ``HTML``). Filters are applied to the fetched window, so widen ``max_results`` to catch rarer matches. ``max_results`` caps the number of filings fetched and returned (hard cap 200). Returns the matching filings — each carrying ``fileType``, ``sizeText``, ``category`` and ``newsId`` metadata — plus the HKEx-reported total for the window. Use list_filing_facets first to see which categories, types and codes exist in a window.
输入模式
{
"type": "object",
"properties": {
"from_date": {
"type": "string",
"description": "YYYY-MM-DD or DD/MM/YYYY"
},
"to_date": {
"type": "string",
"description": "YYYY-MM-DD or DD/MM/YYYY"
},
"stock_code": {
"type": "string",
"description": "Optional exact HKEx stock code, e.g. 01461"
},
"title_query": {
"type": "string",
"description": "Optional case-insensitive substring of the filing title"
},
"document_type": {
"type": "string",
"description": "Optional exact file type, e.g. PDF, HTML, XLS, DOC"
},
"category": {
"type": "string",
"description": "Optional case-insensitive substring of the headline category"
},
"stock_name": {
"type": "string",
"description": "Optional case-insensitive substring of the stock short name"
},
"max_results": {
"type": "integer",
"minimum": 1,
"maximum": 200,
"description": "Maximum filings to fetch and return (default 50, cap 200)"
}
},
"required": [
"from_date",
"to_date"
],
"additionalProperties": false
}输出模式
{
"type": "object",
"properties": {
"result": {
"type": "object",
"description": "The filings matching the window and filters.",
"properties": {
"from": {
"type": "string",
"description": "Window start, YYYY-MM-DD"
},
"to": {
"type": "string",
"description": "Window end, YYYY-MM-DD"
},
"count": {
"type": "integer",
"description": "Filings returned"
},
"total_reported": {
"type": [
"integer",
"null"
],
"description": "HKEx-reported total for the window, when known"
},
"filters": {
"type": "object",
"description": "The filters applied"
},
"filings": {
"type": "array",
"description": "One entry per filing",
"items": {
"type": "object",
"properties": {
"date": {
"type": "string",
"description": "Release date, DD/MM/YYYY"
},
"stockCode": {
"type": "string"
},
"stockName": {
"type": "string"
},
"title": {
"type": "string"
},
"link": {
"type": "string",
"description": "HKEx document URL"
},
"fileType": {
"type": "string",
"description": "PDF, HTML, XLSX, ..."
},
"sizeText": {
"type": "string",
"description": "HKEx-reported size, e.g. 53KB"
},
"category": {
"type": "string",
"description": "HKEx headline category"
},
"newsId": {
"type": "string",
"description": "HKEx news id"
}
},
"required": [
"stockCode",
"title",
"link"
]
}
}
},
"required": [
"from",
"to",
"count",
"filings"
]
}
},
"required": [
"result"
]
}🟢list_filing_facets(from_date, to_date, stock_code, max_results)
Browse what filings exist in a date window (at most 31 days) without downloading. ``from_date``/``to_date`` accept YYYY-MM-DD or DD/MM/YYYY. Returns counts of the categories (headline categories), document types, and stock codes present in the window, each sorted by frequency and capped at 50 values, plus the distinct counts. Optionally narrow to one ``stock_code``. Use this to discover valid filter values before calling search_filings; it fetches the window once and extracts no document text.
输入模式
{
"type": "object",
"properties": {
"from_date": {
"type": "string",
"description": "YYYY-MM-DD or DD/MM/YYYY"
},
"to_date": {
"type": "string",
"description": "YYYY-MM-DD or DD/MM/YYYY"
},
"stock_code": {
"type": "string",
"description": "Optional exact HKEx stock code to narrow the facets"
},
"max_results": {
"type": "integer",
"minimum": 1,
"maximum": 200,
"description": "Maximum filings to scan (default 50, cap 200)"
}
},
"required": [
"from_date",
"to_date"
],
"additionalProperties": false
}输出模式
{
"type": "object",
"properties": {
"result": {
"type": "object",
"description": "Counts of the window's categories, document types, and stock codes.",
"properties": {
"from": {
"type": "string",
"description": "Window start, YYYY-MM-DD"
},
"to": {
"type": "string",
"description": "Window end, YYYY-MM-DD"
},
"count": {
"type": "integer",
"description": "Filings scanned"
},
"total_reported": {
"type": [
"integer",
"null"
]
},
"stock_code_filter": {
"type": "string"
},
"distinct_categories": {
"type": "integer"
},
"distinct_document_types": {
"type": "integer"
},
"distinct_stock_codes": {
"type": "integer"
},
"categories": {
"type": "array",
"items": {
"type": "object",
"properties": {
"value": {
"type": "string",
"description": "The category, file type, or stock code"
},
"count": {
"type": "integer",
"description": "Filings carrying this value"
}
},
"required": [
"value",
"count"
]
}
},
"document_types": {
"type": "array",
"items": {
"type": "object",
"properties": {
"value": {
"type": "string",
"description": "The category, file type, or stock code"
},
"count": {
"type": "integer",
"description": "Filings carrying this value"
}
},
"required": [
"value",
"count"
]
}
},
"stock_codes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"value": {
"type": "string",
"description": "The category, file type, or stock code"
},
"count": {
"type": "integer",
"description": "Filings carrying this value"
}
},
"required": [
"value",
"count"
]
}
}
},
"required": [
"from",
"to",
"count"
]
}
},
"required": [
"result"
]
}🟢get_filing(link, extract, offset, max_chars, query)
Download one HKEx document by its URL and read, page through, or search its text. ``link`` must be an HKEx document URL from search_filings (host ``www1.hkexnews.hk``); any other host is rejected. With ``extract=True`` (default) the response includes up to 30 ``tables`` and a window of extracted ``document_text``: ``max_chars`` characters starting at ``offset``. Long reports return ``next_offset``; call again with it to read the next window. Pass ``query`` to search the whole document instead: the response then lists up to 20 case-insensitive matches with their offsets and surrounding text, plus ``match_count`` — use a match offset to read that part. Set ``extract=False`` for size and content type only.
输入模式
{
"type": "object",
"properties": {
"link": {
"type": "string",
"description": "HKEx document URL from a search_filings result (host www1.hkexnews.hk)"
},
"extract": {
"type": "boolean",
"default": true,
"description": "Extract text and tables; false returns size and content type only"
},
"offset": {
"type": "integer",
"minimum": 0,
"default": 0,
"description": "Character offset where the returned text window starts (use next_offset to page)"
},
"max_chars": {
"type": "integer",
"minimum": 1,
"maximum": 300000,
"default": 300000,
"description": "Maximum characters of document_text to return in this window"
},
"query": {
"type": "string",
"description": "Optional text to find in the whole document; returns matches with offsets instead of a text window"
}
},
"required": [
"link"
],
"additionalProperties": false
}输出模式
{
"type": "object",
"properties": {
"result": {
"type": "object",
"description": "The downloaded document, with text and tables when extract is true.",
"properties": {
"link": {
"type": "string"
},
"size_bytes": {
"type": "integer"
},
"content_type": {
"type": "string"
},
"document_text": {
"type": "string",
"description": "Extracted Markdown text"
},
"text_length": {
"type": "integer",
"description": "Characters in this window"
},
"total_text_length": {
"type": "integer",
"description": "Characters in the whole extracted document"
},
"offset": {
"type": "integer"
},
"next_offset": {
"type": [
"integer",
"null"
],
"description": "Offset of the next window, or null at the end"
},
"text_truncated": {
"type": "boolean",
"description": "True when more text follows this window"
},
"query": {
"type": "string"
},
"match_count": {
"type": "integer",
"description": "Total matches for query"
},
"matches": {
"type": "array",
"items": {
"type": "object",
"properties": {
"offset": {
"type": "integer"
},
"snippet": {
"type": "string"
}
},
"required": [
"offset",
"snippet"
]
}
},
"tables": {
"type": "array",
"items": {
"type": "object"
}
},
"tables_omitted": {
"type": "integer"
}
},
"required": [
"link",
"size_bytes"
]
}
},
"required": [
"result"
]
}社区
证据